VerifiedPermissions / Client / put_schema



Creates or updates the policy schema in the specified policy store. The schema is used to validate any Cedar policies and policy templates submitted to the policy store. Any changes to the schema validate only policies and templates submitted after the schema change. Existing policies and templates are not re-evaluated against the changed schema. If you later update a policy, then it is evaluated against the new schema at that time.


Verified Permissions is eventually consistent . It can take a few seconds for a new or changed element to be propagate through the service and be visible in the results of other Verified Permissions operations.

See also: AWS API Documentation

Request Syntax

response = client.put_schema(
        'cedarJson': 'string'
  • policyStoreId (string) –


    Specifies the ID of the policy store in which to place the schema.

  • definition (dict) –


    Specifies the definition of the schema to be stored. The schema definition must be written in Cedar schema JSON.


    This is a Tagged Union structure. Only one of the following top level keys can be set: cedarJson.

    • cedarJson (string) –

      A JSON string representation of the schema supported by applications that use this policy store. For more information, see Policy store schema in the Amazon Verified Permissions User Guide.

Return type:



Response Syntax

    'policyStoreId': 'string',
    'namespaces': [
    'createdDate': datetime(2015, 1, 1),
    'lastUpdatedDate': datetime(2015, 1, 1)

Response Structure

  • (dict) –

    • policyStoreId (string) –

      The unique ID of the policy store that contains the schema.

    • namespaces (list) –

      Identifies the namespaces of the entities referenced by this schema.

      • (string) –

    • createdDate (datetime) –

      The date and time that the schema was originally created.

    • lastUpdatedDate (datetime) –

      The date and time that the schema was last updated.