Amazon Connect Service

2021/09/27 - Amazon Connect Service - 5 updated api methods

Changes  This release updates a set of APIs: CreateIntegrationAssociation, ListIntegrationAssociations, CreateUseCase, and StartOutboundVoiceContact. You can use it to create integrations with Amazon Pinpoint for the Amazon Connect Campaigns use case, Amazon Connect Voice ID, and Amazon Connect Wisdom.

CreateIntegrationAssociation (updated) Link ¶
Changes (request)
{'IntegrationType': {'PINPOINT_APP',
                     'VOICE_ID',
                     'WISDOM_ASSISTANT',
                     'WISDOM_KNOWLEDGE_BASE'}}

Creates an AWS resource association with an Amazon Connect instance.

See also: AWS API Documentation

Request Syntax

client.create_integration_association(
    InstanceId='string',
    IntegrationType='EVENT'|'VOICE_ID'|'PINPOINT_APP'|'WISDOM_ASSISTANT'|'WISDOM_KNOWLEDGE_BASE',
    IntegrationArn='string',
    SourceApplicationUrl='string',
    SourceApplicationName='string',
    SourceType='SALESFORCE'|'ZENDESK',
    Tags={
        'string': 'string'
    }
)
type InstanceId:

string

param InstanceId:

[REQUIRED]

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

type IntegrationType:

string

param IntegrationType:

[REQUIRED]

The type of information to be ingested.

type IntegrationArn:

string

param IntegrationArn:

[REQUIRED]

The Amazon Resource Name (ARN) of the integration.

type SourceApplicationUrl:

string

param SourceApplicationUrl:

The URL for the external application. This field is only required for the EVENT integration type.

type SourceApplicationName:

string

param SourceApplicationName:

The name of the external application. This field is only required for the EVENT integration type.

type SourceType:

string

param SourceType:

The type of the data source. This field is only required for the EVENT integration type.

type Tags:

dict

param Tags:

One or more tags.

  • (string) --

    • (string) --

rtype:

dict

returns:

Response Syntax

{
    'IntegrationAssociationId': 'string',
    'IntegrationAssociationArn': 'string'
}

Response Structure

  • (dict) --

    • IntegrationAssociationId (string) --

      The identifier for the integration association.

    • IntegrationAssociationArn (string) --

      The Amazon Resource Name (ARN) for the association.

CreateUseCase (updated) Link ¶
Changes (request)
{'UseCaseType': {'CONNECT_CAMPAIGNS'}}

Creates a use case for an integration association.

See also: AWS API Documentation

Request Syntax

client.create_use_case(
    InstanceId='string',
    IntegrationAssociationId='string',
    UseCaseType='RULES_EVALUATION'|'CONNECT_CAMPAIGNS',
    Tags={
        'string': 'string'
    }
)
type InstanceId:

string

param InstanceId:

[REQUIRED]

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

type IntegrationAssociationId:

string

param IntegrationAssociationId:

[REQUIRED]

The identifier for the integration association.

type UseCaseType:

string

param UseCaseType:

[REQUIRED]

The type of use case to associate to the integration association. Each integration association can have only one of each use case type.

type Tags:

dict

param Tags:

One or more tags.

  • (string) --

    • (string) --

rtype:

dict

returns:

Response Syntax

{
    'UseCaseId': 'string',
    'UseCaseArn': 'string'
}

Response Structure

  • (dict) --

    • UseCaseId (string) --

      The identifier of the use case.

    • UseCaseArn (string) --

      The Amazon Resource Name (ARN) for the use case.

ListIntegrationAssociations (updated) Link ¶
Changes (request, response)
Request
{'IntegrationType': 'EVENT | VOICE_ID | PINPOINT_APP | WISDOM_ASSISTANT | '
                    'WISDOM_KNOWLEDGE_BASE'}
Response
{'IntegrationAssociationSummaryList': {'IntegrationType': {'PINPOINT_APP',
                                                           'VOICE_ID',
                                                           'WISDOM_ASSISTANT',
                                                           'WISDOM_KNOWLEDGE_BASE'}}}

Provides summary information about the AWS resource associations for the specified Amazon Connect instance.

See also: AWS API Documentation

Request Syntax

client.list_integration_associations(
    InstanceId='string',
    IntegrationType='EVENT'|'VOICE_ID'|'PINPOINT_APP'|'WISDOM_ASSISTANT'|'WISDOM_KNOWLEDGE_BASE',
    NextToken='string',
    MaxResults=123
)
type InstanceId:

string

param InstanceId:

[REQUIRED]

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

type IntegrationType:

string

param IntegrationType:

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 MaxResults:

integer

param MaxResults:

The maximum number of results to return per page.

rtype:

dict

returns:

Response Syntax

{
    'IntegrationAssociationSummaryList': [
        {
            'IntegrationAssociationId': 'string',
            'IntegrationAssociationArn': 'string',
            'InstanceId': 'string',
            'IntegrationType': 'EVENT'|'VOICE_ID'|'PINPOINT_APP'|'WISDOM_ASSISTANT'|'WISDOM_KNOWLEDGE_BASE',
            'IntegrationArn': 'string',
            'SourceApplicationUrl': 'string',
            'SourceApplicationName': 'string',
            'SourceType': 'SALESFORCE'|'ZENDESK'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • IntegrationAssociationSummaryList (list) --

      The associations.

      • (dict) --

        Contains summary information about the associated AppIntegrations.

        • IntegrationAssociationId (string) --

          The identifier for the AppIntegration association.

        • IntegrationAssociationArn (string) --

          The Amazon Resource Name (ARN) for the AppIntegration association.

        • InstanceId (string) --

          The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

        • IntegrationType (string) --

          The integration type.

        • IntegrationArn (string) --

          The Amazon Resource Name (ARN) for the AppIntegration.

        • SourceApplicationUrl (string) --

          The URL for the external application.

        • SourceApplicationName (string) --

          The user-provided, friendly name for the external application.

        • SourceType (string) --

          The name of the source.

    • NextToken (string) --

      If there are additional results, this is the token for the next set of results.

ListUseCases (updated) Link ¶
Changes (response)
{'UseCaseSummaryList': {'UseCaseType': {'CONNECT_CAMPAIGNS'}}}

Lists the use cases for the integration association.

See also: AWS API Documentation

Request Syntax

client.list_use_cases(
    InstanceId='string',
    IntegrationAssociationId='string',
    NextToken='string',
    MaxResults=123
)
type InstanceId:

string

param InstanceId:

[REQUIRED]

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

type IntegrationAssociationId:

string

param IntegrationAssociationId:

[REQUIRED]

The identifier for the integration association.

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 MaxResults:

integer

param MaxResults:

The maximum number of results to return per page.

rtype:

dict

returns:

Response Syntax

{
    'UseCaseSummaryList': [
        {
            'UseCaseId': 'string',
            'UseCaseArn': 'string',
            'UseCaseType': 'RULES_EVALUATION'|'CONNECT_CAMPAIGNS'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • UseCaseSummaryList (list) --

      The use cases.

      • (dict) --

        Contains the use case.

        • UseCaseId (string) --

          The identifier for the use case.

        • UseCaseArn (string) --

          The Amazon Resource Name (ARN) for the use case.

        • UseCaseType (string) --

          The type of use case to associate to the integration association. Each integration association can have only one of each use case type.

    • NextToken (string) --

      If there are additional results, this is the token for the next set of results.

StartOutboundVoiceContact (updated) Link ¶
Changes (request)
{'AnswerMachineDetectionConfig': {'AwaitAnswerMachinePrompt': 'boolean',
                                  'EnableAnswerMachineDetection': 'boolean'},
 'CampaignId': 'string',
 'TrafficType': 'GENERAL | CAMPAIGN'}

Places an outbound call to a contact, and then initiates the contact flow. It performs the actions in the contact flow that's specified (in ContactFlowId).

Agents do not initiate the outbound API, which means that they do not dial the contact. If the contact flow places an outbound call to a contact, and then puts the contact in queue, the call is then routed to the agent, like any other inbound case.

There is a 60-second dialing timeout for this operation. If the call is not connected after 60 seconds, it fails.

See also: AWS API Documentation

Request Syntax

client.start_outbound_voice_contact(
    DestinationPhoneNumber='string',
    ContactFlowId='string',
    InstanceId='string',
    ClientToken='string',
    SourcePhoneNumber='string',
    QueueId='string',
    Attributes={
        'string': 'string'
    },
    AnswerMachineDetectionConfig={
        'EnableAnswerMachineDetection': True|False,
        'AwaitAnswerMachinePrompt': True|False
    },
    CampaignId='string',
    TrafficType='GENERAL'|'CAMPAIGN'
)
type DestinationPhoneNumber:

string

param DestinationPhoneNumber:

[REQUIRED]

The phone number of the customer, in E.164 format.

type ContactFlowId:

string

param ContactFlowId:

[REQUIRED]

The identifier of the contact flow for the outbound call. To see the ContactFlowId in the Amazon Connect console user interface, on the navigation menu go to Routing, Contact Flows. Choose the contact flow. On the contact flow page, under the name of the contact flow, choose Show additional flow information. The ContactFlowId is the last part of the ARN, shown here in bold:

arn:aws:connect:us-west-2:xxxxxxxxxxxx:instance/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/contact-flow/846ec553-a005-41c0-8341-xxxxxxxxxxxx

type InstanceId:

string

param InstanceId:

[REQUIRED]

The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance.

type ClientToken:

string

param ClientToken:

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. The token is valid for 7 days after creation. If a contact is already started, the contact ID is returned.

This field is autopopulated if not provided.

type SourcePhoneNumber:

string

param SourcePhoneNumber:

The phone number associated with the Amazon Connect instance, in E.164 format. If you do not specify a source phone number, you must specify a queue.

type QueueId:

string

param QueueId:

The queue for the call. If you specify a queue, the phone displayed for caller ID is the phone number specified in the queue. If you do not specify a queue, the queue defined in the contact flow is used. If you do not specify a queue, you must specify a source phone number.

type Attributes:

dict

param Attributes:

A custom key-value pair using an attribute map. The attributes are standard Amazon Connect attributes, and can be accessed in contact flows just like any other contact attributes.

There can be up to 32,768 UTF-8 bytes across all key-value pairs per contact. Attribute keys can include only alphanumeric, dash, and underscore characters.

  • (string) --

    • (string) --

type AnswerMachineDetectionConfig:

dict

param AnswerMachineDetectionConfig:

Configuration of the answering machine detection for this outbound call.

  • EnableAnswerMachineDetection (boolean) --

    The flag to indicate if answer machine detection analysis needs to be performed for a voice call. If set to true, TrafficType must be set as CAMPAIGN.

  • AwaitAnswerMachinePrompt (boolean) --

    Wait for the answering machine prompt.

type CampaignId:

string

param CampaignId:

The campaign identifier of the outbound communication.

type TrafficType:

string

param TrafficType:

Denotes the class of traffic. Calls with different traffic types are handled differently by Amazon Connect. The default value is GENERAL. Use CAMPAIGN if EnableAnswerMachineDetection is set to true. For all other cases, use GENERAL.

rtype:

dict

returns:

Response Syntax

{
    'ContactId': 'string'
}

Response Structure

  • (dict) --

    • ContactId (string) --

      The identifier of this contact within the Amazon Connect instance.