Amazon Connect Service

2024/06/28 - Amazon Connect Service - 1 updated api methods

Changes  This release supports showing PreferredAgentRouting step via DescribeContact API.

DescribeContact (updated) Link ¶
Changes (response)
{'Contact': {'RoutingCriteria': {'Steps': {'Expression': {'AttributeCondition': {'MatchCriteria': {'AgentsCriteria': {'AgentIds': ['string']}}}}}}}}

This API is in preview release for Amazon Connect and is subject to change.

Describes the specified contact.

See also: AWS API Documentation

Request Syntax

client.describe_contact(
    InstanceId='string',
    ContactId='string'
)
type InstanceId:

string

param InstanceId:

[REQUIRED]

The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

type ContactId:

string

param ContactId:

[REQUIRED]

The identifier of the contact.

rtype:

dict

returns:

Response Syntax

{
    'Contact': {
        'Arn': 'string',
        'Id': 'string',
        'InitialContactId': 'string',
        'PreviousContactId': 'string',
        'InitiationMethod': 'INBOUND'|'OUTBOUND'|'TRANSFER'|'QUEUE_TRANSFER'|'CALLBACK'|'API'|'DISCONNECT'|'MONITOR'|'EXTERNAL_OUTBOUND',
        'Name': 'string',
        'Description': 'string',
        'Channel': 'VOICE'|'CHAT'|'TASK',
        'QueueInfo': {
            'Id': 'string',
            'EnqueueTimestamp': datetime(2015, 1, 1)
        },
        'AgentInfo': {
            'Id': 'string',
            'ConnectedToAgentTimestamp': datetime(2015, 1, 1),
            'AgentPauseDurationInSeconds': 123,
            'HierarchyGroups': {
                'Level1': {
                    'Arn': 'string'
                },
                'Level2': {
                    'Arn': 'string'
                },
                'Level3': {
                    'Arn': 'string'
                },
                'Level4': {
                    'Arn': 'string'
                },
                'Level5': {
                    'Arn': 'string'
                }
            },
            'DeviceInfo': {
                'PlatformName': 'string',
                'PlatformVersion': 'string',
                'OperatingSystem': 'string'
            },
            'Capabilities': {
                'Video': 'SEND'
            }
        },
        'InitiationTimestamp': datetime(2015, 1, 1),
        'DisconnectTimestamp': datetime(2015, 1, 1),
        'LastUpdateTimestamp': datetime(2015, 1, 1),
        'LastPausedTimestamp': datetime(2015, 1, 1),
        'LastResumedTimestamp': datetime(2015, 1, 1),
        'TotalPauseCount': 123,
        'TotalPauseDurationInSeconds': 123,
        'ScheduledTimestamp': datetime(2015, 1, 1),
        'RelatedContactId': 'string',
        'WisdomInfo': {
            'SessionArn': 'string'
        },
        'QueueTimeAdjustmentSeconds': 123,
        'QueuePriority': 123,
        'Tags': {
            'string': 'string'
        },
        'ConnectedToSystemTimestamp': datetime(2015, 1, 1),
        'RoutingCriteria': {
            'Steps': [
                {
                    'Expiry': {
                        'DurationInSeconds': 123,
                        'ExpiryTimestamp': datetime(2015, 1, 1)
                    },
                    'Expression': {
                        'AttributeCondition': {
                            'Name': 'string',
                            'Value': 'string',
                            'ProficiencyLevel': ...,
                            'MatchCriteria': {
                                'AgentsCriteria': {
                                    'AgentIds': [
                                        'string',
                                    ]
                                }
                            },
                            'ComparisonOperator': 'string'
                        },
                        'AndExpression': [
                            {'... recursive ...'},
                        ],
                        'OrExpression': [
                            {'... recursive ...'},
                        ]
                    },
                    'Status': 'ACTIVE'|'INACTIVE'|'JOINED'|'EXPIRED'
                },
            ],
            'ActivationTimestamp': datetime(2015, 1, 1),
            'Index': 123
        },
        'Customer': {
            'DeviceInfo': {
                'PlatformName': 'string',
                'PlatformVersion': 'string',
                'OperatingSystem': 'string'
            },
            'Capabilities': {
                'Video': 'SEND'
            }
        },
        'Campaign': {
            'CampaignId': 'string'
        },
        'AnsweringMachineDetectionStatus': 'ANSWERED'|'UNDETECTED'|'ERROR'|'HUMAN_ANSWERED'|'SIT_TONE_DETECTED'|'SIT_TONE_BUSY'|'SIT_TONE_INVALID_NUMBER'|'FAX_MACHINE_DETECTED'|'VOICEMAIL_BEEP'|'VOICEMAIL_NO_BEEP'|'AMD_UNRESOLVED'|'AMD_UNANSWERED'|'AMD_ERROR'|'AMD_NOT_APPLICABLE',
        'CustomerVoiceActivity': {
            'GreetingStartTimestamp': datetime(2015, 1, 1),
            'GreetingEndTimestamp': datetime(2015, 1, 1)
        },
        'QualityMetrics': {
            'Agent': {
                'Audio': {
                    'QualityScore': ...,
                    'PotentialQualityIssues': [
                        'string',
                    ]
                }
            },
            'Customer': {
                'Audio': {
                    'QualityScore': ...,
                    'PotentialQualityIssues': [
                        'string',
                    ]
                }
            }
        },
        'DisconnectDetails': {
            'PotentialDisconnectIssue': 'string'
        },
        'SegmentAttributes': {
            'string': {
                'ValueString': 'string'
            }
        }
    }
}

Response Structure

  • (dict) --

    • Contact (dict) --

      Information about the contact.

      • Arn (string) --

        The Amazon Resource Name (ARN) for the contact.

      • Id (string) --

        The identifier for the contact.

      • InitialContactId (string) --

        If this contact is related to other contacts, this is the ID of the initial contact.

      • PreviousContactId (string) --

        If this contact is not the first contact, this is the ID of the previous contact.

      • InitiationMethod (string) --

        Indicates how the contact was initiated.

      • Name (string) --

        The name of the contact.

      • Description (string) --

        The description of the contact.

      • Channel (string) --

        How the contact reached your contact center.

      • QueueInfo (dict) --

        If this contact was queued, this contains information about the queue.

        • Id (string) --

          The unique identifier for the queue.

        • EnqueueTimestamp (datetime) --

          The timestamp when the contact was added to the queue.

      • AgentInfo (dict) --

        Information about the agent who accepted the contact.

        • Id (string) --

          The identifier of the agent who accepted the contact.

        • ConnectedToAgentTimestamp (datetime) --

          The timestamp when the contact was connected to the agent.

        • AgentPauseDurationInSeconds (integer) --

          Agent pause duration for a contact in seconds.

        • HierarchyGroups (dict) --

          The agent hierarchy groups for the agent.

          • Level1 (dict) --

            The group at level one of the agent hierarchy.

            • Arn (string) --

              The Amazon Resource Name (ARN) of the group.

          • Level2 (dict) --

            The group at level two of the agent hierarchy.

            • Arn (string) --

              The Amazon Resource Name (ARN) of the group.

          • Level3 (dict) --

            The group at level three of the agent hierarchy.

            • Arn (string) --

              The Amazon Resource Name (ARN) of the group.

          • Level4 (dict) --

            The group at level four of the agent hierarchy.

            • Arn (string) --

              The Amazon Resource Name (ARN) of the group.

          • Level5 (dict) --

            The group at level five of the agent hierarchy.

            • Arn (string) --

              The Amazon Resource Name (ARN) of the group.

        • DeviceInfo (dict) --

          Information regarding Agent’s device.

          • PlatformName (string) --

            Name of the platform that the participant used for the call.

          • PlatformVersion (string) --

            Version of the platform that the participant used for the call.

          • OperatingSystem (string) --

            Operating system that the participant used for the call.

        • Capabilities (dict) --

          The configuration for the allowed capabilities for participants present over the call.

          • Video (string) --

            The configuration having the video sharing capabilities for participants over the call.

      • InitiationTimestamp (datetime) --

        The date and time this contact was initiated, in UTC time. For INBOUND, this is when the contact arrived. For OUTBOUND, this is when the agent began dialing. For CALLBACK, this is when the callback contact was created. For TRANSFER and QUEUE_TRANSFER, this is when the transfer was initiated. For API, this is when the request arrived. For EXTERNAL_OUTBOUND, this is when the agent started dialing the external participant. For MONITOR, this is when the supervisor started listening to a contact.

      • DisconnectTimestamp (datetime) --

        The timestamp when the customer endpoint disconnected from Amazon Connect.

      • LastUpdateTimestamp (datetime) --

        The timestamp when contact was last updated.

      • LastPausedTimestamp (datetime) --

        The timestamp when the contact was last paused.

      • LastResumedTimestamp (datetime) --

        The timestamp when the contact was last resumed.

      • TotalPauseCount (integer) --

        Total pause count for a contact.

      • TotalPauseDurationInSeconds (integer) --

        Total pause duration for a contact in seconds.

      • ScheduledTimestamp (datetime) --

        The timestamp, in Unix epoch time format, at which to start running the inbound flow.

      • RelatedContactId (string) --

        The contactId that is related to this contact.

      • WisdomInfo (dict) --

        Information about Amazon Connect Wisdom.

        • SessionArn (string) --

          The Amazon Resource Name (ARN) of the Wisdom session.

      • QueueTimeAdjustmentSeconds (integer) --

        An integer that represents the queue time adjust to be applied to the contact, in seconds (longer / larger queue time are routed preferentially). Cannot be specified if the QueuePriority is specified. Must be statically defined and a valid integer value.

      • QueuePriority (integer) --

        An integer that represents the queue priority to be applied to the contact (lower priorities are routed preferentially). Cannot be specified if the QueueTimeAdjustmentSeconds is specified. Must be statically defined, must be larger than zero, and a valid integer value. Default Value is 5.

      • Tags (dict) --

        Tags associated with the contact. This contains both Amazon Web Services generated and user-defined tags.

        • (string) --

          • (string) --

      • ConnectedToSystemTimestamp (datetime) --

        The timestamp when customer endpoint connected to Amazon Connect.

      • RoutingCriteria (dict) --

        Latest routing criteria on the contact.

        • Steps (list) --

          List of routing steps. When Amazon Connect does not find an available agent meeting the requirements in a step for a given step duration, the routing criteria will move on to the next step sequentially until a join is completed with an agent. When all steps are exhausted, the contact will be offered to any agent in the queue.

          • (dict) --

            Step signifies the criteria to be used for routing to an agent

            • Expiry (dict) --

              An object to specify the expiration of a routing step.

              • DurationInSeconds (integer) --

                The number of seconds to wait before expiring the routing step.

              • ExpiryTimestamp (datetime) --

                The timestamp indicating when the routing step expires.

            • Expression (dict) --

              A tagged union to specify expression for a routing step.

              • AttributeCondition (dict) --

                An object to specify the predefined attribute condition.

                • Name (string) --

                  The name of predefined attribute.

                • Value (string) --

                  The value of predefined attribute.

                • ProficiencyLevel (float) --

                  The proficiency level of the condition.

                • MatchCriteria (dict) --

                  An object to define AgentsCriteria.

                  • AgentsCriteria (dict) --

                    An object to define AgentIds.

                    • AgentIds (list) --

                      An object to specify a list of agents, by Agent ID.

                      • (string) --

                • ComparisonOperator (string) --

                  The operator of the condition.

              • AndExpression (list) --

                List of routing expressions which will be AND-ed together.

                • (dict) --

                  A tagged union to specify expression for a routing step.

              • OrExpression (list) --

                List of routing expressions which will be OR-ed together.

                • (dict) --

                  A tagged union to specify expression for a routing step.

            • Status (string) --

              Represents status of the Routing step.

        • ActivationTimestamp (datetime) --

          The timestamp indicating when the routing criteria is set to active. A routing criteria is activated when contact is transferred to a queue. ActivationTimestamp will be set on routing criteria for contacts in agent queue even though Routing criteria is never activated for contacts in agent queue.

        • Index (integer) --

          Information about the index of the routing criteria.

      • Customer (dict) --

        Information about the Customer on the contact.

        • DeviceInfo (dict) --

          Information regarding Customer’s device.

          • PlatformName (string) --

            Name of the platform that the participant used for the call.

          • PlatformVersion (string) --

            Version of the platform that the participant used for the call.

          • OperatingSystem (string) --

            Operating system that the participant used for the call.

        • Capabilities (dict) --

          The configuration for the allowed capabilities for participants present over the call.

          • Video (string) --

            The configuration having the video sharing capabilities for participants over the call.

      • Campaign (dict) --

        Information associated with a campaign.

        • CampaignId (string) --

          A unique identifier for a campaign.

      • AnsweringMachineDetectionStatus (string) --

        Indicates how an outbound campaign call is actually disposed if the contact is connected to Amazon Connect.

      • CustomerVoiceActivity (dict) --

        Information about customer’s voice activity.

        • GreetingStartTimestamp (datetime) --

          Timestamp that measures the beginning of the customer greeting from an outbound voice call.

        • GreetingEndTimestamp (datetime) --

          Timestamp that measures the end of the customer greeting from an outbound voice call.

      • QualityMetrics (dict) --

        Information about the quality of the participant's media connection.

        • Agent (dict) --

          Information about the quality of Agent media connection.

          • Audio (dict) --

            Information about the audio quality of the Agent

            • QualityScore (float) --

              Number measuring the estimated quality of the media connection.

            • PotentialQualityIssues (list) --

              List of potential issues causing degradation of quality on a media connection. If the service did not detect any potential quality issues the list is empty.

              Valid values: HighPacketLoss | HighRoundTripTime | HighJitterBuffer

              • (string) --

        • Customer (dict) --

          Information about the quality of Customer media connection.

          • Audio (dict) --

            Information about the audio quality of the Customer

            • QualityScore (float) --

              Number measuring the estimated quality of the media connection.

            • PotentialQualityIssues (list) --

              List of potential issues causing degradation of quality on a media connection. If the service did not detect any potential quality issues the list is empty.

              Valid values: HighPacketLoss | HighRoundTripTime | HighJitterBuffer

              • (string) --

      • DisconnectDetails (dict) --

        Information about the call disconnect experience.

        • PotentialDisconnectIssue (string) --

          Indicates the potential disconnection issues for a call. This field is not populated if the service does not detect potential issues.

      • SegmentAttributes (dict) --

        A set of system defined key-value pairs stored on individual contact segments using an attribute map. The attributes are standard Amazon Connect attributes and can be accessed in flows. Attribute keys can include only alphanumeric, -, and _ characters. This field can be used to show channel subtype. For example, connect:Guide or connect:SMS.

        • (string) --

          • (dict) --

            A value for a segment attribute. This is structured as a map where the key is valueString and the value is a string.

            • ValueString (string) --

              The value of a segment attribute.