DescribeContact
This API is in preview release for Amazon Connect and is subject to change.
Describes the specified contact.
Use cases
Following are common uses cases for this API:
-
Retrieve contact information such as the caller's phone number and the specific number the caller dialed to integrate into custom monitoring or custom agent experience solutions.
-
Detect when a customer chat session disconnects due to a network issue on the agent's end. Use the DisconnectReason field in the ContactTraceRecord to detect this event and then re-queue the chat for followup.
-
Identify after contact work (ACW) duration and call recordings information when a COMPLETED event is received by using the contact event stream.
Important things to know
-
SystemEndpoint
is not populated for contacts with initiation method of MONITOR, QUEUE_TRANSFER, or CALLBACK -
Contact information remains available in Amazon Connect for 24 months from the
InitiationTimestamp
, and then it is deleted. Only contact information that is available in Amazon Connect is returned by this API.
Endpoints: See Amazon Connect endpoints and quotas.
Request Syntax
GET /contacts/InstanceId
/ContactId
HTTP/1.1
URI Request Parameters
The request uses the following URI parameters.
- ContactId
-
The identifier of the contact.
Length Constraints: Minimum length of 1. Maximum length of 256.
Required: Yes
- InstanceId
-
The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.
Length Constraints: Minimum length of 1. Maximum length of 100.
Required: Yes
Request Body
The request does not have a request body.
Response Syntax
HTTP/1.1 200
Content-type: application/json
{
"Contact": {
"AdditionalEmailRecipients": {
"CcList": [
{
"Address": "string",
"DisplayName": "string"
}
],
"ToList": [
{
"Address": "string",
"DisplayName": "string"
}
]
},
"AgentInfo": {
"AfterContactWorkDuration": number,
"AfterContactWorkEndTimestamp": number,
"AfterContactWorkStartTimestamp": number,
"AgentInitiatedHoldDuration": number,
"AgentPauseDurationInSeconds": number,
"Capabilities": {
"ScreenShare": "string",
"Video": "string"
},
"ConnectedToAgentTimestamp": number,
"DeviceInfo": {
"OperatingSystem": "string",
"PlatformName": "string",
"PlatformVersion": "string"
},
"HierarchyGroups": {
"Level1": {
"Arn": "string"
},
"Level2": {
"Arn": "string"
},
"Level3": {
"Arn": "string"
},
"Level4": {
"Arn": "string"
},
"Level5": {
"Arn": "string"
}
},
"Id": "string",
"StateTransitions": [
{
"State": "string",
"StateEndTimestamp": number,
"StateStartTimestamp": number
}
]
},
"AnsweringMachineDetectionStatus": "string",
"Arn": "string",
"Attributes": {
"string" : "string"
},
"Campaign": {
"CampaignId": "string"
},
"Channel": "string",
"ChatMetrics": {
"AgentMetrics": {
"ConversationAbandon": boolean,
"LastMessageTimestamp": number,
"MaxResponseTimeInMillis": number,
"MessageLengthInChars": number,
"MessagesSent": number,
"NumResponses": number,
"ParticipantId": "string",
"ParticipantType": "string",
"TotalResponseTimeInMillis": number
},
"ChatContactMetrics": {
"AgentFirstResponseTimeInMillis": number,
"AgentFirstResponseTimestamp": number,
"ConversationCloseTimeInMillis": number,
"ConversationTurnCount": number,
"MultiParty": boolean,
"TotalBotMessageLengthInChars": number,
"TotalBotMessages": number,
"TotalMessages": number
},
"CustomerMetrics": {
"ConversationAbandon": boolean,
"LastMessageTimestamp": number,
"MaxResponseTimeInMillis": number,
"MessageLengthInChars": number,
"MessagesSent": number,
"NumResponses": number,
"ParticipantId": "string",
"ParticipantType": "string",
"TotalResponseTimeInMillis": number
}
},
"ConnectedToSystemTimestamp": number,
"ContactAssociationId": "string",
"ContactDetails": {
"Description": "string",
"Name": "string"
},
"ContactEvaluations": {
"string" : {
"DeleteTimestamp": number,
"EndTimestamp": number,
"EvaluationArn": "string",
"ExportLocation": "string",
"FormId": "string",
"StartTimestamp": number,
"Status": "string"
}
},
"Customer": {
"Capabilities": {
"ScreenShare": "string",
"Video": "string"
},
"DeviceInfo": {
"OperatingSystem": "string",
"PlatformName": "string",
"PlatformVersion": "string"
}
},
"CustomerEndpoint": {
"Address": "string",
"DisplayName": "string",
"Type": "string"
},
"CustomerId": "string",
"CustomerVoiceActivity": {
"GreetingEndTimestamp": number,
"GreetingStartTimestamp": number
},
"Description": "string",
"DisconnectDetails": {
"PotentialDisconnectIssue": "string"
},
"DisconnectReason": "string",
"DisconnectTimestamp": number,
"Id": "string",
"InitialContactId": "string",
"InitiationMethod": "string",
"InitiationTimestamp": number,
"LastPausedTimestamp": number,
"LastResumedTimestamp": number,
"LastUpdateTimestamp": number,
"Name": "string",
"PreviousContactId": "string",
"QualityMetrics": {
"Agent": {
"Audio": {
"PotentialQualityIssues": [ "string" ],
"QualityScore": number
}
},
"Customer": {
"Audio": {
"PotentialQualityIssues": [ "string" ],
"QualityScore": number
}
}
},
"QueueInfo": {
"EnqueueTimestamp": number,
"Id": "string"
},
"QueuePriority": number,
"QueueTimeAdjustmentSeconds": number,
"Recordings": [
{
"DeletionReason": "string",
"FragmentStartNumber": "string",
"FragmentStopNumber": "string",
"Location": "string",
"MediaStreamType": "string",
"ParticipantType": "string",
"StartTimestamp": number,
"Status": "string",
"StopTimestamp": number,
"StorageType": "string"
}
],
"RelatedContactId": "string",
"RoutingCriteria": {
"ActivationTimestamp": number,
"Index": number,
"Steps": [
{
"Expiry": {
"DurationInSeconds": number,
"ExpiryTimestamp": number
},
"Expression": {
"AndExpression": [
"Expression"
],
"AttributeCondition": {
"ComparisonOperator": "string",
"MatchCriteria": {
"AgentsCriteria": {
"AgentIds": [ "string" ]
}
},
"Name": "string",
"ProficiencyLevel": number,
"Range": {
"MaxProficiencyLevel": number,
"MinProficiencyLevel": number
},
"Value": "string"
},
"NotAttributeCondition": {
"ComparisonOperator": "string",
"MatchCriteria": {
"AgentsCriteria": {
"AgentIds": [ "string" ]
}
},
"Name": "string",
"ProficiencyLevel": number,
"Range": {
"MaxProficiencyLevel": number,
"MinProficiencyLevel": number
},
"Value": "string"
},
"OrExpression": [
"Expression"
]
},
"Status": "string"
}
]
},
"ScheduledTimestamp": number,
"SegmentAttributes": {
"string" : {
"ValueArn": "string",
"ValueInteger": number,
"ValueList": [
"SegmentAttributeValue"
],
"ValueMap": {
"string" : "SegmentAttributeValue"
},
"ValueString": "string"
}
},
"SystemEndpoint": {
"Address": "string",
"DisplayName": "string",
"Type": "string"
},
"Tags": {
"string" : "string"
},
"TotalPauseCount": number,
"TotalPauseDurationInSeconds": number,
"WisdomInfo": {
"SessionArn": "string"
}
}
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
Errors
For information about the errors that are common to all actions, see Common Errors.
- InternalServiceException
-
Request processing failed because of an error or failure with the service.
- Message
-
The message.
HTTP Status Code: 500
- InvalidParameterException
-
One or more of the specified parameters are not valid.
- Message
-
The message about the parameters.
HTTP Status Code: 400
- InvalidRequestException
-
The request is not valid.
- Message
-
The message about the request.
- Reason
-
Reason why the request was invalid.
HTTP Status Code: 400
- ResourceNotFoundException
-
The specified resource was not found.
- Message
-
The message about the resource.
HTTP Status Code: 404
- ThrottlingException
-
The throttling limit has been exceeded.
HTTP Status Code: 429
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: