Amazon Connect Cases

2026/01/26 - Amazon Connect Cases - 6 updated api methods

Changes  Amazon Connect now enables you to use tag-based access controls to define who can access specific cases. You can associate tags with case templates and configure security profiles to determine which users can access cases with those tags.

CreateCase (updated) Link ¶
Changes (request)
{'tags': {'string': 'string'}}

Creates a case in the specified Cases domain. Case system and custom fields are taken as an array id/value pairs with a declared data types.

When creating a case from a template that has tag propagation configurations, the specified tags are automatically applied to the case.

The following fields are required when creating a case:

  • customer_id - You must provide the full customer profile ARN in this format: arn:aws:profile:your_AWS_Region:your_AWS_account ID:domains/your_profiles_domain_name/profiles/profile_ID

  • title

See also: AWS API Documentation

Request Syntax

client.create_case(
    domainId='string',
    templateId='string',
    fields=[
        {
            'id': 'string',
            'value': {
                'stringValue': 'string',
                'doubleValue': 123.0,
                'booleanValue': True|False,
                'emptyValue': {}
                ,
                'userArnValue': 'string'
            }
        },
    ],
    clientToken='string',
    performedBy={
        'userArn': 'string',
        'customEntity': 'string'
    },
    tags={
        'string': 'string'
    }
)
type domainId:

string

param domainId:

[REQUIRED]

The unique identifier of the Cases domain.

type templateId:

string

param templateId:

[REQUIRED]

A unique identifier of a template.

type fields:

list

param fields:

[REQUIRED]

An array of objects with field ID (matching ListFields/DescribeField) and value union data.

  • (dict) --

    Object for case field values.

    • id (string) -- [REQUIRED]

      Unique identifier of a field.

    • value (dict) -- [REQUIRED]

      Union of potential field value types.

      • stringValue (string) --

        String value type.

      • doubleValue (float) --

        Can be either null, or have a Double number value type. Only one value can be provided.

      • booleanValue (boolean) --

        Can be either null, or have a Boolean value type. Only one value can be provided.

      • emptyValue (dict) --

        An empty value.

      • userArnValue (string) --

        Represents the user that performed the audit.

type clientToken:

string

param clientToken:

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

This field is autopopulated if not provided.

type performedBy:

dict

param performedBy:

Represents the entity that performed the action.

  • userArn (string) --

    Represents the Amazon Connect ARN of the user.

  • customEntity (string) --

    Any provided entity.

type tags:

dict

param tags:

A map of of key-value pairs that represent tags on a resource. Tags are used to organize, track, or control access for this resource.

  • (string) --

    • (string) --

rtype:

dict

returns:

Response Syntax

{
    'caseId': 'string',
    'caseArn': 'string'
}

Response Structure

  • (dict) --

    • caseId (string) --

      A unique identifier of the case.

    • caseArn (string) --

      The Amazon Resource Name (ARN) of the case.

CreateTemplate (updated) Link ¶
Changes (request)
{'tagPropagationConfigurations': [{'resourceType': 'Cases',
                                   'tagMap': {'string': 'string'}}]}

Creates a template in the Cases domain. This template is used to define the case object model (that is, to define what data can be captured on cases) in a Cases domain. A template must have a unique name within a domain, and it must reference existing field IDs and layout IDs. Additionally, multiple fields with same IDs are not allowed within the same Template. A template can be either Active or Inactive, as indicated by its status. Inactive templates cannot be used to create cases.

Other template APIs are:

See also: AWS API Documentation

Request Syntax

client.create_template(
    domainId='string',
    name='string',
    description='string',
    layoutConfiguration={
        'defaultLayout': 'string'
    },
    requiredFields=[
        {
            'fieldId': 'string'
        },
    ],
    status='Active'|'Inactive',
    rules=[
        {
            'caseRuleId': 'string',
            'fieldId': 'string'
        },
    ],
    tagPropagationConfigurations=[
        {
            'resourceType': 'Cases',
            'tagMap': {
                'string': 'string'
            }
        },
    ]
)
type domainId:

string

param domainId:

[REQUIRED]

The unique identifier of the Cases domain.

type name:

string

param name:

[REQUIRED]

A name for the template. It must be unique per domain.

type description:

string

param description:

A brief description of the template.

type layoutConfiguration:

dict

param layoutConfiguration:

Configuration of layouts associated to the template.

  • defaultLayout (string) --

    Unique identifier of a layout.

type requiredFields:

list

param requiredFields:

A list of fields that must contain a value for a case to be successfully created with this template.

  • (dict) --

    List of fields that must have a value provided to create a case.

    • fieldId (string) -- [REQUIRED]

      Unique identifier of a field.

type status:

string

param status:

The status of the template.

type rules:

list

param rules:

A list of case rules (also known as case field conditions) on a template.

  • (dict) --

    An association representing a case rule acting upon a field. In the Amazon Connect admin website, case rules are known as case field conditions. For more information about case field conditions, see Add case field conditions to a case template.

    • caseRuleId (string) -- [REQUIRED]

      Unique identifier of a case rule.

    • fieldId (string) --

      Unique identifier of a field.

type tagPropagationConfigurations:

list

param tagPropagationConfigurations:

Defines tag propagation configuration for resources created within a domain. Tags specified here will be automatically applied to resources being created for the specified resource type.

  • (dict) --

    Defines tag propagation configuration for resources created within a domain. Tags specified here will be automatically applied to resources being created for the specified resource type.

    • resourceType (string) -- [REQUIRED]

      Supported resource types for tag propagation. Determines which resources will receive automatically propagated tags.

    • tagMap (dict) -- [REQUIRED]

      The tags that will be applied to the created resource.

      • (string) --

        • (string) --

rtype:

dict

returns:

Response Syntax

{
    'templateId': 'string',
    'templateArn': 'string'
}

Response Structure

  • (dict) --

    • templateId (string) --

      A unique identifier of a template.

    • templateArn (string) --

      The Amazon Resource Name (ARN) of the newly created template.

GetTemplate (updated) Link ¶
Changes (response)
{'tagPropagationConfigurations': [{'resourceType': 'Cases',
                                   'tagMap': {'string': 'string'}}]}

Returns the details for the requested template. Other template APIs are:

See also: AWS API Documentation

Request Syntax

client.get_template(
    domainId='string',
    templateId='string'
)
type domainId:

string

param domainId:

[REQUIRED]

The unique identifier of the Cases domain.

type templateId:

string

param templateId:

[REQUIRED]

A unique identifier of a template.

rtype:

dict

returns:

Response Syntax

{
    'templateId': 'string',
    'templateArn': 'string',
    'name': 'string',
    'description': 'string',
    'layoutConfiguration': {
        'defaultLayout': 'string'
    },
    'requiredFields': [
        {
            'fieldId': 'string'
        },
    ],
    'tags': {
        'string': 'string'
    },
    'status': 'Active'|'Inactive',
    'deleted': True|False,
    'createdTime': datetime(2015, 1, 1),
    'lastModifiedTime': datetime(2015, 1, 1),
    'rules': [
        {
            'caseRuleId': 'string',
            'fieldId': 'string'
        },
    ],
    'tagPropagationConfigurations': [
        {
            'resourceType': 'Cases',
            'tagMap': {
                'string': 'string'
            }
        },
    ]
}

Response Structure

  • (dict) --

    • templateId (string) --

      A unique identifier of a template.

    • templateArn (string) --

      The Amazon Resource Name (ARN) of the template.

    • name (string) --

      The name of the template.

    • description (string) --

      A brief description of the template.

    • layoutConfiguration (dict) --

      Configuration of layouts associated to the template.

      • defaultLayout (string) --

        Unique identifier of a layout.

    • requiredFields (list) --

      A list of fields that must contain a value for a case to be successfully created with this template.

      • (dict) --

        List of fields that must have a value provided to create a case.

        • fieldId (string) --

          Unique identifier of a field.

    • tags (dict) --

      A map of of key-value pairs that represent tags on a resource. Tags are used to organize, track, or control access for this resource.

      • (string) --

        • (string) --

    • status (string) --

      The status of the template.

    • deleted (boolean) --

      Denotes whether or not the resource has been deleted.

    • createdTime (datetime) --

      Timestamp at which the resource was created.

    • lastModifiedTime (datetime) --

      Timestamp at which the resource was created or last modified.

    • rules (list) --

      A list of case rules (also known as case field conditions) on a template.

      • (dict) --

        An association representing a case rule acting upon a field. In the Amazon Connect admin website, case rules are known as case field conditions. For more information about case field conditions, see Add case field conditions to a case template.

        • caseRuleId (string) --

          Unique identifier of a case rule.

        • fieldId (string) --

          Unique identifier of a field.

    • tagPropagationConfigurations (list) --

      Defines tag propagation configuration for resources created within a domain. Tags specified here will be automatically applied to resources being created for the specified resource type.

      • (dict) --

        Defines tag propagation configuration for resources created within a domain. Tags specified here will be automatically applied to resources being created for the specified resource type.

        • resourceType (string) --

          Supported resource types for tag propagation. Determines which resources will receive automatically propagated tags.

        • tagMap (dict) --

          The tags that will be applied to the created resource.

          • (string) --

            • (string) --

ListTemplates (updated) Link ¶
Changes (response)
{'templates': {'tagPropagationConfigurations': [{'resourceType': 'Cases',
                                                 'tagMap': {'string': 'string'}}]}}

Lists all of the templates in a Cases domain. Each list item is a condensed summary object of the template.

Other template APIs are:

See also: AWS API Documentation

Request Syntax

client.list_templates(
    domainId='string',
    maxResults=123,
    nextToken='string',
    status=[
        'Active'|'Inactive',
    ]
)
type domainId:

string

param domainId:

[REQUIRED]

The unique identifier of the Cases domain.

type maxResults:

integer

param maxResults:

The maximum number of results to return per page.

type nextToken:

string

param nextToken:

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

type status:

list

param status:

A list of status values to filter on.

  • (string) --

rtype:

dict

returns:

Response Syntax

{
    'templates': [
        {
            'templateId': 'string',
            'templateArn': 'string',
            'name': 'string',
            'status': 'Active'|'Inactive',
            'tagPropagationConfigurations': [
                {
                    'resourceType': 'Cases',
                    'tagMap': {
                        'string': 'string'
                    }
                },
            ]
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • templates (list) --

      List of template summary objects.

      • (dict) --

        Template summary information.

        • templateId (string) --

          The unique identifier for the template.

        • templateArn (string) --

          The Amazon Resource Name (ARN) of the template.

        • name (string) --

          The template name.

        • status (string) --

          The status of the template.

        • tagPropagationConfigurations (list) --

          Defines tag propagation configuration for resources created within a domain. Tags specified here will be automatically applied to resources being created for the specified resource type.

          • (dict) --

            Defines tag propagation configuration for resources created within a domain. Tags specified here will be automatically applied to resources being created for the specified resource type.

            • resourceType (string) --

              Supported resource types for tag propagation. Determines which resources will receive automatically propagated tags.

            • tagMap (dict) --

              The tags that will be applied to the created resource.

              • (string) --

                • (string) --

    • nextToken (string) --

      The token for the next set of results. This is null if there are no more results to return.

SearchCases (updated) Link ¶
Changes (request)
{'filter': {'tag': {'equalTo': {'key': 'string', 'value': 'string'}}}}

Searches for cases within their associated Cases domain. Search results are returned as a paginated list of abridged case documents.

See also: AWS API Documentation

Request Syntax

client.search_cases(
    domainId='string',
    maxResults=123,
    nextToken='string',
    searchTerm='string',
    filter={
        'field': {
            'equalTo': {
                'id': 'string',
                'value': {
                    'stringValue': 'string',
                    'doubleValue': 123.0,
                    'booleanValue': True|False,
                    'emptyValue': {}
                    ,
                    'userArnValue': 'string'
                }
            },
            'contains': {
                'id': 'string',
                'value': {
                    'stringValue': 'string',
                    'doubleValue': 123.0,
                    'booleanValue': True|False,
                    'emptyValue': {}
                    ,
                    'userArnValue': 'string'
                }
            },
            'greaterThan': {
                'id': 'string',
                'value': {
                    'stringValue': 'string',
                    'doubleValue': 123.0,
                    'booleanValue': True|False,
                    'emptyValue': {}
                    ,
                    'userArnValue': 'string'
                }
            },
            'greaterThanOrEqualTo': {
                'id': 'string',
                'value': {
                    'stringValue': 'string',
                    'doubleValue': 123.0,
                    'booleanValue': True|False,
                    'emptyValue': {}
                    ,
                    'userArnValue': 'string'
                }
            },
            'lessThan': {
                'id': 'string',
                'value': {
                    'stringValue': 'string',
                    'doubleValue': 123.0,
                    'booleanValue': True|False,
                    'emptyValue': {}
                    ,
                    'userArnValue': 'string'
                }
            },
            'lessThanOrEqualTo': {
                'id': 'string',
                'value': {
                    'stringValue': 'string',
                    'doubleValue': 123.0,
                    'booleanValue': True|False,
                    'emptyValue': {}
                    ,
                    'userArnValue': 'string'
                }
            }
        },
        'not': {'... recursive ...'},
        'tag': {
            'equalTo': {
                'key': 'string',
                'value': 'string'
            }
        },
        'andAll': [
            {'... recursive ...'},
        ],
        'orAll': [
            {'... recursive ...'},
        ]
    },
    sorts=[
        {
            'fieldId': 'string',
            'sortOrder': 'Asc'|'Desc'
        },
    ],
    fields=[
        {
            'id': 'string'
        },
    ]
)
type domainId:

string

param domainId:

[REQUIRED]

The unique identifier of the Cases domain.

type maxResults:

integer

param maxResults:

The maximum number of cases to return. When no value is provided, 25 is the default.

type nextToken:

string

param nextToken:

The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

type searchTerm:

string

param searchTerm:

A word or phrase used to perform a quick search.

type filter:

dict

param filter:

A list of filter objects.

  • field (dict) --

    A list of fields to filter on.

    • equalTo (dict) --

      Object containing field identifier and value information.

      • id (string) -- [REQUIRED]

        Unique identifier of a field.

      • value (dict) -- [REQUIRED]

        Union of potential field value types.

        • stringValue (string) --

          String value type.

        • doubleValue (float) --

          Can be either null, or have a Double number value type. Only one value can be provided.

        • booleanValue (boolean) --

          Can be either null, or have a Boolean value type. Only one value can be provided.

        • emptyValue (dict) --

          An empty value.

        • userArnValue (string) --

          Represents the user that performed the audit.

    • contains (dict) --

      Object containing field identifier and value information.

      • id (string) -- [REQUIRED]

        Unique identifier of a field.

      • value (dict) -- [REQUIRED]

        Union of potential field value types.

        • stringValue (string) --

          String value type.

        • doubleValue (float) --

          Can be either null, or have a Double number value type. Only one value can be provided.

        • booleanValue (boolean) --

          Can be either null, or have a Boolean value type. Only one value can be provided.

        • emptyValue (dict) --

          An empty value.

        • userArnValue (string) --

          Represents the user that performed the audit.

    • greaterThan (dict) --

      Object containing field identifier and value information.

      • id (string) -- [REQUIRED]

        Unique identifier of a field.

      • value (dict) -- [REQUIRED]

        Union of potential field value types.

        • stringValue (string) --

          String value type.

        • doubleValue (float) --

          Can be either null, or have a Double number value type. Only one value can be provided.

        • booleanValue (boolean) --

          Can be either null, or have a Boolean value type. Only one value can be provided.

        • emptyValue (dict) --

          An empty value.

        • userArnValue (string) --

          Represents the user that performed the audit.

    • greaterThanOrEqualTo (dict) --

      Object containing field identifier and value information.

      • id (string) -- [REQUIRED]

        Unique identifier of a field.

      • value (dict) -- [REQUIRED]

        Union of potential field value types.

        • stringValue (string) --

          String value type.

        • doubleValue (float) --

          Can be either null, or have a Double number value type. Only one value can be provided.

        • booleanValue (boolean) --

          Can be either null, or have a Boolean value type. Only one value can be provided.

        • emptyValue (dict) --

          An empty value.

        • userArnValue (string) --

          Represents the user that performed the audit.

    • lessThan (dict) --

      Object containing field identifier and value information.

      • id (string) -- [REQUIRED]

        Unique identifier of a field.

      • value (dict) -- [REQUIRED]

        Union of potential field value types.

        • stringValue (string) --

          String value type.

        • doubleValue (float) --

          Can be either null, or have a Double number value type. Only one value can be provided.

        • booleanValue (boolean) --

          Can be either null, or have a Boolean value type. Only one value can be provided.

        • emptyValue (dict) --

          An empty value.

        • userArnValue (string) --

          Represents the user that performed the audit.

    • lessThanOrEqualTo (dict) --

      Object containing field identifier and value information.

      • id (string) -- [REQUIRED]

        Unique identifier of a field.

      • value (dict) -- [REQUIRED]

        Union of potential field value types.

        • stringValue (string) --

          String value type.

        • doubleValue (float) --

          Can be either null, or have a Double number value type. Only one value can be provided.

        • booleanValue (boolean) --

          Can be either null, or have a Boolean value type. Only one value can be provided.

        • emptyValue (dict) --

          An empty value.

        • userArnValue (string) --

          Represents the user that performed the audit.

  • not (dict) --

    A filter for cases. Only one value can be provided.

  • tag (dict) --

    A list of tags to filter on.

    • equalTo (dict) --

      Object containing tag key and value information.

      • key (string) --

        The tag key in the tag filter value.

      • value (string) --

        The tag value in the tag filter value.

  • andAll (list) --

    Provides "and all" filtering.

    • (dict) --

      A filter for cases. Only one value can be provided.

  • orAll (list) --

    Provides "or all" filtering.

    • (dict) --

      A filter for cases. Only one value can be provided.

type sorts:

list

param sorts:

A list of sorts where each sort specifies a field and their sort order to be applied to the results.

  • (dict) --

    A structured set of sort terms.

    • fieldId (string) -- [REQUIRED]

      Unique identifier of a field.

    • sortOrder (string) -- [REQUIRED]

      A structured set of sort terms

type fields:

list

param fields:

The list of field identifiers to be returned as part of the response.

  • (dict) --

    Object for unique identifier of a field.

    • id (string) -- [REQUIRED]

      Unique identifier of a field.

rtype:

dict

returns:

Response Syntax

{
    'nextToken': 'string',
    'cases': [
        {
            'caseId': 'string',
            'templateId': 'string',
            'fields': [
                {
                    'id': 'string',
                    'value': {
                        'stringValue': 'string',
                        'doubleValue': 123.0,
                        'booleanValue': True|False,
                        'emptyValue': {},
                        'userArnValue': 'string'
                    }
                },
            ],
            'tags': {
                'string': 'string'
            }
        },
    ]
}

Response Structure

  • (dict) --

    • nextToken (string) --

      The token for the next set of results. This is null if there are no more results to return.

    • cases (list) --

      A list of case documents where each case contains the properties CaseId and Fields where each field is a complex union structure.

      • (dict) --

        A list of items that represent cases.

        • caseId (string) --

          A unique identifier of the case.

        • templateId (string) --

          A unique identifier of a template.

        • fields (list) --

          List of case field values.

          • (dict) --

            Object for case field values.

            • id (string) --

              Unique identifier of a field.

            • value (dict) --

              Union of potential field value types.

              • stringValue (string) --

                String value type.

              • doubleValue (float) --

                Can be either null, or have a Double number value type. Only one value can be provided.

              • booleanValue (boolean) --

                Can be either null, or have a Boolean value type. Only one value can be provided.

              • emptyValue (dict) --

                An empty value.

              • userArnValue (string) --

                Represents the user that performed the audit.

        • tags (dict) --

          A map of of key-value pairs that represent tags on a resource. Tags are used to organize, track, or control access for this resource.

          • (string) --

            • (string) --

UpdateTemplate (updated) Link ¶
Changes (request)
{'tagPropagationConfigurations': [{'resourceType': 'Cases',
                                   'tagMap': {'string': 'string'}}]}

Updates the attributes of an existing template. The template attributes that can be modified include name, description, layoutConfiguration, requiredFields, and status. At least one of these attributes must not be null. If a null value is provided for a given attribute, that attribute is ignored and its current value is preserved.

Other template APIs are:

See also: AWS API Documentation

Request Syntax

client.update_template(
    domainId='string',
    templateId='string',
    name='string',
    description='string',
    layoutConfiguration={
        'defaultLayout': 'string'
    },
    requiredFields=[
        {
            'fieldId': 'string'
        },
    ],
    status='Active'|'Inactive',
    rules=[
        {
            'caseRuleId': 'string',
            'fieldId': 'string'
        },
    ],
    tagPropagationConfigurations=[
        {
            'resourceType': 'Cases',
            'tagMap': {
                'string': 'string'
            }
        },
    ]
)
type domainId:

string

param domainId:

[REQUIRED]

The unique identifier of the Cases domain.

type templateId:

string

param templateId:

[REQUIRED]

A unique identifier for the template.

type name:

string

param name:

The name of the template. It must be unique per domain.

type description:

string

param description:

A brief description of the template.

type layoutConfiguration:

dict

param layoutConfiguration:

Configuration of layouts associated to the template.

  • defaultLayout (string) --

    Unique identifier of a layout.

type requiredFields:

list

param requiredFields:

A list of fields that must contain a value for a case to be successfully created with this template.

  • (dict) --

    List of fields that must have a value provided to create a case.

    • fieldId (string) -- [REQUIRED]

      Unique identifier of a field.

type status:

string

param status:

The status of the template.

type rules:

list

param rules:

A list of case rules (also known as case field conditions) on a template.

  • (dict) --

    An association representing a case rule acting upon a field. In the Amazon Connect admin website, case rules are known as case field conditions. For more information about case field conditions, see Add case field conditions to a case template.

    • caseRuleId (string) -- [REQUIRED]

      Unique identifier of a case rule.

    • fieldId (string) --

      Unique identifier of a field.

type tagPropagationConfigurations:

list

param tagPropagationConfigurations:

Defines tag propagation configuration for resources created within a domain. Tags specified here will be automatically applied to resources being created for the specified resource type.

  • (dict) --

    Defines tag propagation configuration for resources created within a domain. Tags specified here will be automatically applied to resources being created for the specified resource type.

    • resourceType (string) -- [REQUIRED]

      Supported resource types for tag propagation. Determines which resources will receive automatically propagated tags.

    • tagMap (dict) -- [REQUIRED]

      The tags that will be applied to the created resource.

      • (string) --

        • (string) --

rtype:

dict

returns:

Response Syntax

{}

Response Structure

  • (dict) --