{
  "version": "2.0",
  "service": "<ul> <li> <p> <a href=\"https://docs.aws.amazon.com/connect/latest/APIReference/API_Operations_Amazon_Connect_Contact_Lens.html\">Contact Lens actions</a> </p> </li> <li> <p> <a href=\"https://docs.aws.amazon.com/connect/latest/APIReference/API_Types_Amazon_Connect_Contact_Lens.html\">Contact Lens data types</a> </p> </li> </ul> <p>Amazon Connect Contact Lens enables you to analyze conversations between customer and agents, by using speech transcription, natural language processing, and intelligent search capabilities. It performs sentiment analysis, detects issues, and enables you to automatically categorize contacts.</p> <p>Amazon Connect Contact Lens provides both real-time and post-call analytics of customer-agent conversations. For more information, see <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/analyze-conversations.html\">Analyze conversations using speech analytics</a> in the <i>Amazon Connect Administrator Guide</i>. </p>",
  "operations": {
    "ListRealtimeContactAnalysisSegments": "<p>Provides a list of analysis segments for a real-time analysis session.</p>"
  },
  "shapes": {
    "AccessDeniedException": {
      "base": "<p>You do not have sufficient access to perform this action.</p>",
      "refs": {}
    },
    "Categories": {
      "base": "<p>Provides the category rules that are used to automatically categorize contacts based on uttered keywords and phrases.</p>",
      "refs": {
        "RealtimeContactAnalysisSegment$Categories": "<p>The matched category rules.</p>"
      }
    },
    "CategoryDetails": {
      "base": "<p>Provides information about the category rule that was matched.</p>",
      "refs": {
        "MatchedDetails$value": null
      }
    },
    "CategoryName": {
      "base": null,
      "refs": {
        "MatchedCategories$member": null,
        "MatchedDetails$key": null
      }
    },
    "CharacterOffset": {
      "base": null,
      "refs": {
        "CharacterOffsets$BeginOffsetChar": "<p>The beginning of the issue.</p>",
        "CharacterOffsets$EndOffsetChar": "<p>The end of the issue.</p>"
      }
    },
    "CharacterOffsets": {
      "base": "<p>For characters that were detected as issues, where they occur in the transcript.</p>",
      "refs": {
        "IssueDetected$CharacterOffsets": "<p>The offset for when the issue was detected in the segment.</p>"
      }
    },
    "ContactId": {
      "base": null,
      "refs": {
        "ListRealtimeContactAnalysisSegmentsRequest$ContactId": "<p>The identifier of the contact.</p>"
      }
    },
    "InstanceId": {
      "base": null,
      "refs": {
        "ListRealtimeContactAnalysisSegmentsRequest$InstanceId": "<p>The identifier of the Amazon Connect instance.</p>"
      }
    },
    "InternalServiceException": {
      "base": "<p>Request processing failed due to an error or failure with the service.</p>",
      "refs": {}
    },
    "InvalidRequestException": {
      "base": "<p>The request is not valid.</p>",
      "refs": {}
    },
    "IssueDetected": {
      "base": "<p>Potential issues that are detected based on an artificial intelligence analysis of each turn in the conversation.</p>",
      "refs": {
        "IssuesDetected$member": null
      }
    },
    "IssuesDetected": {
      "base": null,
      "refs": {
        "Transcript$IssuesDetected": "<p>List of positions where issues were detected on the transcript.</p>"
      }
    },
    "ListRealtimeContactAnalysisSegmentsRequest": {
      "base": null,
      "refs": {}
    },
    "ListRealtimeContactAnalysisSegmentsResponse": {
      "base": null,
      "refs": {}
    },
    "MatchedCategories": {
      "base": null,
      "refs": {
        "Categories$MatchedCategories": "<p>The category rules that have been matched in the analyzed segment.</p>"
      }
    },
    "MatchedDetails": {
      "base": null,
      "refs": {
        "Categories$MatchedDetails": "<p>The category rule that was matched and when it occurred in the transcript.</p>"
      }
    },
    "MaxResults": {
      "base": null,
      "refs": {
        "ListRealtimeContactAnalysisSegmentsRequest$MaxResults": "<p>The maximum number of results to return per page.</p>"
      }
    },
    "Message": {
      "base": null,
      "refs": {
        "AccessDeniedException$Message": null,
        "InternalServiceException$Message": null,
        "InvalidRequestException$Message": null,
        "ResourceNotFoundException$Message": null,
        "ThrottlingException$Message": null
      }
    },
    "NextToken": {
      "base": null,
      "refs": {
        "ListRealtimeContactAnalysisSegmentsRequest$NextToken": "<p>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.</p>",
        "ListRealtimeContactAnalysisSegmentsResponse$NextToken": "<p>If there are additional results, this is the token for the next set of results. If response includes <code>nextToken</code> there are two possible scenarios:</p> <ul> <li> <p>There are more segments so another call is required to get them.</p> </li> <li> <p>There are no more segments at this time, but more may be available later (real-time analysis is in progress) so the client should call the operation again to get new segments.</p> </li> </ul> <p>If response does not include <code>nextToken</code>, the analysis is completed (successfully or failed) and there are no more segments to retrieve.</p>"
      }
    },
    "OffsetMillis": {
      "base": null,
      "refs": {
        "PointOfInterest$BeginOffsetMillis": "<p>The beginning offset in milliseconds where the category rule was detected.</p>",
        "PointOfInterest$EndOffsetMillis": "<p>The ending offset in milliseconds where the category rule was detected.</p>",
        "Transcript$BeginOffsetMillis": "<p>The beginning offset in the contact for this transcript.</p>",
        "Transcript$EndOffsetMillis": "<p>The end offset in the contact for this transcript.</p>"
      }
    },
    "ParticipantId": {
      "base": null,
      "refs": {
        "Transcript$ParticipantId": "<p>The identifier of the participant. Valid values are CUSTOMER or AGENT.</p>"
      }
    },
    "ParticipantRole": {
      "base": null,
      "refs": {
        "Transcript$ParticipantRole": "<p>The role of participant. For example, is it a customer, agent, or system.</p>"
      }
    },
    "PointOfInterest": {
      "base": "<p>The section of the contact audio where that category rule was detected.</p>",
      "refs": {
        "PointsOfInterest$member": null
      }
    },
    "PointsOfInterest": {
      "base": null,
      "refs": {
        "CategoryDetails$PointsOfInterest": "<p>The section of audio where the category rule was detected.</p>"
      }
    },
    "PostContactSummary": {
      "base": "<p>Information about the post-contact summary.</p>",
      "refs": {
        "RealtimeContactAnalysisSegment$PostContactSummary": "<p>Information about the post-contact summary.</p>"
      }
    },
    "PostContactSummaryContent": {
      "base": null,
      "refs": {
        "PostContactSummary$Content": "<p>The content of the summary.</p>"
      }
    },
    "PostContactSummaryFailureCode": {
      "base": null,
      "refs": {
        "PostContactSummary$FailureCode": "<p>If the summary failed to be generated, one of the following failure codes occurs:</p> <ul> <li> <p> <code>QUOTA_EXCEEDED</code>: The number of concurrent analytics jobs reached your service quota.</p> </li> <li> <p> <code>INSUFFICIENT_CONVERSATION_CONTENT</code>: The conversation needs to have at least one turn from both the participants in order to generate the summary.</p> </li> <li> <p> <code>FAILED_SAFETY_GUIDELINES</code>: The generated summary cannot be provided because it failed to meet system safety guidelines.</p> </li> <li> <p> <code>INVALID_ANALYSIS_CONFIGURATION</code>: This code occurs when, for example, you're using a <a href=\"https://docs.aws.amazon.com/connect/latest/adminguide/supported-languages.html#supported-languages-contact-lens\">language</a> that isn't supported by generative AI-powered post-contact summaries. </p> </li> <li> <p> <code>INTERNAL_ERROR</code>: Internal system error.</p> </li> </ul>"
      }
    },
    "PostContactSummaryStatus": {
      "base": null,
      "refs": {
        "PostContactSummary$Status": "<p>Whether the summary was successfully COMPLETED or FAILED to be generated.</p>"
      }
    },
    "RealtimeContactAnalysisSegment": {
      "base": "<p>An analyzed segment for a real-time analysis session.</p>",
      "refs": {
        "RealtimeContactAnalysisSegments$member": null
      }
    },
    "RealtimeContactAnalysisSegments": {
      "base": null,
      "refs": {
        "ListRealtimeContactAnalysisSegmentsResponse$Segments": "<p>An analyzed transcript or category.</p>"
      }
    },
    "ResourceNotFoundException": {
      "base": "<p>The specified resource was not found.</p>",
      "refs": {}
    },
    "SentimentValue": {
      "base": null,
      "refs": {
        "Transcript$Sentiment": "<p>The sentiment detected for this piece of transcript.</p>"
      }
    },
    "ThrottlingException": {
      "base": "<p>The throttling limit has been exceeded.</p>",
      "refs": {}
    },
    "Transcript": {
      "base": "<p>A list of messages in the session.</p>",
      "refs": {
        "RealtimeContactAnalysisSegment$Transcript": "<p>The analyzed transcript.</p>"
      }
    },
    "TranscriptContent": {
      "base": null,
      "refs": {
        "Transcript$Content": "<p>The content of the transcript.</p>"
      }
    },
    "TranscriptId": {
      "base": null,
      "refs": {
        "Transcript$Id": "<p>The identifier of the transcript.</p>"
      }
    }
  }
}
