2024/04/29 - Amazon Transcribe Service - 3 updated api methods
Changes This update provides error messaging for generative call summarization in Transcribe Call Analytics
{'CallAnalyticsJob': {'CallAnalyticsJobDetails': {'Skipped': [{'Feature': 'GENERATIVE_SUMMARIZATION', 'Message': 'string', 'ReasonCode': 'INSUFFICIENT_CONVERSATION_CONTENT ' '| ' 'FAILED_SAFETY_GUIDELINES'}]}}}
Provides information about the specified Call Analytics job.
To view the job's status, refer to CallAnalyticsJobStatus. If the status is COMPLETED, the job is finished. You can find your completed transcript at the URI specified in TranscriptFileUri. If the status is FAILED, FailureReason provides details on why your transcription job failed.
If you enabled personally identifiable information (PII) redaction, the redacted transcript appears at the location specified in RedactedTranscriptFileUri.
If you chose to redact the audio in your media file, you can find your redacted media file at the location specified in RedactedMediaFileUri.
To get a list of your Call Analytics jobs, use the operation.
See also: AWS API Documentation
Request Syntax
client.get_call_analytics_job( CallAnalyticsJobName='string' )
string
[REQUIRED]
The name of the Call Analytics job you want information about. Job names are case sensitive.
dict
Response Syntax
{ 'CallAnalyticsJob': { 'CallAnalyticsJobName': 'string', 'CallAnalyticsJobStatus': 'QUEUED'|'IN_PROGRESS'|'FAILED'|'COMPLETED', 'CallAnalyticsJobDetails': { 'Skipped': [ { 'Feature': 'GENERATIVE_SUMMARIZATION', 'ReasonCode': 'INSUFFICIENT_CONVERSATION_CONTENT'|'FAILED_SAFETY_GUIDELINES', 'Message': 'string' }, ] }, 'LanguageCode': 'af-ZA'|'ar-AE'|'ar-SA'|'da-DK'|'de-CH'|'de-DE'|'en-AB'|'en-AU'|'en-GB'|'en-IE'|'en-IN'|'en-US'|'en-WL'|'es-ES'|'es-US'|'fa-IR'|'fr-CA'|'fr-FR'|'he-IL'|'hi-IN'|'id-ID'|'it-IT'|'ja-JP'|'ko-KR'|'ms-MY'|'nl-NL'|'pt-BR'|'pt-PT'|'ru-RU'|'ta-IN'|'te-IN'|'tr-TR'|'zh-CN'|'zh-TW'|'th-TH'|'en-ZA'|'en-NZ'|'vi-VN'|'sv-SE'|'ab-GE'|'ast-ES'|'az-AZ'|'ba-RU'|'be-BY'|'bg-BG'|'bn-IN'|'bs-BA'|'ca-ES'|'ckb-IQ'|'ckb-IR'|'cs-CZ'|'cy-WL'|'el-GR'|'et-ET'|'eu-ES'|'fi-FI'|'gl-ES'|'gu-IN'|'ha-NG'|'hr-HR'|'hu-HU'|'hy-AM'|'is-IS'|'ka-GE'|'kab-DZ'|'kk-KZ'|'kn-IN'|'ky-KG'|'lg-IN'|'lt-LT'|'lv-LV'|'mhr-RU'|'mi-NZ'|'mk-MK'|'ml-IN'|'mn-MN'|'mr-IN'|'mt-MT'|'no-NO'|'or-IN'|'pa-IN'|'pl-PL'|'ps-AF'|'ro-RO'|'rw-RW'|'si-LK'|'sk-SK'|'sl-SI'|'so-SO'|'sr-RS'|'su-ID'|'sw-BI'|'sw-KE'|'sw-RW'|'sw-TZ'|'sw-UG'|'tl-PH'|'tt-RU'|'ug-CN'|'uk-UA'|'uz-UZ'|'wo-SN'|'zu-ZA', 'MediaSampleRateHertz': 123, 'MediaFormat': 'mp3'|'mp4'|'wav'|'flac'|'ogg'|'amr'|'webm'|'m4a', 'Media': { 'MediaFileUri': 'string', 'RedactedMediaFileUri': 'string' }, 'Transcript': { 'TranscriptFileUri': 'string', 'RedactedTranscriptFileUri': 'string' }, 'StartTime': datetime(2015, 1, 1), 'CreationTime': datetime(2015, 1, 1), 'CompletionTime': datetime(2015, 1, 1), 'FailureReason': 'string', 'DataAccessRoleArn': 'string', 'IdentifiedLanguageScore': ..., 'Settings': { 'VocabularyName': 'string', 'VocabularyFilterName': 'string', 'VocabularyFilterMethod': 'remove'|'mask'|'tag', 'LanguageModelName': 'string', 'ContentRedaction': { 'RedactionType': 'PII', 'RedactionOutput': 'redacted'|'redacted_and_unredacted', 'PiiEntityTypes': [ 'BANK_ACCOUNT_NUMBER'|'BANK_ROUTING'|'CREDIT_DEBIT_NUMBER'|'CREDIT_DEBIT_CVV'|'CREDIT_DEBIT_EXPIRY'|'PIN'|'EMAIL'|'ADDRESS'|'NAME'|'PHONE'|'SSN'|'ALL', ] }, 'LanguageOptions': [ 'af-ZA'|'ar-AE'|'ar-SA'|'da-DK'|'de-CH'|'de-DE'|'en-AB'|'en-AU'|'en-GB'|'en-IE'|'en-IN'|'en-US'|'en-WL'|'es-ES'|'es-US'|'fa-IR'|'fr-CA'|'fr-FR'|'he-IL'|'hi-IN'|'id-ID'|'it-IT'|'ja-JP'|'ko-KR'|'ms-MY'|'nl-NL'|'pt-BR'|'pt-PT'|'ru-RU'|'ta-IN'|'te-IN'|'tr-TR'|'zh-CN'|'zh-TW'|'th-TH'|'en-ZA'|'en-NZ'|'vi-VN'|'sv-SE'|'ab-GE'|'ast-ES'|'az-AZ'|'ba-RU'|'be-BY'|'bg-BG'|'bn-IN'|'bs-BA'|'ca-ES'|'ckb-IQ'|'ckb-IR'|'cs-CZ'|'cy-WL'|'el-GR'|'et-ET'|'eu-ES'|'fi-FI'|'gl-ES'|'gu-IN'|'ha-NG'|'hr-HR'|'hu-HU'|'hy-AM'|'is-IS'|'ka-GE'|'kab-DZ'|'kk-KZ'|'kn-IN'|'ky-KG'|'lg-IN'|'lt-LT'|'lv-LV'|'mhr-RU'|'mi-NZ'|'mk-MK'|'ml-IN'|'mn-MN'|'mr-IN'|'mt-MT'|'no-NO'|'or-IN'|'pa-IN'|'pl-PL'|'ps-AF'|'ro-RO'|'rw-RW'|'si-LK'|'sk-SK'|'sl-SI'|'so-SO'|'sr-RS'|'su-ID'|'sw-BI'|'sw-KE'|'sw-RW'|'sw-TZ'|'sw-UG'|'tl-PH'|'tt-RU'|'ug-CN'|'uk-UA'|'uz-UZ'|'wo-SN'|'zu-ZA', ], 'LanguageIdSettings': { 'string': { 'VocabularyName': 'string', 'VocabularyFilterName': 'string', 'LanguageModelName': 'string' } }, 'Summarization': { 'GenerateAbstractiveSummary': True|False } }, 'ChannelDefinitions': [ { 'ChannelId': 123, 'ParticipantRole': 'AGENT'|'CUSTOMER' }, ] } }
Response Structure
(dict) --
CallAnalyticsJob (dict) --
Provides detailed information about the specified Call Analytics job, including job status and, if applicable, failure reason.
CallAnalyticsJobName (string) --
The name of the Call Analytics job. Job names are case sensitive and must be unique within an Amazon Web Services account.
CallAnalyticsJobStatus (string) --
Provides the status of the specified Call Analytics job.
If the status is COMPLETED, the job is finished and you can find the results at the location specified in TranscriptFileUri (or RedactedTranscriptFileUri, if you requested transcript redaction). If the status is FAILED, FailureReason provides details on why your transcription job failed.
CallAnalyticsJobDetails (dict) --
Provides detailed information about a call analytics job, including information about skipped analytics features.
Skipped (list) --
Contains information about any skipped analytics features during the analysis of a call analytics job.
This array lists all the analytics features that were skipped, along with their corresponding reason code and message.
(dict) --
Represents a skipped analytics feature during the analysis of a call analytics job.
The Feature field indicates the type of analytics feature that was skipped.
The Message field contains additional information or a message explaining why the analytics feature was skipped.
The ReasonCode field provides a code indicating the reason why the analytics feature was skipped.
Feature (string) --
Indicates the type of analytics feature that was skipped during the analysis of a call analytics job.
ReasonCode (string) --
Provides a code indicating the reason why a specific analytics feature was skipped during the analysis of a call analytics job.
Message (string) --
Contains additional information or a message explaining why a specific analytics feature was skipped during the analysis of a call analytics job.
LanguageCode (string) --
The language code used to create your Call Analytics job. For a list of supported languages and their associated language codes, refer to the Supported languages table.
If you do not know the language spoken in your media file, you can omit this field and let Amazon Transcribe automatically identify the language of your media. To improve the accuracy of language identification, you can include several language codes and Amazon Transcribe chooses the closest match for your transcription.
MediaSampleRateHertz (integer) --
The sample rate, in hertz, of the audio track in your input media file.
MediaFormat (string) --
The format of the input media file.
Media (dict) --
Provides the Amazon S3 location of the media file you used in your Call Analytics request.
MediaFileUri (string) --
The Amazon S3 location of the media file you want to transcribe. For example:
s3://DOC-EXAMPLE-BUCKET/my-media-file.flac
s3://DOC-EXAMPLE-BUCKET/media-files/my-media-file.flac
Note that the Amazon S3 bucket that contains your input media must be located in the same Amazon Web Services Region where you're making your transcription request.
RedactedMediaFileUri (string) --
The Amazon S3 location of the media file you want to redact. For example:
s3://DOC-EXAMPLE-BUCKET/my-media-file.flac
s3://DOC-EXAMPLE-BUCKET/media-files/my-media-file.flac
Note that the Amazon S3 bucket that contains your input media must be located in the same Amazon Web Services Region where you're making your transcription request.
Transcript (dict) --
Provides you with the Amazon S3 URI you can use to access your transcript.
TranscriptFileUri (string) --
The Amazon S3 location of your transcript. You can use this URI to access or download your transcript.
If you included OutputBucketName in your transcription job request, this is the URI of that bucket. If you also included OutputKey in your request, your output is located in the path you specified in your request.
If you didn't include OutputBucketName in your transcription job request, your transcript is stored in a service-managed bucket, and TranscriptFileUri provides you with a temporary URI you can use for secure access to your transcript.
RedactedTranscriptFileUri (string) --
The Amazon S3 location of your redacted transcript. You can use this URI to access or download your transcript.
If you included OutputBucketName in your transcription job request, this is the URI of that bucket. If you also included OutputKey in your request, your output is located in the path you specified in your request.
If you didn't include OutputBucketName in your transcription job request, your transcript is stored in a service-managed bucket, and RedactedTranscriptFileUri provides you with a temporary URI you can use for secure access to your transcript.
StartTime (datetime) --
The date and time the specified Call Analytics job began processing.
Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.789000-07:00 represents a transcription job that started processing at 12:32 PM UTC-7 on May 4, 2022.
CreationTime (datetime) --
The date and time the specified Call Analytics job request was made.
Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.761000-07:00 represents a transcription job that started processing at 12:32 PM UTC-7 on May 4, 2022.
CompletionTime (datetime) --
The date and time the specified Call Analytics job finished processing.
Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:33:13.922000-07:00 represents a transcription job that started processing at 12:33 PM UTC-7 on May 4, 2022.
FailureReason (string) --
If CallAnalyticsJobStatus is FAILED, FailureReason contains information about why the Call Analytics job request failed.
The FailureReason field contains one of the following values:
Unsupported media format. The media format specified in MediaFormat isn't valid. Refer to refer to the MediaFormat parameter for a list of supported formats.
The media format provided does not match the detected media format. The media format specified in MediaFormat doesn't match the format of the input file. Check the media format of your media file and correct the specified value.
Invalid sample rate for audio file. The sample rate specified in MediaSampleRateHertz isn't valid. The sample rate must be between 8,000 and 48,000 hertz.
The sample rate provided does not match the detected sample rate. The sample rate specified in MediaSampleRateHertz doesn't match the sample rate detected in your input media file. Check the sample rate of your media file and correct the specified value.
Invalid file size: file size too large. The size of your media file is larger than what Amazon Transcribe can process. For more information, refer to Service quotas.
Invalid number of channels: number of channels too large. Your audio contains more channels than Amazon Transcribe is able to process. For more information, refer to Service quotas.
DataAccessRoleArn (string) --
The Amazon Resource Name (ARN) you included in your request.
IdentifiedLanguageScore (float) --
The confidence score associated with the language identified in your media file.
Confidence scores are values between 0 and 1; a larger value indicates a higher probability that the identified language correctly matches the language spoken in your media.
Settings (dict) --
Provides information on any additional settings that were included in your request. Additional settings include content redaction and language identification settings.
VocabularyName (string) --
The name of the custom vocabulary you want to include in your Call Analytics transcription request. Custom vocabulary names are case sensitive.
VocabularyFilterName (string) --
The name of the custom vocabulary filter you want to include in your Call Analytics transcription request. Custom vocabulary filter names are case sensitive.
Note that if you include VocabularyFilterName in your request, you must also include VocabularyFilterMethod.
VocabularyFilterMethod (string) --
Specify how you want your custom vocabulary filter applied to your transcript.
To replace words with ***, choose mask.
To delete words, choose remove.
To flag words without changing them, choose tag.
LanguageModelName (string) --
The name of the custom language model you want to use when processing your Call Analytics job. Note that custom language model names are case sensitive.
The language of the specified custom language model must match the language code that you specify in your transcription request. If the languages do not match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch.
ContentRedaction (dict) --
Makes it possible to redact or flag specified personally identifiable information (PII) in your transcript. If you use ContentRedaction, you must also include the sub-parameters: RedactionOutput and RedactionType. You can optionally include PiiEntityTypes to choose which types of PII you want to redact.
RedactionType (string) --
Specify the category of information you want to redact; PII (personally identifiable information) is the only valid value. You can use PiiEntityTypes to choose which types of PII you want to redact. If you do not include PiiEntityTypes in your request, all PII is redacted.
RedactionOutput (string) --
Specify if you want only a redacted transcript, or if you want a redacted and an unredacted transcript.
When you choose redacted Amazon Transcribe creates only a redacted transcript.
When you choose redacted_and_unredacted Amazon Transcribe creates a redacted and an unredacted transcript (as two separate files).
PiiEntityTypes (list) --
Specify which types of personally identifiable information (PII) you want to redact in your transcript. You can include as many types as you'd like, or you can select ALL. If you do not include PiiEntityTypes in your request, all PII is redacted.
(string) --
LanguageOptions (list) --
You can specify two or more language codes that represent the languages you think may be present in your media. Including more than five is not recommended. If you're unsure what languages are present, do not include this parameter.
Including language options can improve the accuracy of language identification.
For a list of languages supported with Call Analytics, refer to the Supported languages table.
To transcribe speech in Modern Standard Arabic ( ar-SA), your media file must be encoded at a sample rate of 16,000 Hz or higher.
(string) --
LanguageIdSettings (dict) --
If using automatic language identification in your request and you want to apply a custom language model, a custom vocabulary, or a custom vocabulary filter, include LanguageIdSettings with the relevant sub-parameters ( VocabularyName, LanguageModelName, and VocabularyFilterName).
LanguageIdSettings supports two to five language codes. Each language code you include can have an associated custom language model, custom vocabulary, and custom vocabulary filter. The language codes that you specify must match the languages of the associated custom language models, custom vocabularies, and custom vocabulary filters.
It's recommended that you include LanguageOptions when using LanguageIdSettings to ensure that the correct language dialect is identified. For example, if you specify a custom vocabulary that is in en-US but Amazon Transcribe determines that the language spoken in your media is en-AU, your custom vocabulary is not applied to your transcription. If you include LanguageOptions and include en-US as the only English language dialect, your custom vocabulary is applied to your transcription.
If you want to include a custom language model, custom vocabulary, or custom vocabulary filter with your request but do not want to use automatic language identification, use instead the parameter with the LanguageModelName, VocabularyName, or VocabularyFilterName sub-parameters.
For a list of languages supported with Call Analytics, refer to Supported languages and language-specific features.
(string) --
(dict) --
If using automatic language identification in your request and you want to apply a custom language model, a custom vocabulary, or a custom vocabulary filter, include LanguageIdSettings with the relevant sub-parameters ( VocabularyName, LanguageModelName, and VocabularyFilterName). Note that multi-language identification ( IdentifyMultipleLanguages) doesn't support custom language models.
LanguageIdSettings supports two to five language codes. Each language code you include can have an associated custom language model, custom vocabulary, and custom vocabulary filter. The language codes that you specify must match the languages of the associated custom language models, custom vocabularies, and custom vocabulary filters.
It's recommended that you include LanguageOptions when using LanguageIdSettings to ensure that the correct language dialect is identified. For example, if you specify a custom vocabulary that is in en-US but Amazon Transcribe determines that the language spoken in your media is en-AU, your custom vocabulary is not applied to your transcription. If you include LanguageOptions and include en-US as the only English language dialect, your custom vocabulary is applied to your transcription.
If you want to include a custom language model with your request but do not want to use automatic language identification, use instead the parameter with the LanguageModelName sub-parameter. If you want to include a custom vocabulary or a custom vocabulary filter (or both) with your request but do not want to use automatic language identification, use instead the parameter with the VocabularyName or VocabularyFilterName (or both) sub-parameter.
VocabularyName (string) --
The name of the custom vocabulary you want to use when processing your transcription job. Custom vocabulary names are case sensitive.
The language of the specified custom vocabulary must match the language code that you specify in your transcription request. If the languages do not match, the custom vocabulary isn't applied. There are no errors or warnings associated with a language mismatch.
VocabularyFilterName (string) --
The name of the custom vocabulary filter you want to use when processing your transcription job. Custom vocabulary filter names are case sensitive.
The language of the specified custom vocabulary filter must match the language code that you specify in your transcription request. If the languages do not match, the custom vocabulary filter isn't applied. There are no errors or warnings associated with a language mismatch.
Note that if you include VocabularyFilterName in your request, you must also include VocabularyFilterMethod.
LanguageModelName (string) --
The name of the custom language model you want to use when processing your transcription job. Note that custom language model names are case sensitive.
The language of the specified custom language model must match the language code that you specify in your transcription request. If the languages do not match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch.
Summarization (dict) --
Contains GenerateAbstractiveSummary, which is a required parameter if you want to enable Generative call summarization in your Call Analytics request.
GenerateAbstractiveSummary (boolean) --
Enables Generative call summarization in your Call Analytics request
Generative call summarization provides a summary of the transcript including important components discussed in the conversation.
For more information, see Enabling generative call summarization.
ChannelDefinitions (list) --
Indicates which speaker is on which channel.
(dict) --
Makes it possible to specify which speaker is on which channel. For example, if your agent is the first participant to speak, you would set ChannelId to 0 (to indicate the first channel) and ParticipantRole to AGENT (to indicate that it's the agent speaking).
ChannelId (integer) --
Specify the audio channel you want to define.
ParticipantRole (string) --
Specify the speaker you want to define. Omitting this parameter is equivalent to specifying both participants.
{'CallAnalyticsJobSummaries': {'CallAnalyticsJobDetails': {'Skipped': [{'Feature': 'GENERATIVE_SUMMARIZATION', 'Message': 'string', 'ReasonCode': 'INSUFFICIENT_CONVERSATION_CONTENT ' '| ' 'FAILED_SAFETY_GUIDELINES'}]}}}
Provides a list of Call Analytics jobs that match the specified criteria. If no criteria are specified, all Call Analytics jobs are returned.
To get detailed information about a specific Call Analytics job, use the operation.
See also: AWS API Documentation
Request Syntax
client.list_call_analytics_jobs( Status='QUEUED'|'IN_PROGRESS'|'FAILED'|'COMPLETED', JobNameContains='string', NextToken='string', MaxResults=123 )
string
Returns only Call Analytics jobs with the specified status. Jobs are ordered by creation date, with the newest job first. If you do not include Status, all Call Analytics jobs are returned.
string
Returns only the Call Analytics jobs that contain the specified string. The search is not case sensitive.
string
If your ListCallAnalyticsJobs request returns more results than can be displayed, NextToken is displayed in the response with an associated string. To get the next page of results, copy this string and repeat your request, including NextToken with the value of the copied string. Repeat as needed to view all your results.
integer
The maximum number of Call Analytics jobs to return in each page of results. If there are fewer results than the value that you specify, only the actual results are returned. If you do not specify a value, a default of 5 is used.
dict
Response Syntax
{ 'Status': 'QUEUED'|'IN_PROGRESS'|'FAILED'|'COMPLETED', 'NextToken': 'string', 'CallAnalyticsJobSummaries': [ { 'CallAnalyticsJobName': 'string', 'CreationTime': datetime(2015, 1, 1), 'StartTime': datetime(2015, 1, 1), 'CompletionTime': datetime(2015, 1, 1), 'LanguageCode': 'af-ZA'|'ar-AE'|'ar-SA'|'da-DK'|'de-CH'|'de-DE'|'en-AB'|'en-AU'|'en-GB'|'en-IE'|'en-IN'|'en-US'|'en-WL'|'es-ES'|'es-US'|'fa-IR'|'fr-CA'|'fr-FR'|'he-IL'|'hi-IN'|'id-ID'|'it-IT'|'ja-JP'|'ko-KR'|'ms-MY'|'nl-NL'|'pt-BR'|'pt-PT'|'ru-RU'|'ta-IN'|'te-IN'|'tr-TR'|'zh-CN'|'zh-TW'|'th-TH'|'en-ZA'|'en-NZ'|'vi-VN'|'sv-SE'|'ab-GE'|'ast-ES'|'az-AZ'|'ba-RU'|'be-BY'|'bg-BG'|'bn-IN'|'bs-BA'|'ca-ES'|'ckb-IQ'|'ckb-IR'|'cs-CZ'|'cy-WL'|'el-GR'|'et-ET'|'eu-ES'|'fi-FI'|'gl-ES'|'gu-IN'|'ha-NG'|'hr-HR'|'hu-HU'|'hy-AM'|'is-IS'|'ka-GE'|'kab-DZ'|'kk-KZ'|'kn-IN'|'ky-KG'|'lg-IN'|'lt-LT'|'lv-LV'|'mhr-RU'|'mi-NZ'|'mk-MK'|'ml-IN'|'mn-MN'|'mr-IN'|'mt-MT'|'no-NO'|'or-IN'|'pa-IN'|'pl-PL'|'ps-AF'|'ro-RO'|'rw-RW'|'si-LK'|'sk-SK'|'sl-SI'|'so-SO'|'sr-RS'|'su-ID'|'sw-BI'|'sw-KE'|'sw-RW'|'sw-TZ'|'sw-UG'|'tl-PH'|'tt-RU'|'ug-CN'|'uk-UA'|'uz-UZ'|'wo-SN'|'zu-ZA', 'CallAnalyticsJobStatus': 'QUEUED'|'IN_PROGRESS'|'FAILED'|'COMPLETED', 'CallAnalyticsJobDetails': { 'Skipped': [ { 'Feature': 'GENERATIVE_SUMMARIZATION', 'ReasonCode': 'INSUFFICIENT_CONVERSATION_CONTENT'|'FAILED_SAFETY_GUIDELINES', 'Message': 'string' }, ] }, 'FailureReason': 'string' }, ] }
Response Structure
(dict) --
Status (string) --
Lists all Call Analytics jobs that have the status specified in your request. Jobs are ordered by creation date, with the newest job first.
NextToken (string) --
If NextToken is present in your response, it indicates that not all results are displayed. To view the next set of results, copy the string associated with the NextToken parameter in your results output, then run your request again including NextToken with the value of the copied string. Repeat as needed to view all your results.
CallAnalyticsJobSummaries (list) --
Provides a summary of information about each result.
(dict) --
Provides detailed information about a specific Call Analytics job.
CallAnalyticsJobName (string) --
The name of the Call Analytics job. Job names are case sensitive and must be unique within an Amazon Web Services account.
CreationTime (datetime) --
The date and time the specified Call Analytics job request was made.
Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.761000-07:00 represents a transcription job that started processing at 12:32 PM UTC-7 on May 4, 2022.
StartTime (datetime) --
The date and time your Call Analytics job began processing.
Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.789000-07:00 represents a transcription job that started processing at 12:32 PM UTC-7 on May 4, 2022.
CompletionTime (datetime) --
The date and time the specified Call Analytics job finished processing.
Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:33:13.922000-07:00 represents a transcription job that started processing at 12:33 PM UTC-7 on May 4, 2022.
LanguageCode (string) --
The language code used to create your Call Analytics transcription.
CallAnalyticsJobStatus (string) --
Provides the status of your Call Analytics job.
If the status is COMPLETED, the job is finished and you can find the results at the location specified in TranscriptFileUri (or RedactedTranscriptFileUri, if you requested transcript redaction). If the status is FAILED, FailureReason provides details on why your transcription job failed.
CallAnalyticsJobDetails (dict) --
Provides detailed information about a call analytics job, including information about skipped analytics features.
Skipped (list) --
Contains information about any skipped analytics features during the analysis of a call analytics job.
This array lists all the analytics features that were skipped, along with their corresponding reason code and message.
(dict) --
Represents a skipped analytics feature during the analysis of a call analytics job.
The Feature field indicates the type of analytics feature that was skipped.
The Message field contains additional information or a message explaining why the analytics feature was skipped.
The ReasonCode field provides a code indicating the reason why the analytics feature was skipped.
Feature (string) --
Indicates the type of analytics feature that was skipped during the analysis of a call analytics job.
ReasonCode (string) --
Provides a code indicating the reason why a specific analytics feature was skipped during the analysis of a call analytics job.
Message (string) --
Contains additional information or a message explaining why a specific analytics feature was skipped during the analysis of a call analytics job.
FailureReason (string) --
If CallAnalyticsJobStatus is FAILED, FailureReason contains information about why the Call Analytics job failed. See also: Common Errors.
{'CallAnalyticsJob': {'CallAnalyticsJobDetails': {'Skipped': [{'Feature': 'GENERATIVE_SUMMARIZATION', 'Message': 'string', 'ReasonCode': 'INSUFFICIENT_CONVERSATION_CONTENT ' '| ' 'FAILED_SAFETY_GUIDELINES'}]}}}
Transcribes the audio from a customer service call and applies any additional Request Parameters you choose to include in your request.
In addition to many standard transcription features, Call Analytics provides you with call characteristics, call summarization, speaker sentiment, and optional redaction of your text transcript and your audio file. You can also apply custom categories to flag specified conditions. To learn more about these features and insights, refer to Analyzing call center audio with Call Analytics.
If you want to apply categories to your Call Analytics job, you must create them before submitting your job request. Categories cannot be retroactively applied to a job. To create a new category, use the operation. To learn more about Call Analytics categories, see Creating categories for post-call transcriptions and Creating categories for real-time transcriptions.
To make a StartCallAnalyticsJob request, you must first upload your media file into an Amazon S3 bucket; you can then specify the Amazon S3 location of the file using the Media parameter.
Note that job queuing is enabled by default for Call Analytics jobs.
You must include the following parameters in your StartCallAnalyticsJob request:
region: The Amazon Web Services Region where you are making your request. For a list of Amazon Web Services Regions supported with Amazon Transcribe, refer to Amazon Transcribe endpoints and quotas.
CallAnalyticsJobName: A custom name that you create for your transcription job that's unique within your Amazon Web Services account.
DataAccessRoleArn: The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files.
Media ( MediaFileUri or RedactedMediaFileUri): The Amazon S3 location of your media file.
See also: AWS API Documentation
Request Syntax
client.start_call_analytics_job( CallAnalyticsJobName='string', Media={ 'MediaFileUri': 'string', 'RedactedMediaFileUri': 'string' }, OutputLocation='string', OutputEncryptionKMSKeyId='string', DataAccessRoleArn='string', Settings={ 'VocabularyName': 'string', 'VocabularyFilterName': 'string', 'VocabularyFilterMethod': 'remove'|'mask'|'tag', 'LanguageModelName': 'string', 'ContentRedaction': { 'RedactionType': 'PII', 'RedactionOutput': 'redacted'|'redacted_and_unredacted', 'PiiEntityTypes': [ 'BANK_ACCOUNT_NUMBER'|'BANK_ROUTING'|'CREDIT_DEBIT_NUMBER'|'CREDIT_DEBIT_CVV'|'CREDIT_DEBIT_EXPIRY'|'PIN'|'EMAIL'|'ADDRESS'|'NAME'|'PHONE'|'SSN'|'ALL', ] }, 'LanguageOptions': [ 'af-ZA'|'ar-AE'|'ar-SA'|'da-DK'|'de-CH'|'de-DE'|'en-AB'|'en-AU'|'en-GB'|'en-IE'|'en-IN'|'en-US'|'en-WL'|'es-ES'|'es-US'|'fa-IR'|'fr-CA'|'fr-FR'|'he-IL'|'hi-IN'|'id-ID'|'it-IT'|'ja-JP'|'ko-KR'|'ms-MY'|'nl-NL'|'pt-BR'|'pt-PT'|'ru-RU'|'ta-IN'|'te-IN'|'tr-TR'|'zh-CN'|'zh-TW'|'th-TH'|'en-ZA'|'en-NZ'|'vi-VN'|'sv-SE'|'ab-GE'|'ast-ES'|'az-AZ'|'ba-RU'|'be-BY'|'bg-BG'|'bn-IN'|'bs-BA'|'ca-ES'|'ckb-IQ'|'ckb-IR'|'cs-CZ'|'cy-WL'|'el-GR'|'et-ET'|'eu-ES'|'fi-FI'|'gl-ES'|'gu-IN'|'ha-NG'|'hr-HR'|'hu-HU'|'hy-AM'|'is-IS'|'ka-GE'|'kab-DZ'|'kk-KZ'|'kn-IN'|'ky-KG'|'lg-IN'|'lt-LT'|'lv-LV'|'mhr-RU'|'mi-NZ'|'mk-MK'|'ml-IN'|'mn-MN'|'mr-IN'|'mt-MT'|'no-NO'|'or-IN'|'pa-IN'|'pl-PL'|'ps-AF'|'ro-RO'|'rw-RW'|'si-LK'|'sk-SK'|'sl-SI'|'so-SO'|'sr-RS'|'su-ID'|'sw-BI'|'sw-KE'|'sw-RW'|'sw-TZ'|'sw-UG'|'tl-PH'|'tt-RU'|'ug-CN'|'uk-UA'|'uz-UZ'|'wo-SN'|'zu-ZA', ], 'LanguageIdSettings': { 'string': { 'VocabularyName': 'string', 'VocabularyFilterName': 'string', 'LanguageModelName': 'string' } }, 'Summarization': { 'GenerateAbstractiveSummary': True|False } }, ChannelDefinitions=[ { 'ChannelId': 123, 'ParticipantRole': 'AGENT'|'CUSTOMER' }, ] )
string
[REQUIRED]
A unique name, chosen by you, for your Call Analytics job.
This name is case sensitive, cannot contain spaces, and must be unique within an Amazon Web Services account. If you try to create a new job with the same name as an existing job, you get a ConflictException error.
dict
[REQUIRED]
Describes the Amazon S3 location of the media file you want to use in your Call Analytics request.
MediaFileUri (string) --
The Amazon S3 location of the media file you want to transcribe. For example:
s3://DOC-EXAMPLE-BUCKET/my-media-file.flac
s3://DOC-EXAMPLE-BUCKET/media-files/my-media-file.flac
Note that the Amazon S3 bucket that contains your input media must be located in the same Amazon Web Services Region where you're making your transcription request.
RedactedMediaFileUri (string) --
The Amazon S3 location of the media file you want to redact. For example:
s3://DOC-EXAMPLE-BUCKET/my-media-file.flac
s3://DOC-EXAMPLE-BUCKET/media-files/my-media-file.flac
Note that the Amazon S3 bucket that contains your input media must be located in the same Amazon Web Services Region where you're making your transcription request.
string
The Amazon S3 location where you want your Call Analytics transcription output stored. You can use any of the following formats to specify the output location:
s3://DOC-EXAMPLE-BUCKET
s3://DOC-EXAMPLE-BUCKET/my-output-folder/
s3://DOC-EXAMPLE-BUCKET/my-output-folder/my-call-analytics-job.json
Unless you specify a file name (option 3), the name of your output file has a default value that matches the name you specified for your transcription job using the CallAnalyticsJobName parameter.
You can specify a KMS key to encrypt your output using the OutputEncryptionKMSKeyId parameter. If you do not specify a KMS key, Amazon Transcribe uses the default Amazon S3 key for server-side encryption.
If you do not specify OutputLocation, your transcript is placed in a service-managed Amazon S3 bucket and you are provided with a URI to access your transcript.
string
The KMS key you want to use to encrypt your Call Analytics output.
If using a key located in the current Amazon Web Services account, you can specify your KMS key in one of four ways:
Use the KMS key ID itself. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.
Use an alias for the KMS key ID. For example, alias/ExampleAlias.
Use the Amazon Resource Name (ARN) for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.
Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.
If using a key located in a different Amazon Web Services account than the current Amazon Web Services account, you can specify your KMS key in one of two ways:
Use the ARN for the KMS key ID. For example, arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab.
Use the ARN for the KMS key alias. For example, arn:aws:kms:region:account-ID:alias/ExampleAlias.
If you do not specify an encryption key, your output is encrypted with the default Amazon S3 key (SSE-S3).
If you specify a KMS key to encrypt your output, you must also specify an output location using the OutputLocation parameter.
Note that the role making the request must have permission to use the specified KMS key.
string
The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files. If the role that you specify doesn’t have the appropriate permissions to access the specified Amazon S3 location, your request fails.
IAM role ARNs have the format arn:partition:iam::account:role/role-name-with-path. For example: arn:aws:iam::111122223333:role/Admin.
For more information, see IAM ARNs.
dict
Specify additional optional settings in your request, including content redaction; allows you to apply custom language models, vocabulary filters, and custom vocabularies to your Call Analytics job.
VocabularyName (string) --
The name of the custom vocabulary you want to include in your Call Analytics transcription request. Custom vocabulary names are case sensitive.
VocabularyFilterName (string) --
The name of the custom vocabulary filter you want to include in your Call Analytics transcription request. Custom vocabulary filter names are case sensitive.
Note that if you include VocabularyFilterName in your request, you must also include VocabularyFilterMethod.
VocabularyFilterMethod (string) --
Specify how you want your custom vocabulary filter applied to your transcript.
To replace words with ***, choose mask.
To delete words, choose remove.
To flag words without changing them, choose tag.
LanguageModelName (string) --
The name of the custom language model you want to use when processing your Call Analytics job. Note that custom language model names are case sensitive.
The language of the specified custom language model must match the language code that you specify in your transcription request. If the languages do not match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch.
ContentRedaction (dict) --
Makes it possible to redact or flag specified personally identifiable information (PII) in your transcript. If you use ContentRedaction, you must also include the sub-parameters: RedactionOutput and RedactionType. You can optionally include PiiEntityTypes to choose which types of PII you want to redact.
RedactionType (string) -- [REQUIRED]
Specify the category of information you want to redact; PII (personally identifiable information) is the only valid value. You can use PiiEntityTypes to choose which types of PII you want to redact. If you do not include PiiEntityTypes in your request, all PII is redacted.
RedactionOutput (string) -- [REQUIRED]
Specify if you want only a redacted transcript, or if you want a redacted and an unredacted transcript.
When you choose redacted Amazon Transcribe creates only a redacted transcript.
When you choose redacted_and_unredacted Amazon Transcribe creates a redacted and an unredacted transcript (as two separate files).
PiiEntityTypes (list) --
Specify which types of personally identifiable information (PII) you want to redact in your transcript. You can include as many types as you'd like, or you can select ALL. If you do not include PiiEntityTypes in your request, all PII is redacted.
(string) --
LanguageOptions (list) --
You can specify two or more language codes that represent the languages you think may be present in your media. Including more than five is not recommended. If you're unsure what languages are present, do not include this parameter.
Including language options can improve the accuracy of language identification.
For a list of languages supported with Call Analytics, refer to the Supported languages table.
To transcribe speech in Modern Standard Arabic ( ar-SA), your media file must be encoded at a sample rate of 16,000 Hz or higher.
(string) --
LanguageIdSettings (dict) --
If using automatic language identification in your request and you want to apply a custom language model, a custom vocabulary, or a custom vocabulary filter, include LanguageIdSettings with the relevant sub-parameters ( VocabularyName, LanguageModelName, and VocabularyFilterName).
LanguageIdSettings supports two to five language codes. Each language code you include can have an associated custom language model, custom vocabulary, and custom vocabulary filter. The language codes that you specify must match the languages of the associated custom language models, custom vocabularies, and custom vocabulary filters.
It's recommended that you include LanguageOptions when using LanguageIdSettings to ensure that the correct language dialect is identified. For example, if you specify a custom vocabulary that is in en-US but Amazon Transcribe determines that the language spoken in your media is en-AU, your custom vocabulary is not applied to your transcription. If you include LanguageOptions and include en-US as the only English language dialect, your custom vocabulary is applied to your transcription.
If you want to include a custom language model, custom vocabulary, or custom vocabulary filter with your request but do not want to use automatic language identification, use instead the parameter with the LanguageModelName, VocabularyName, or VocabularyFilterName sub-parameters.
For a list of languages supported with Call Analytics, refer to Supported languages and language-specific features.
(string) --
(dict) --
If using automatic language identification in your request and you want to apply a custom language model, a custom vocabulary, or a custom vocabulary filter, include LanguageIdSettings with the relevant sub-parameters ( VocabularyName, LanguageModelName, and VocabularyFilterName). Note that multi-language identification ( IdentifyMultipleLanguages) doesn't support custom language models.
LanguageIdSettings supports two to five language codes. Each language code you include can have an associated custom language model, custom vocabulary, and custom vocabulary filter. The language codes that you specify must match the languages of the associated custom language models, custom vocabularies, and custom vocabulary filters.
It's recommended that you include LanguageOptions when using LanguageIdSettings to ensure that the correct language dialect is identified. For example, if you specify a custom vocabulary that is in en-US but Amazon Transcribe determines that the language spoken in your media is en-AU, your custom vocabulary is not applied to your transcription. If you include LanguageOptions and include en-US as the only English language dialect, your custom vocabulary is applied to your transcription.
If you want to include a custom language model with your request but do not want to use automatic language identification, use instead the parameter with the LanguageModelName sub-parameter. If you want to include a custom vocabulary or a custom vocabulary filter (or both) with your request but do not want to use automatic language identification, use instead the parameter with the VocabularyName or VocabularyFilterName (or both) sub-parameter.
VocabularyName (string) --
The name of the custom vocabulary you want to use when processing your transcription job. Custom vocabulary names are case sensitive.
The language of the specified custom vocabulary must match the language code that you specify in your transcription request. If the languages do not match, the custom vocabulary isn't applied. There are no errors or warnings associated with a language mismatch.
VocabularyFilterName (string) --
The name of the custom vocabulary filter you want to use when processing your transcription job. Custom vocabulary filter names are case sensitive.
The language of the specified custom vocabulary filter must match the language code that you specify in your transcription request. If the languages do not match, the custom vocabulary filter isn't applied. There are no errors or warnings associated with a language mismatch.
Note that if you include VocabularyFilterName in your request, you must also include VocabularyFilterMethod.
LanguageModelName (string) --
The name of the custom language model you want to use when processing your transcription job. Note that custom language model names are case sensitive.
The language of the specified custom language model must match the language code that you specify in your transcription request. If the languages do not match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch.
Summarization (dict) --
Contains GenerateAbstractiveSummary, which is a required parameter if you want to enable Generative call summarization in your Call Analytics request.
GenerateAbstractiveSummary (boolean) -- [REQUIRED]
Enables Generative call summarization in your Call Analytics request
Generative call summarization provides a summary of the transcript including important components discussed in the conversation.
For more information, see Enabling generative call summarization.
list
Makes it possible to specify which speaker is on which channel. For example, if your agent is the first participant to speak, you would set ChannelId to 0 (to indicate the first channel) and ParticipantRole to AGENT (to indicate that it's the agent speaking).
(dict) --
Makes it possible to specify which speaker is on which channel. For example, if your agent is the first participant to speak, you would set ChannelId to 0 (to indicate the first channel) and ParticipantRole to AGENT (to indicate that it's the agent speaking).
ChannelId (integer) --
Specify the audio channel you want to define.
ParticipantRole (string) --
Specify the speaker you want to define. Omitting this parameter is equivalent to specifying both participants.
dict
Response Syntax
{ 'CallAnalyticsJob': { 'CallAnalyticsJobName': 'string', 'CallAnalyticsJobStatus': 'QUEUED'|'IN_PROGRESS'|'FAILED'|'COMPLETED', 'CallAnalyticsJobDetails': { 'Skipped': [ { 'Feature': 'GENERATIVE_SUMMARIZATION', 'ReasonCode': 'INSUFFICIENT_CONVERSATION_CONTENT'|'FAILED_SAFETY_GUIDELINES', 'Message': 'string' }, ] }, 'LanguageCode': 'af-ZA'|'ar-AE'|'ar-SA'|'da-DK'|'de-CH'|'de-DE'|'en-AB'|'en-AU'|'en-GB'|'en-IE'|'en-IN'|'en-US'|'en-WL'|'es-ES'|'es-US'|'fa-IR'|'fr-CA'|'fr-FR'|'he-IL'|'hi-IN'|'id-ID'|'it-IT'|'ja-JP'|'ko-KR'|'ms-MY'|'nl-NL'|'pt-BR'|'pt-PT'|'ru-RU'|'ta-IN'|'te-IN'|'tr-TR'|'zh-CN'|'zh-TW'|'th-TH'|'en-ZA'|'en-NZ'|'vi-VN'|'sv-SE'|'ab-GE'|'ast-ES'|'az-AZ'|'ba-RU'|'be-BY'|'bg-BG'|'bn-IN'|'bs-BA'|'ca-ES'|'ckb-IQ'|'ckb-IR'|'cs-CZ'|'cy-WL'|'el-GR'|'et-ET'|'eu-ES'|'fi-FI'|'gl-ES'|'gu-IN'|'ha-NG'|'hr-HR'|'hu-HU'|'hy-AM'|'is-IS'|'ka-GE'|'kab-DZ'|'kk-KZ'|'kn-IN'|'ky-KG'|'lg-IN'|'lt-LT'|'lv-LV'|'mhr-RU'|'mi-NZ'|'mk-MK'|'ml-IN'|'mn-MN'|'mr-IN'|'mt-MT'|'no-NO'|'or-IN'|'pa-IN'|'pl-PL'|'ps-AF'|'ro-RO'|'rw-RW'|'si-LK'|'sk-SK'|'sl-SI'|'so-SO'|'sr-RS'|'su-ID'|'sw-BI'|'sw-KE'|'sw-RW'|'sw-TZ'|'sw-UG'|'tl-PH'|'tt-RU'|'ug-CN'|'uk-UA'|'uz-UZ'|'wo-SN'|'zu-ZA', 'MediaSampleRateHertz': 123, 'MediaFormat': 'mp3'|'mp4'|'wav'|'flac'|'ogg'|'amr'|'webm'|'m4a', 'Media': { 'MediaFileUri': 'string', 'RedactedMediaFileUri': 'string' }, 'Transcript': { 'TranscriptFileUri': 'string', 'RedactedTranscriptFileUri': 'string' }, 'StartTime': datetime(2015, 1, 1), 'CreationTime': datetime(2015, 1, 1), 'CompletionTime': datetime(2015, 1, 1), 'FailureReason': 'string', 'DataAccessRoleArn': 'string', 'IdentifiedLanguageScore': ..., 'Settings': { 'VocabularyName': 'string', 'VocabularyFilterName': 'string', 'VocabularyFilterMethod': 'remove'|'mask'|'tag', 'LanguageModelName': 'string', 'ContentRedaction': { 'RedactionType': 'PII', 'RedactionOutput': 'redacted'|'redacted_and_unredacted', 'PiiEntityTypes': [ 'BANK_ACCOUNT_NUMBER'|'BANK_ROUTING'|'CREDIT_DEBIT_NUMBER'|'CREDIT_DEBIT_CVV'|'CREDIT_DEBIT_EXPIRY'|'PIN'|'EMAIL'|'ADDRESS'|'NAME'|'PHONE'|'SSN'|'ALL', ] }, 'LanguageOptions': [ 'af-ZA'|'ar-AE'|'ar-SA'|'da-DK'|'de-CH'|'de-DE'|'en-AB'|'en-AU'|'en-GB'|'en-IE'|'en-IN'|'en-US'|'en-WL'|'es-ES'|'es-US'|'fa-IR'|'fr-CA'|'fr-FR'|'he-IL'|'hi-IN'|'id-ID'|'it-IT'|'ja-JP'|'ko-KR'|'ms-MY'|'nl-NL'|'pt-BR'|'pt-PT'|'ru-RU'|'ta-IN'|'te-IN'|'tr-TR'|'zh-CN'|'zh-TW'|'th-TH'|'en-ZA'|'en-NZ'|'vi-VN'|'sv-SE'|'ab-GE'|'ast-ES'|'az-AZ'|'ba-RU'|'be-BY'|'bg-BG'|'bn-IN'|'bs-BA'|'ca-ES'|'ckb-IQ'|'ckb-IR'|'cs-CZ'|'cy-WL'|'el-GR'|'et-ET'|'eu-ES'|'fi-FI'|'gl-ES'|'gu-IN'|'ha-NG'|'hr-HR'|'hu-HU'|'hy-AM'|'is-IS'|'ka-GE'|'kab-DZ'|'kk-KZ'|'kn-IN'|'ky-KG'|'lg-IN'|'lt-LT'|'lv-LV'|'mhr-RU'|'mi-NZ'|'mk-MK'|'ml-IN'|'mn-MN'|'mr-IN'|'mt-MT'|'no-NO'|'or-IN'|'pa-IN'|'pl-PL'|'ps-AF'|'ro-RO'|'rw-RW'|'si-LK'|'sk-SK'|'sl-SI'|'so-SO'|'sr-RS'|'su-ID'|'sw-BI'|'sw-KE'|'sw-RW'|'sw-TZ'|'sw-UG'|'tl-PH'|'tt-RU'|'ug-CN'|'uk-UA'|'uz-UZ'|'wo-SN'|'zu-ZA', ], 'LanguageIdSettings': { 'string': { 'VocabularyName': 'string', 'VocabularyFilterName': 'string', 'LanguageModelName': 'string' } }, 'Summarization': { 'GenerateAbstractiveSummary': True|False } }, 'ChannelDefinitions': [ { 'ChannelId': 123, 'ParticipantRole': 'AGENT'|'CUSTOMER' }, ] } }
Response Structure
(dict) --
CallAnalyticsJob (dict) --
Provides detailed information about the current Call Analytics job, including job status and, if applicable, failure reason.
CallAnalyticsJobName (string) --
The name of the Call Analytics job. Job names are case sensitive and must be unique within an Amazon Web Services account.
CallAnalyticsJobStatus (string) --
Provides the status of the specified Call Analytics job.
If the status is COMPLETED, the job is finished and you can find the results at the location specified in TranscriptFileUri (or RedactedTranscriptFileUri, if you requested transcript redaction). If the status is FAILED, FailureReason provides details on why your transcription job failed.
CallAnalyticsJobDetails (dict) --
Provides detailed information about a call analytics job, including information about skipped analytics features.
Skipped (list) --
Contains information about any skipped analytics features during the analysis of a call analytics job.
This array lists all the analytics features that were skipped, along with their corresponding reason code and message.
(dict) --
Represents a skipped analytics feature during the analysis of a call analytics job.
The Feature field indicates the type of analytics feature that was skipped.
The Message field contains additional information or a message explaining why the analytics feature was skipped.
The ReasonCode field provides a code indicating the reason why the analytics feature was skipped.
Feature (string) --
Indicates the type of analytics feature that was skipped during the analysis of a call analytics job.
ReasonCode (string) --
Provides a code indicating the reason why a specific analytics feature was skipped during the analysis of a call analytics job.
Message (string) --
Contains additional information or a message explaining why a specific analytics feature was skipped during the analysis of a call analytics job.
LanguageCode (string) --
The language code used to create your Call Analytics job. For a list of supported languages and their associated language codes, refer to the Supported languages table.
If you do not know the language spoken in your media file, you can omit this field and let Amazon Transcribe automatically identify the language of your media. To improve the accuracy of language identification, you can include several language codes and Amazon Transcribe chooses the closest match for your transcription.
MediaSampleRateHertz (integer) --
The sample rate, in hertz, of the audio track in your input media file.
MediaFormat (string) --
The format of the input media file.
Media (dict) --
Provides the Amazon S3 location of the media file you used in your Call Analytics request.
MediaFileUri (string) --
The Amazon S3 location of the media file you want to transcribe. For example:
s3://DOC-EXAMPLE-BUCKET/my-media-file.flac
s3://DOC-EXAMPLE-BUCKET/media-files/my-media-file.flac
Note that the Amazon S3 bucket that contains your input media must be located in the same Amazon Web Services Region where you're making your transcription request.
RedactedMediaFileUri (string) --
The Amazon S3 location of the media file you want to redact. For example:
s3://DOC-EXAMPLE-BUCKET/my-media-file.flac
s3://DOC-EXAMPLE-BUCKET/media-files/my-media-file.flac
Note that the Amazon S3 bucket that contains your input media must be located in the same Amazon Web Services Region where you're making your transcription request.
Transcript (dict) --
Provides you with the Amazon S3 URI you can use to access your transcript.
TranscriptFileUri (string) --
The Amazon S3 location of your transcript. You can use this URI to access or download your transcript.
If you included OutputBucketName in your transcription job request, this is the URI of that bucket. If you also included OutputKey in your request, your output is located in the path you specified in your request.
If you didn't include OutputBucketName in your transcription job request, your transcript is stored in a service-managed bucket, and TranscriptFileUri provides you with a temporary URI you can use for secure access to your transcript.
RedactedTranscriptFileUri (string) --
The Amazon S3 location of your redacted transcript. You can use this URI to access or download your transcript.
If you included OutputBucketName in your transcription job request, this is the URI of that bucket. If you also included OutputKey in your request, your output is located in the path you specified in your request.
If you didn't include OutputBucketName in your transcription job request, your transcript is stored in a service-managed bucket, and RedactedTranscriptFileUri provides you with a temporary URI you can use for secure access to your transcript.
StartTime (datetime) --
The date and time the specified Call Analytics job began processing.
Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.789000-07:00 represents a transcription job that started processing at 12:32 PM UTC-7 on May 4, 2022.
CreationTime (datetime) --
The date and time the specified Call Analytics job request was made.
Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:32:58.761000-07:00 represents a transcription job that started processing at 12:32 PM UTC-7 on May 4, 2022.
CompletionTime (datetime) --
The date and time the specified Call Analytics job finished processing.
Timestamps are in the format YYYY-MM-DD'T'HH:MM:SS.SSSSSS-UTC. For example, 2022-05-04T12:33:13.922000-07:00 represents a transcription job that started processing at 12:33 PM UTC-7 on May 4, 2022.
FailureReason (string) --
If CallAnalyticsJobStatus is FAILED, FailureReason contains information about why the Call Analytics job request failed.
The FailureReason field contains one of the following values:
Unsupported media format. The media format specified in MediaFormat isn't valid. Refer to refer to the MediaFormat parameter for a list of supported formats.
The media format provided does not match the detected media format. The media format specified in MediaFormat doesn't match the format of the input file. Check the media format of your media file and correct the specified value.
Invalid sample rate for audio file. The sample rate specified in MediaSampleRateHertz isn't valid. The sample rate must be between 8,000 and 48,000 hertz.
The sample rate provided does not match the detected sample rate. The sample rate specified in MediaSampleRateHertz doesn't match the sample rate detected in your input media file. Check the sample rate of your media file and correct the specified value.
Invalid file size: file size too large. The size of your media file is larger than what Amazon Transcribe can process. For more information, refer to Service quotas.
Invalid number of channels: number of channels too large. Your audio contains more channels than Amazon Transcribe is able to process. For more information, refer to Service quotas.
DataAccessRoleArn (string) --
The Amazon Resource Name (ARN) you included in your request.
IdentifiedLanguageScore (float) --
The confidence score associated with the language identified in your media file.
Confidence scores are values between 0 and 1; a larger value indicates a higher probability that the identified language correctly matches the language spoken in your media.
Settings (dict) --
Provides information on any additional settings that were included in your request. Additional settings include content redaction and language identification settings.
VocabularyName (string) --
The name of the custom vocabulary you want to include in your Call Analytics transcription request. Custom vocabulary names are case sensitive.
VocabularyFilterName (string) --
The name of the custom vocabulary filter you want to include in your Call Analytics transcription request. Custom vocabulary filter names are case sensitive.
Note that if you include VocabularyFilterName in your request, you must also include VocabularyFilterMethod.
VocabularyFilterMethod (string) --
Specify how you want your custom vocabulary filter applied to your transcript.
To replace words with ***, choose mask.
To delete words, choose remove.
To flag words without changing them, choose tag.
LanguageModelName (string) --
The name of the custom language model you want to use when processing your Call Analytics job. Note that custom language model names are case sensitive.
The language of the specified custom language model must match the language code that you specify in your transcription request. If the languages do not match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch.
ContentRedaction (dict) --
Makes it possible to redact or flag specified personally identifiable information (PII) in your transcript. If you use ContentRedaction, you must also include the sub-parameters: RedactionOutput and RedactionType. You can optionally include PiiEntityTypes to choose which types of PII you want to redact.
RedactionType (string) --
Specify the category of information you want to redact; PII (personally identifiable information) is the only valid value. You can use PiiEntityTypes to choose which types of PII you want to redact. If you do not include PiiEntityTypes in your request, all PII is redacted.
RedactionOutput (string) --
Specify if you want only a redacted transcript, or if you want a redacted and an unredacted transcript.
When you choose redacted Amazon Transcribe creates only a redacted transcript.
When you choose redacted_and_unredacted Amazon Transcribe creates a redacted and an unredacted transcript (as two separate files).
PiiEntityTypes (list) --
Specify which types of personally identifiable information (PII) you want to redact in your transcript. You can include as many types as you'd like, or you can select ALL. If you do not include PiiEntityTypes in your request, all PII is redacted.
(string) --
LanguageOptions (list) --
You can specify two or more language codes that represent the languages you think may be present in your media. Including more than five is not recommended. If you're unsure what languages are present, do not include this parameter.
Including language options can improve the accuracy of language identification.
For a list of languages supported with Call Analytics, refer to the Supported languages table.
To transcribe speech in Modern Standard Arabic ( ar-SA), your media file must be encoded at a sample rate of 16,000 Hz or higher.
(string) --
LanguageIdSettings (dict) --
If using automatic language identification in your request and you want to apply a custom language model, a custom vocabulary, or a custom vocabulary filter, include LanguageIdSettings with the relevant sub-parameters ( VocabularyName, LanguageModelName, and VocabularyFilterName).
LanguageIdSettings supports two to five language codes. Each language code you include can have an associated custom language model, custom vocabulary, and custom vocabulary filter. The language codes that you specify must match the languages of the associated custom language models, custom vocabularies, and custom vocabulary filters.
It's recommended that you include LanguageOptions when using LanguageIdSettings to ensure that the correct language dialect is identified. For example, if you specify a custom vocabulary that is in en-US but Amazon Transcribe determines that the language spoken in your media is en-AU, your custom vocabulary is not applied to your transcription. If you include LanguageOptions and include en-US as the only English language dialect, your custom vocabulary is applied to your transcription.
If you want to include a custom language model, custom vocabulary, or custom vocabulary filter with your request but do not want to use automatic language identification, use instead the parameter with the LanguageModelName, VocabularyName, or VocabularyFilterName sub-parameters.
For a list of languages supported with Call Analytics, refer to Supported languages and language-specific features.
(string) --
(dict) --
If using automatic language identification in your request and you want to apply a custom language model, a custom vocabulary, or a custom vocabulary filter, include LanguageIdSettings with the relevant sub-parameters ( VocabularyName, LanguageModelName, and VocabularyFilterName). Note that multi-language identification ( IdentifyMultipleLanguages) doesn't support custom language models.
LanguageIdSettings supports two to five language codes. Each language code you include can have an associated custom language model, custom vocabulary, and custom vocabulary filter. The language codes that you specify must match the languages of the associated custom language models, custom vocabularies, and custom vocabulary filters.
It's recommended that you include LanguageOptions when using LanguageIdSettings to ensure that the correct language dialect is identified. For example, if you specify a custom vocabulary that is in en-US but Amazon Transcribe determines that the language spoken in your media is en-AU, your custom vocabulary is not applied to your transcription. If you include LanguageOptions and include en-US as the only English language dialect, your custom vocabulary is applied to your transcription.
If you want to include a custom language model with your request but do not want to use automatic language identification, use instead the parameter with the LanguageModelName sub-parameter. If you want to include a custom vocabulary or a custom vocabulary filter (or both) with your request but do not want to use automatic language identification, use instead the parameter with the VocabularyName or VocabularyFilterName (or both) sub-parameter.
VocabularyName (string) --
The name of the custom vocabulary you want to use when processing your transcription job. Custom vocabulary names are case sensitive.
The language of the specified custom vocabulary must match the language code that you specify in your transcription request. If the languages do not match, the custom vocabulary isn't applied. There are no errors or warnings associated with a language mismatch.
VocabularyFilterName (string) --
The name of the custom vocabulary filter you want to use when processing your transcription job. Custom vocabulary filter names are case sensitive.
The language of the specified custom vocabulary filter must match the language code that you specify in your transcription request. If the languages do not match, the custom vocabulary filter isn't applied. There are no errors or warnings associated with a language mismatch.
Note that if you include VocabularyFilterName in your request, you must also include VocabularyFilterMethod.
LanguageModelName (string) --
The name of the custom language model you want to use when processing your transcription job. Note that custom language model names are case sensitive.
The language of the specified custom language model must match the language code that you specify in your transcription request. If the languages do not match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch.
Summarization (dict) --
Contains GenerateAbstractiveSummary, which is a required parameter if you want to enable Generative call summarization in your Call Analytics request.
GenerateAbstractiveSummary (boolean) --
Enables Generative call summarization in your Call Analytics request
Generative call summarization provides a summary of the transcript including important components discussed in the conversation.
For more information, see Enabling generative call summarization.
ChannelDefinitions (list) --
Indicates which speaker is on which channel.
(dict) --
Makes it possible to specify which speaker is on which channel. For example, if your agent is the first participant to speak, you would set ChannelId to 0 (to indicate the first channel) and ParticipantRole to AGENT (to indicate that it's the agent speaking).
ChannelId (integer) --
Specify the audio channel you want to define.
ParticipantRole (string) --
Specify the speaker you want to define. Omitting this parameter is equivalent to specifying both participants.