updateProjectProfile method

Future<UpdateProjectProfileOutput> updateProjectProfile({
  1. required String domainIdentifier,
  2. required String identifier,
  3. bool? allowCustomProjectResourceTags,
  4. String? description,
  5. String? domainUnitIdentifier,
  6. List<EnvironmentConfiguration>? environmentConfigurations,
  7. String? name,
  8. List<ResourceTagParameter>? projectResourceTags,
  9. String? projectResourceTagsDescription,
  10. Status? status,
})

Updates a project profile.

May throw AccessDeniedException. May throw ConflictException. May throw InternalServerException. May throw ResourceNotFoundException. May throw ServiceQuotaExceededException. May throw ThrottlingException. May throw ValidationException.

Parameter domainIdentifier : The ID of the domain where a project profile is to be updated.

Parameter identifier : The ID of a project profile that is to be updated.

Parameter allowCustomProjectResourceTags : Specifies whether custom project resource tags are supported.

Parameter description : The description of a project profile.

Parameter domainUnitIdentifier : The ID of the domain unit where a project profile is to be updated.

Parameter environmentConfigurations : The environment configurations of a project profile.

Parameter name : The name of a project profile.

Parameter projectResourceTags : The resource tags of the project profile.

Parameter projectResourceTagsDescription : Field viewable through the UI that provides a project user with the allowed resource tag specifications.

Parameter status : The status of a project profile.

Implementation

Future<UpdateProjectProfileOutput> updateProjectProfile({
  required String domainIdentifier,
  required String identifier,
  bool? allowCustomProjectResourceTags,
  String? description,
  String? domainUnitIdentifier,
  List<EnvironmentConfiguration>? environmentConfigurations,
  String? name,
  List<ResourceTagParameter>? projectResourceTags,
  String? projectResourceTagsDescription,
  Status? status,
}) async {
  final $payload = <String, dynamic>{
    if (allowCustomProjectResourceTags != null)
      'allowCustomProjectResourceTags': allowCustomProjectResourceTags,
    if (description != null) 'description': description,
    if (domainUnitIdentifier != null)
      'domainUnitIdentifier': domainUnitIdentifier,
    if (environmentConfigurations != null)
      'environmentConfigurations': environmentConfigurations,
    if (name != null) 'name': name,
    if (projectResourceTags != null)
      'projectResourceTags': projectResourceTags,
    if (projectResourceTagsDescription != null)
      'projectResourceTagsDescription': projectResourceTagsDescription,
    if (status != null) 'status': status.value,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'PATCH',
    requestUri:
        '/v2/domains/${Uri.encodeComponent(domainIdentifier)}/project-profiles/${Uri.encodeComponent(identifier)}',
    exceptionFnMap: _exceptionFns,
  );
  return UpdateProjectProfileOutput.fromJson(response);
}