create_domain

CustomerProfiles.Client.create_domain(**kwargs)

Creates a domain, which is a container for all customer data, such as customer profile attributes, object types, profile keys, and encryption keys. You can create multiple domains, and each domain can have multiple third-party integrations.

Each Amazon Connect instance can be associated with only one domain. Multiple Amazon Connect instances can be associated with one domain.

Use this API or UpdateDomain to enable identity resolution: set Matching to true.

To prevent cross-service impersonation when you call this API, see Cross-service confused deputy prevention for sample policies that you should apply.

See also: AWS API Documentation

Request Syntax

response = client.create_domain(
    DomainName='string',
    DefaultExpirationDays=123,
    DefaultEncryptionKey='string',
    DeadLetterQueueUrl='string',
    Matching={
        'Enabled': True|False,
        'JobSchedule': {
            'DayOfTheWeek': 'SUNDAY'|'MONDAY'|'TUESDAY'|'WEDNESDAY'|'THURSDAY'|'FRIDAY'|'SATURDAY',
            'Time': 'string'
        },
        'AutoMerging': {
            'Enabled': True|False,
            'Consolidation': {
                'MatchingAttributesList': [
                    [
                        'string',
                    ],
                ]
            },
            'ConflictResolution': {
                'ConflictResolvingModel': 'RECENCY'|'SOURCE',
                'SourceName': 'string'
            },
            'MinAllowedConfidenceScoreForMerging': 123.0
        },
        'ExportingConfig': {
            'S3Exporting': {
                'S3BucketName': 'string',
                'S3KeyName': 'string'
            }
        }
    },
    Tags={
        'string': 'string'
    }
)
Parameters
  • DomainName (string) --

    [REQUIRED]

    The unique name of the domain.

  • DefaultExpirationDays (integer) --

    [REQUIRED]

    The default number of days until the data within the domain expires.

  • DefaultEncryptionKey (string) -- The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified. It is used to encrypt all data before it is placed in permanent or semi-permanent storage.
  • DeadLetterQueueUrl (string) -- The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications. You must set up a policy on the DeadLetterQueue for the SendMessage operation to enable Amazon Connect Customer Profiles to send messages to the DeadLetterQueue.
  • Matching (dict) --

    The process of matching duplicate profiles. If Matching = true , Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains.

    After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured ExportingConfig in the MatchingRequest , you can download the results from S3.

    • Enabled (boolean) -- [REQUIRED]

      The flag that enables the matching process of duplicate profiles.

    • JobSchedule (dict) --

      The day and time when do you want to start the Identity Resolution Job every week.

      • DayOfTheWeek (string) -- [REQUIRED]

        The day when the Identity Resolution Job should run every week.

      • Time (string) -- [REQUIRED]

        The time when the Identity Resolution Job should run every week.

    • AutoMerging (dict) --

      Configuration information about the auto-merging process.

      • Enabled (boolean) -- [REQUIRED]

        The flag that enables the auto-merging of duplicate profiles.

      • Consolidation (dict) --

        A list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged.

        • MatchingAttributesList (list) -- [REQUIRED]

          A list of matching criteria.

          • (list) --
            • (string) --
      • ConflictResolution (dict) --

        How the auto-merging process should resolve conflicts between different profiles. For example, if Profile A and Profile B have the same FirstName and LastName (and that is the matching criteria), which EmailAddress should be used?

        • ConflictResolvingModel (string) -- [REQUIRED]

          How the auto-merging process should resolve conflicts between different profiles.

          • RECENCY : Uses the data that was most recently updated.
          • SOURCE : Uses the data from a specific source. For example, if a company has been aquired or two departments have merged, data from the specified source is used. If two duplicate profiles are from the same source, then RECENCY is used again.
        • SourceName (string) --

          The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel .

      • MinAllowedConfidenceScoreForMerging (float) --

        A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles.

    • ExportingConfig (dict) --

      Configuration information for exporting Identity Resolution results, for example, to an S3 bucket.

      • S3Exporting (dict) --

        The S3 location where Identity Resolution Jobs write result files.

        • S3BucketName (string) -- [REQUIRED]

          The name of the S3 bucket where Identity Resolution Jobs write result files.

        • S3KeyName (string) --

          The S3 key name of the location where Identity Resolution Jobs write result files.

  • Tags (dict) --

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

    • (string) --
      • (string) --
Return type

dict

Returns

Response Syntax

{
    'DomainName': 'string',
    'DefaultExpirationDays': 123,
    'DefaultEncryptionKey': 'string',
    'DeadLetterQueueUrl': 'string',
    'Matching': {
        'Enabled': True|False,
        'JobSchedule': {
            'DayOfTheWeek': 'SUNDAY'|'MONDAY'|'TUESDAY'|'WEDNESDAY'|'THURSDAY'|'FRIDAY'|'SATURDAY',
            'Time': 'string'
        },
        'AutoMerging': {
            'Enabled': True|False,
            'Consolidation': {
                'MatchingAttributesList': [
                    [
                        'string',
                    ],
                ]
            },
            'ConflictResolution': {
                'ConflictResolvingModel': 'RECENCY'|'SOURCE',
                'SourceName': 'string'
            },
            'MinAllowedConfidenceScoreForMerging': 123.0
        },
        'ExportingConfig': {
            'S3Exporting': {
                'S3BucketName': 'string',
                'S3KeyName': 'string'
            }
        }
    },
    'CreatedAt': datetime(2015, 1, 1),
    'LastUpdatedAt': datetime(2015, 1, 1),
    'Tags': {
        'string': 'string'
    }
}

Response Structure

  • (dict) --

    • DomainName (string) --

      The unique name of the domain.

    • DefaultExpirationDays (integer) --

      The default number of days until the data within the domain expires.

    • DefaultEncryptionKey (string) --

      The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified. It is used to encrypt all data before it is placed in permanent or semi-permanent storage.

    • DeadLetterQueueUrl (string) --

      The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.

    • Matching (dict) --

      The process of matching duplicate profiles. If Matching = true , Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains.

      After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured ExportingConfig in the MatchingRequest , you can download the results from S3.

      • Enabled (boolean) --

        The flag that enables the matching process of duplicate profiles.

      • JobSchedule (dict) --

        The day and time when do you want to start the Identity Resolution Job every week.

        • DayOfTheWeek (string) --

          The day when the Identity Resolution Job should run every week.

        • Time (string) --

          The time when the Identity Resolution Job should run every week.

      • AutoMerging (dict) --

        Configuration information about the auto-merging process.

        • Enabled (boolean) --

          The flag that enables the auto-merging of duplicate profiles.

        • Consolidation (dict) --

          A list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged.

          • MatchingAttributesList (list) --

            A list of matching criteria.

            • (list) --
              • (string) --
        • ConflictResolution (dict) --

          How the auto-merging process should resolve conflicts between different profiles. For example, if Profile A and Profile B have the same FirstName and LastName (and that is the matching criteria), which EmailAddress should be used?

          • ConflictResolvingModel (string) --

            How the auto-merging process should resolve conflicts between different profiles.

            • RECENCY : Uses the data that was most recently updated.
            • SOURCE : Uses the data from a specific source. For example, if a company has been aquired or two departments have merged, data from the specified source is used. If two duplicate profiles are from the same source, then RECENCY is used again.
          • SourceName (string) --

            The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel .

        • MinAllowedConfidenceScoreForMerging (float) --

          A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles.

      • ExportingConfig (dict) --

        Configuration information for exporting Identity Resolution results, for example, to an S3 bucket.

        • S3Exporting (dict) --

          The S3 location where Identity Resolution Jobs write result files.

          • S3BucketName (string) --

            The name of the S3 bucket where Identity Resolution Jobs write result files.

          • S3KeyName (string) --

            The S3 key name of the location where Identity Resolution Jobs write result files.

    • 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) --

Exceptions

  • CustomerProfiles.Client.exceptions.BadRequestException
  • CustomerProfiles.Client.exceptions.ResourceNotFoundException
  • CustomerProfiles.Client.exceptions.AccessDeniedException
  • CustomerProfiles.Client.exceptions.ThrottlingException
  • CustomerProfiles.Client.exceptions.InternalServerException