Amazon Connect Customer Profiles

2024/06/24 - Amazon Connect Customer Profiles - 3 updated api methods

Changes  This release includes changes to ProfileObjectType APIs, adds functionality top set and get capacity for profile object types.

GetProfileObjectType (updated) Link ¶
Changes (response)
{'MaxAvailableProfileObjectCount': 'integer',
 'MaxProfileObjectCount': 'integer'}

Returns the object types for a specific domain.

See also: AWS API Documentation

Request Syntax

client.get_profile_object_type(
    DomainName='string',
    ObjectTypeName='string'
)
type DomainName

string

param DomainName

[REQUIRED]

The unique name of the domain.

type ObjectTypeName

string

param ObjectTypeName

[REQUIRED]

The name of the profile object type.

rtype

dict

returns

Response Syntax

{
    'ObjectTypeName': 'string',
    'Description': 'string',
    'TemplateId': 'string',
    'ExpirationDays': 123,
    'EncryptionKey': 'string',
    'AllowProfileCreation': True|False,
    'SourceLastUpdatedTimestampFormat': 'string',
    'MaxAvailableProfileObjectCount': 123,
    'MaxProfileObjectCount': 123,
    'Fields': {
        'string': {
            'Source': 'string',
            'Target': 'string',
            'ContentType': 'STRING'|'NUMBER'|'PHONE_NUMBER'|'EMAIL_ADDRESS'|'NAME'
        }
    },
    'Keys': {
        'string': [
            {
                'StandardIdentifiers': [
                    'PROFILE'|'ASSET'|'CASE'|'UNIQUE'|'SECONDARY'|'LOOKUP_ONLY'|'NEW_ONLY'|'ORDER',
                ],
                'FieldNames': [
                    'string',
                ]
            },
        ]
    },
    'CreatedAt': datetime(2015, 1, 1),
    'LastUpdatedAt': datetime(2015, 1, 1),
    'Tags': {
        'string': 'string'
    }
}

Response Structure

  • (dict) --

    • ObjectTypeName (string) --

      The name of the profile object type.

    • Description (string) --

      The description of the profile object type.

    • TemplateId (string) --

      A unique identifier for the object template.

    • ExpirationDays (integer) --

      The number of days until the data in the object expires.

    • EncryptionKey (string) --

      The customer-provided key to encrypt the profile object that will be created in this profile object type.

    • AllowProfileCreation (boolean) --

      Indicates whether a profile should be created when data is received if one doesn’t exist for an object of this type. The default is FALSE . If the AllowProfileCreation flag is set to FALSE , then the service tries to fetch a standard profile and associate this object with the profile. If it is set to TRUE , and if no match is found, then the service creates a new standard profile.

    • SourceLastUpdatedTimestampFormat (string) --

      The format of your sourceLastUpdatedTimestamp that was previously set up.

    • MaxAvailableProfileObjectCount (integer) --

      The amount of provisioned profile object max count available.

    • MaxProfileObjectCount (integer) --

      The amount of profile object max count assigned to the object type.

    • Fields (dict) --

      A map of the name and ObjectType field.

      • (string) --

        • (dict) --

          Represents a field in a ProfileObjectType.

          • Source (string) --

            A field of a ProfileObject. For example: _source.FirstName, where “_source” is a ProfileObjectType of a Zendesk user and “FirstName” is a field in that ObjectType.

          • Target (string) --

            The location of the data in the standard ProfileObject model. For example: _profile.Address.PostalCode.

          • ContentType (string) --

            The content type of the field. Used for determining equality when searching.

    • Keys (dict) --

      A list of unique keys that can be used to map data to the profile.

      • (string) --

        • (list) --

          • (dict) --

            An object that defines the Key element of a ProfileObject. A Key is a special element that can be used to search for a customer profile.

            • StandardIdentifiers (list) --

              The types of keys that a ProfileObject can have. Each ProfileObject can have only 1 UNIQUE key but multiple PROFILE keys. PROFILE, ASSET, CASE, or ORDER means that this key can be used to tie an object to a PROFILE, ASSET, CASE, or ORDER respectively. UNIQUE means that it can be used to uniquely identify an object. If a key a is marked as SECONDARY, it will be used to search for profiles after all other PROFILE keys have been searched. A LOOKUP_ONLY key is only used to match a profile but is not persisted to be used for searching of the profile. A NEW_ONLY key is only used if the profile does not already exist before the object is ingested, otherwise it is only used for matching objects to profiles.

              • (string) --

            • FieldNames (list) --

              The reference for the key name of the fields map.

              • (string) --

    • CreatedAt (datetime) --

      The timestamp of when the domain was created.

    • LastUpdatedAt (datetime) --

      The timestamp of when the domain was most recently edited.

    • Tags (dict) --

      The tags used to organize, track, or control access for this resource.

      • (string) --

        • (string) --

ListProfileObjectTypes (updated) Link ¶
Changes (response)
{'Items': {'MaxAvailableProfileObjectCount': 'integer',
           'MaxProfileObjectCount': 'integer'}}

Lists all of the templates available within the service.

See also: AWS API Documentation

Request Syntax

client.list_profile_object_types(
    DomainName='string',
    NextToken='string',
    MaxResults=123
)
type DomainName

string

param DomainName

[REQUIRED]

The unique name of the domain.

type NextToken

string

param NextToken

Identifies the next page of results to return.

type MaxResults

integer

param MaxResults

The maximum number of objects returned per page.

rtype

dict

returns

Response Syntax

{
    'Items': [
        {
            'ObjectTypeName': 'string',
            'Description': 'string',
            'CreatedAt': datetime(2015, 1, 1),
            'LastUpdatedAt': datetime(2015, 1, 1),
            'MaxProfileObjectCount': 123,
            'MaxAvailableProfileObjectCount': 123,
            'Tags': {
                'string': 'string'
            }
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • Items (list) --

      The list of ListProfileObjectTypes instances.

      • (dict) --

        A ProfileObjectType instance.

        • ObjectTypeName (string) --

          The name of the profile object type.

        • Description (string) --

          Description of the profile object type.

        • CreatedAt (datetime) --

          The timestamp of when the domain was created.

        • LastUpdatedAt (datetime) --

          The timestamp of when the domain was most recently edited.

        • MaxProfileObjectCount (integer) --

          The amount of profile object max count assigned to the object type.

        • MaxAvailableProfileObjectCount (integer) --

          The amount of provisioned profile object max count available.

        • Tags (dict) --

          The tags used to organize, track, or control access for this resource.

          • (string) --

            • (string) --

    • NextToken (string) --

      Identifies the next page of results to return.

PutProfileObjectType (updated) Link ¶
Changes (request, response)
Request
{'MaxProfileObjectCount': 'integer'}
Response
{'MaxAvailableProfileObjectCount': 'integer',
 'MaxProfileObjectCount': 'integer'}

Defines a ProfileObjectType.

To add or remove tags on an existing ObjectType, see TagResource / UntagResource.

See also: AWS API Documentation

Request Syntax

client.put_profile_object_type(
    DomainName='string',
    ObjectTypeName='string',
    Description='string',
    TemplateId='string',
    ExpirationDays=123,
    EncryptionKey='string',
    AllowProfileCreation=True|False,
    SourceLastUpdatedTimestampFormat='string',
    MaxProfileObjectCount=123,
    Fields={
        'string': {
            'Source': 'string',
            'Target': 'string',
            'ContentType': 'STRING'|'NUMBER'|'PHONE_NUMBER'|'EMAIL_ADDRESS'|'NAME'
        }
    },
    Keys={
        'string': [
            {
                'StandardIdentifiers': [
                    'PROFILE'|'ASSET'|'CASE'|'UNIQUE'|'SECONDARY'|'LOOKUP_ONLY'|'NEW_ONLY'|'ORDER',
                ],
                'FieldNames': [
                    'string',
                ]
            },
        ]
    },
    Tags={
        'string': 'string'
    }
)
type DomainName

string

param DomainName

[REQUIRED]

The unique name of the domain.

type ObjectTypeName

string

param ObjectTypeName

[REQUIRED]

The name of the profile object type.

type Description

string

param Description

[REQUIRED]

Description of the profile object type.

type TemplateId

string

param TemplateId

A unique identifier for the object template. For some attributes in the request, the service will use the default value from the object template when TemplateId is present. If these attributes are present in the request, the service may return a BadRequestException . These attributes include: AllowProfileCreation, SourceLastUpdatedTimestampFormat, Fields, and Keys. For example, if AllowProfileCreation is set to true when TemplateId is set, the service may return a BadRequestException .

type ExpirationDays

integer

param ExpirationDays

The number of days until the data in the object expires.

type EncryptionKey

string

param EncryptionKey

The customer-provided key to encrypt the profile object that will be created in this profile object type.

type AllowProfileCreation

boolean

param AllowProfileCreation

Indicates whether a profile should be created when data is received if one doesn’t exist for an object of this type. The default is FALSE . If the AllowProfileCreation flag is set to FALSE , then the service tries to fetch a standard profile and associate this object with the profile. If it is set to TRUE , and if no match is found, then the service creates a new standard profile.

type SourceLastUpdatedTimestampFormat

string

param SourceLastUpdatedTimestampFormat

The format of your sourceLastUpdatedTimestamp that was previously set up.

type MaxProfileObjectCount

integer

param MaxProfileObjectCount

The amount of profile object max count assigned to the object type

type Fields

dict

param Fields

A map of the name and ObjectType field.

  • (string) --

    • (dict) --

      Represents a field in a ProfileObjectType.

      • Source (string) --

        A field of a ProfileObject. For example: _source.FirstName, where “_source” is a ProfileObjectType of a Zendesk user and “FirstName” is a field in that ObjectType.

      • Target (string) --

        The location of the data in the standard ProfileObject model. For example: _profile.Address.PostalCode.

      • ContentType (string) --

        The content type of the field. Used for determining equality when searching.

type Keys

dict

param Keys

A list of unique keys that can be used to map data to the profile.

  • (string) --

    • (list) --

      • (dict) --

        An object that defines the Key element of a ProfileObject. A Key is a special element that can be used to search for a customer profile.

        • StandardIdentifiers (list) --

          The types of keys that a ProfileObject can have. Each ProfileObject can have only 1 UNIQUE key but multiple PROFILE keys. PROFILE, ASSET, CASE, or ORDER means that this key can be used to tie an object to a PROFILE, ASSET, CASE, or ORDER respectively. UNIQUE means that it can be used to uniquely identify an object. If a key a is marked as SECONDARY, it will be used to search for profiles after all other PROFILE keys have been searched. A LOOKUP_ONLY key is only used to match a profile but is not persisted to be used for searching of the profile. A NEW_ONLY key is only used if the profile does not already exist before the object is ingested, otherwise it is only used for matching objects to profiles.

          • (string) --

        • FieldNames (list) --

          The reference for the key name of the fields map.

          • (string) --

type Tags

dict

param Tags

The tags used to organize, track, or control access for this resource.

  • (string) --

    • (string) --

rtype

dict

returns

Response Syntax

{
    'ObjectTypeName': 'string',
    'Description': 'string',
    'TemplateId': 'string',
    'ExpirationDays': 123,
    'EncryptionKey': 'string',
    'AllowProfileCreation': True|False,
    'SourceLastUpdatedTimestampFormat': 'string',
    'MaxProfileObjectCount': 123,
    'MaxAvailableProfileObjectCount': 123,
    'Fields': {
        'string': {
            'Source': 'string',
            'Target': 'string',
            'ContentType': 'STRING'|'NUMBER'|'PHONE_NUMBER'|'EMAIL_ADDRESS'|'NAME'
        }
    },
    'Keys': {
        'string': [
            {
                'StandardIdentifiers': [
                    'PROFILE'|'ASSET'|'CASE'|'UNIQUE'|'SECONDARY'|'LOOKUP_ONLY'|'NEW_ONLY'|'ORDER',
                ],
                'FieldNames': [
                    'string',
                ]
            },
        ]
    },
    'CreatedAt': datetime(2015, 1, 1),
    'LastUpdatedAt': datetime(2015, 1, 1),
    'Tags': {
        'string': 'string'
    }
}

Response Structure

  • (dict) --

    • ObjectTypeName (string) --

      The name of the profile object type.

    • Description (string) --

      Description of the profile object type.

    • TemplateId (string) --

      A unique identifier for the object template.

    • ExpirationDays (integer) --

      The number of days until the data in the object expires.

    • EncryptionKey (string) --

      The customer-provided key to encrypt the profile object that will be created in this profile object type.

    • AllowProfileCreation (boolean) --

      Indicates whether a profile should be created when data is received if one doesn’t exist for an object of this type. The default is FALSE . If the AllowProfileCreation flag is set to FALSE , then the service tries to fetch a standard profile and associate this object with the profile. If it is set to TRUE , and if no match is found, then the service creates a new standard profile.

    • SourceLastUpdatedTimestampFormat (string) --

      The format of your sourceLastUpdatedTimestamp that was previously set up in fields that were parsed using SimpleDateFormat. If you have sourceLastUpdatedTimestamp in your field, you must set up sourceLastUpdatedTimestampFormat .

    • MaxProfileObjectCount (integer) --

      The amount of profile object max count assigned to the object type.

    • MaxAvailableProfileObjectCount (integer) --

      The amount of provisioned profile object max count available.

    • Fields (dict) --

      A map of the name and ObjectType field.

      • (string) --

        • (dict) --

          Represents a field in a ProfileObjectType.

          • Source (string) --

            A field of a ProfileObject. For example: _source.FirstName, where “_source” is a ProfileObjectType of a Zendesk user and “FirstName” is a field in that ObjectType.

          • Target (string) --

            The location of the data in the standard ProfileObject model. For example: _profile.Address.PostalCode.

          • ContentType (string) --

            The content type of the field. Used for determining equality when searching.

    • Keys (dict) --

      A list of unique keys that can be used to map data to the profile.

      • (string) --

        • (list) --

          • (dict) --

            An object that defines the Key element of a ProfileObject. A Key is a special element that can be used to search for a customer profile.

            • StandardIdentifiers (list) --

              The types of keys that a ProfileObject can have. Each ProfileObject can have only 1 UNIQUE key but multiple PROFILE keys. PROFILE, ASSET, CASE, or ORDER means that this key can be used to tie an object to a PROFILE, ASSET, CASE, or ORDER respectively. UNIQUE means that it can be used to uniquely identify an object. If a key a is marked as SECONDARY, it will be used to search for profiles after all other PROFILE keys have been searched. A LOOKUP_ONLY key is only used to match a profile but is not persisted to be used for searching of the profile. A NEW_ONLY key is only used if the profile does not already exist before the object is ingested, otherwise it is only used for matching objects to profiles.

              • (string) --

            • FieldNames (list) --

              The reference for the key name of the fields map.

              • (string) --

    • CreatedAt (datetime) --

      The timestamp of when the domain was created.

    • LastUpdatedAt (datetime) --

      The timestamp of when the domain was most recently edited.

    • Tags (dict) --

      The tags used to organize, track, or control access for this resource.

      • (string) --

        • (string) --