update_facet

update_facet(**kwargs)

Does the following:

  • Adds new Attributes , Rules , or ObjectTypes .
  • Updates existing Attributes , Rules , or ObjectTypes .
  • Deletes existing Attributes , Rules , or ObjectTypes .

See also: AWS API Documentation

Request Syntax

response = client.update_facet(
    SchemaArn='string',
    Name='string',
    AttributeUpdates=[
        {
            'Attribute': {
                'Name': 'string',
                'AttributeDefinition': {
                    'Type': 'STRING'|'BINARY'|'BOOLEAN'|'NUMBER'|'DATETIME'|'VARIANT',
                    'DefaultValue': {
                        'StringValue': 'string',
                        'BinaryValue': b'bytes',
                        'BooleanValue': True|False,
                        'NumberValue': 'string',
                        'DatetimeValue': datetime(2015, 1, 1)
                    },
                    'IsImmutable': True|False,
                    'Rules': {
                        'string': {
                            'Type': 'BINARY_LENGTH'|'NUMBER_COMPARISON'|'STRING_FROM_SET'|'STRING_LENGTH',
                            'Parameters': {
                                'string': 'string'
                            }
                        }
                    }
                },
                'AttributeReference': {
                    'TargetFacetName': 'string',
                    'TargetAttributeName': 'string'
                },
                'RequiredBehavior': 'REQUIRED_ALWAYS'|'NOT_REQUIRED'
            },
            'Action': 'CREATE_OR_UPDATE'|'DELETE'
        },
    ],
    ObjectType='NODE'|'LEAF_NODE'|'POLICY'|'INDEX'
)
Parameters
  • SchemaArn (string) --

    [REQUIRED]

    The Amazon Resource Name (ARN) that is associated with the Facet. For more information, see arns.

  • Name (string) --

    [REQUIRED]

    The name of the facet.

  • AttributeUpdates (list) --

    List of attributes that need to be updated in a given schema Facet. Each attribute is followed by AttributeAction , which specifies the type of update operation to perform.

    • (dict) --

      A structure that contains information used to update an attribute.

      • Attribute (dict) --

        The attribute to update.

        • Name (string) -- [REQUIRED]

          The name of the facet attribute.

        • AttributeDefinition (dict) --

          A facet attribute consists of either a definition or a reference. This structure contains the attribute definition. See Attribute References for more information.

          • Type (string) -- [REQUIRED]

            The type of the attribute.

          • DefaultValue (dict) --

            The default value of the attribute (if configured).

            • StringValue (string) --

              A string data value.

            • BinaryValue (bytes) --

              A binary data value.

            • BooleanValue (boolean) --

              A Boolean data value.

            • NumberValue (string) --

              A number data value.

            • DatetimeValue (datetime) --

              A date and time value.

          • IsImmutable (boolean) --

            Whether the attribute is mutable or not.

          • Rules (dict) --

            Validation rules attached to the attribute definition.

            • (string) --
              • (dict) --

                Contains an Amazon Resource Name (ARN) and parameters that are associated with the rule.

                • Type (string) --

                  The type of attribute validation rule.

                • Parameters (dict) --

                  The minimum and maximum parameters that are associated with the rule.

                  • (string) --
                    • (string) --
        • AttributeReference (dict) --

          An attribute reference that is associated with the attribute. See Attribute References for more information.

          • TargetFacetName (string) -- [REQUIRED]

            The target facet name that is associated with the facet reference. See Attribute References for more information.

          • TargetAttributeName (string) -- [REQUIRED]

            The target attribute name that is associated with the facet reference. See Attribute References for more information.

        • RequiredBehavior (string) --

          The required behavior of the FacetAttribute .

      • Action (string) --

        The action to perform when updating the attribute.

  • ObjectType (string) -- The object type that is associated with the facet. See CreateFacetRequest$ObjectType for more details.
Return type

dict

Returns

Response Syntax

{}

Response Structure

  • (dict) --

Exceptions

  • CloudDirectory.Client.exceptions.InternalServiceException
  • CloudDirectory.Client.exceptions.InvalidArnException
  • CloudDirectory.Client.exceptions.RetryableConflictException
  • CloudDirectory.Client.exceptions.ValidationException
  • CloudDirectory.Client.exceptions.LimitExceededException
  • CloudDirectory.Client.exceptions.AccessDeniedException
  • CloudDirectory.Client.exceptions.InvalidFacetUpdateException
  • CloudDirectory.Client.exceptions.FacetValidationException
  • CloudDirectory.Client.exceptions.ResourceNotFoundException
  • CloudDirectory.Client.exceptions.FacetNotFoundException
  • CloudDirectory.Client.exceptions.InvalidRuleException