AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.

Class: Aws::TranscribeService::Client

Inherits:
Seahorse::Client::Base show all
Defined in:
(unknown)

Overview

An API client for Amazon Transcribe Service. To construct a client, you need to configure a :region and :credentials.

transcribeservice = Aws::TranscribeService::Client.new(
  region: region_name,
  credentials: credentials,
  # ...
)

See #initialize for a full list of supported configuration options.

Region

You can configure a default region in the following locations:

  • ENV['AWS_REGION']
  • Aws.config[:region]

Go here for a list of supported regions.

Credentials

Default credentials are loaded automatically from the following locations:

  • ENV['AWS_ACCESS_KEY_ID'] and ENV['AWS_SECRET_ACCESS_KEY']
  • Aws.config[:credentials]
  • The shared credentials ini file at ~/.aws/credentials (more information)
  • From an instance profile when running on EC2

You can also construct a credentials object from one of the following classes:

Alternatively, you configure credentials with :access_key_id and :secret_access_key:

# load credentials from disk
creds = YAML.load(File.read('/path/to/secrets'))

Aws::TranscribeService::Client.new(
  access_key_id: creds['access_key_id'],
  secret_access_key: creds['secret_access_key']
)

Always load your credentials from outside your application. Avoid configuring credentials statically and never commit them to source control.

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

Constructor collapse

API Operations collapse

Instance Method Summary collapse

Methods inherited from Seahorse::Client::Base

add_plugin, api, #build_request, clear_plugins, define, new, #operation, #operation_names, plugins, remove_plugin, set_api, set_plugins

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

Constructor Details

#initialize(options = {}) ⇒ Aws::TranscribeService::Client

Constructs an API client.

Options Hash (options):

  • :access_key_id (String)

    Used to set credentials statically. See Plugins::RequestSigner for more details.

  • :active_endpoint_cache (Boolean)

    When set to true, a thread polling for endpoints will be running in the background every 60 secs (default). Defaults to false. See Plugins::EndpointDiscovery for more details.

  • :convert_params (Boolean) — default: true

    When true, an attempt is made to coerce request parameters into the required types. See Plugins::ParamConverter for more details.

  • :credentials (required, Credentials)

    Your AWS credentials. The following locations will be searched in order for credentials:

    • :access_key_id, :secret_access_key, and :session_token options
    • ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
    • HOME/.aws/credentials shared credentials file
    • EC2 instance profile credentials See Plugins::RequestSigner for more details.
  • :disable_host_prefix_injection (Boolean)

    Set to true to disable SDK automatically adding host prefix to default service endpoint when available. See Plugins::EndpointPattern for more details.

  • :endpoint (String)

    A default endpoint is constructed from the :region. See Plugins::RegionalEndpoint for more details.

  • :endpoint_cache_max_entries (Integer)

    Used for the maximum size limit of the LRU cache storing endpoints data for endpoint discovery enabled operations. Defaults to 1000. See Plugins::EndpointDiscovery for more details.

  • :endpoint_cache_max_threads (Integer)

    Used for the maximum threads in use for polling endpoints to be cached, defaults to 10. See Plugins::EndpointDiscovery for more details.

  • :endpoint_cache_poll_interval (Integer)

    When :endpoint_discovery and :active_endpoint_cache is enabled, Use this option to config the time interval in seconds for making requests fetching endpoints information. Defaults to 60 sec. See Plugins::EndpointDiscovery for more details.

  • :endpoint_discovery (Boolean)

    When set to true, endpoint discovery will be enabled for operations when available. Defaults to false. See Plugins::EndpointDiscovery for more details.

  • :http_continue_timeout (Float) — default: 1

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_idle_timeout (Integer) — default: 5

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_open_timeout (Integer) — default: 15

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_proxy (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_read_timeout (Integer) — default: 60

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_wire_trace (Boolean) — default: false

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :log_level (Symbol) — default: :info

    The log level to send messages to the logger at. See Plugins::Logging for more details.

  • :log_formatter (Logging::LogFormatter)

    The log formatter. Defaults to Seahorse::Client::Logging::Formatter.default. See Plugins::Logging for more details.

  • :logger (Logger) — default: nil

    The Logger instance to send log messages to. If this option is not set, logging will be disabled. See Plugins::Logging for more details.

  • :profile (String)

    Used when loading credentials from the shared credentials file at HOME/.aws/credentials. When not specified, 'default' is used. See Plugins::RequestSigner for more details.

  • :raise_response_errors (Boolean) — default: true

    When true, response errors are raised. See Seahorse::Client::Plugins::RaiseResponseErrors for more details.

  • :region (required, String)

    The AWS region to connect to. The region is used to construct the client endpoint. Defaults to ENV['AWS_REGION']. Also checks AMAZON_REGION and AWS_DEFAULT_REGION. See Plugins::RegionalEndpoint for more details.

  • :retry_limit (Integer) — default: 3

    The maximum number of times to retry failed requests. Only ~ 500 level server errors and certain ~ 400 level client errors are retried. Generally, these are throttling errors, data checksum errors, networking errors, timeout errors and auth errors from expired credentials. See Plugins::RetryErrors for more details.

  • :secret_access_key (String)

    Used to set credentials statically. See Plugins::RequestSigner for more details.

  • :session_token (String)

    Used to set credentials statically. See Plugins::RequestSigner for more details.

  • :simple_json (Boolean) — default: false

    Disables request parameter conversion, validation, and formatting. Also disable response data type conversions. This option is useful when you want to ensure the highest level of performance by avoiding overhead of walking request parameters and response data structures.

    When :simple_json is enabled, the request parameters hash must be formatted exactly as the DynamoDB API expects. See Plugins::Protocols::JsonRpc for more details.

  • :ssl_ca_bundle (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :ssl_ca_directory (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :ssl_ca_store (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :ssl_verify_peer (Boolean) — default: true

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :stub_responses (Boolean) — default: false

    Causes the client to return stubbed responses. By default fake responses are generated and returned. You can specify the response data to return or errors to raise by calling ClientStubs#stub_responses. See ClientStubs for more information.

    Please note When response stubbing is enabled, no HTTP requests are made, and retries are disabled. See Plugins::StubResponses for more details.

  • :validate_params (Boolean) — default: true

    When true, request parameters are validated before sending the request. See Plugins::ParamValidator for more details.

Instance Method Details

#create_language_model(options = {}) ⇒ Types::CreateLanguageModelResponse

Creates a new custom language model. Use Amazon S3 prefixes to provide the location of your input files. The time it takes to create your model depends on the size of your training data.

Examples:

Request syntax with placeholder values


resp = client.create_language_model({
  language_code: "en-US", # required, accepts en-US
  base_model_name: "NarrowBand", # required, accepts NarrowBand, WideBand
  model_name: "ModelName", # required
  input_data_config: { # required
    s3_uri: "Uri", # required
    tuning_data_s3_uri: "Uri",
    data_access_role_arn: "DataAccessRoleArn", # required
  },
})

Response structure


resp.language_code #=> String, one of "en-US"
resp.base_model_name #=> String, one of "NarrowBand", "WideBand"
resp.model_name #=> String
resp.input_data_config.s3_uri #=> String
resp.input_data_config.tuning_data_s3_uri #=> String
resp.input_data_config.data_access_role_arn #=> String
resp.model_status #=> String, one of "IN_PROGRESS", "FAILED", "COMPLETED"

Options Hash (options):

  • :language_code (required, String)

    The language of the input text you\'re using to train your custom language model.

  • :base_model_name (required, String)

    The Amazon Transcribe standard language model, or base model used to create your custom language model.

    If you want to use your custom language model to transcribe audio with a sample rate of 16 kHz or greater, choose Wideband.

    If you want to use your custom language model to transcribe audio with a sample rate that is less than 16 kHz, choose Narrowband.

  • :model_name (required, String)

    The name you choose for your custom language model when you create it.

  • :input_data_config (required, Types::InputDataConfig)

    Contains the data access role and the Amazon S3 prefixes to read the required input files to create a custom language model.

Returns:

See Also:

#create_medical_vocabulary(options = {}) ⇒ Types::CreateMedicalVocabularyResponse

Creates a new custom vocabulary that you can use to change how Amazon Transcribe Medical transcribes your audio file.

Examples:

Request syntax with placeholder values


resp = client.create_medical_vocabulary({
  vocabulary_name: "VocabularyName", # required
  language_code: "af-ZA", # required, accepts af-ZA, ar-AE, ar-SA, cy-GB, 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, ga-IE, gd-GB, 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
  vocabulary_file_uri: "Uri", # required
})

Response structure


resp.vocabulary_name #=> String
resp.language_code #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.vocabulary_state #=> String, one of "PENDING", "READY", "FAILED"
resp.last_modified_time #=> Time
resp.failure_reason #=> String

Options Hash (options):

  • :vocabulary_name (required, String)

    The name of the custom vocabulary. This case-sensitive name must be unique within an AWS account. If you try to create a vocabulary with the same name as a previous vocabulary, you get a ConflictException error.

  • :language_code (required, String)

    The language code for the language used for the entries in your custom vocabulary. The language code of your custom vocabulary must match the language code of your transcription job. US English (en-US) is the only language code available for Amazon Transcribe Medical.

  • :vocabulary_file_uri (required, String)

    The location in Amazon S3 of the text file you use to define your custom vocabulary. The URI must be in the same AWS Region as the resource that you\'re calling. Enter information about your VocabularyFileUri in the following format:

    https://s3.<aws-region>.amazonaws.com/<bucket-name>/<keyprefix>/<objectkey>

    The following is an example URI for a vocabulary file that is stored in Amazon S3:

    https://s3.us-east-1.amazonaws.com/AWSDOC-EXAMPLE-BUCKET/vocab.txt

    For more information about Amazon S3 object names, see Object Keys in the Amazon S3 Developer Guide.

    For more information about custom vocabularies, see Medical Custom Vocabularies.

Returns:

See Also:

#create_vocabulary(options = {}) ⇒ Types::CreateVocabularyResponse

Creates a new custom vocabulary that you can use to change the way Amazon Transcribe handles transcription of an audio file.

Examples:

Request syntax with placeholder values


resp = client.create_vocabulary({
  vocabulary_name: "VocabularyName", # required
  language_code: "af-ZA", # required, accepts af-ZA, ar-AE, ar-SA, cy-GB, 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, ga-IE, gd-GB, 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
  phrases: ["Phrase"],
  vocabulary_file_uri: "Uri",
})

Response structure


resp.vocabulary_name #=> String
resp.language_code #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.vocabulary_state #=> String, one of "PENDING", "READY", "FAILED"
resp.last_modified_time #=> Time
resp.failure_reason #=> String

Options Hash (options):

  • :vocabulary_name (required, String)

    The name of the vocabulary. The name must be unique within an AWS account. The name is case sensitive. If you try to create a vocabulary with the same name as a previous vocabulary you will receive a ConflictException error.

  • :language_code (required, String)

    The language code of the vocabulary entries.

  • :phrases (Array<String>)

    An array of strings that contains the vocabulary entries.

  • :vocabulary_file_uri (String)

    The S3 location of the text file that contains the definition of the custom vocabulary. The URI must be in the same region as the API endpoint that you are calling. The general form is

    For more information about S3 object names, see Object Keys in the Amazon S3 Developer Guide.

    For more information about custom vocabularies, see Custom Vocabularies.

Returns:

See Also:

#create_vocabulary_filter(options = {}) ⇒ Types::CreateVocabularyFilterResponse

Creates a new vocabulary filter that you can use to filter words, such as profane words, from the output of a transcription job.

Examples:

Request syntax with placeholder values


resp = client.create_vocabulary_filter({
  vocabulary_filter_name: "VocabularyFilterName", # required
  language_code: "af-ZA", # required, accepts af-ZA, ar-AE, ar-SA, cy-GB, 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, ga-IE, gd-GB, 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
  words: ["Word"],
  vocabulary_filter_file_uri: "Uri",
})

Response structure


resp.vocabulary_filter_name #=> String
resp.language_code #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.last_modified_time #=> Time

Options Hash (options):

  • :vocabulary_filter_name (required, String)

    The vocabulary filter name. The name must be unique within the account that contains it. If you try to create a vocabulary filter with the same name as another vocabulary filter, you get a ConflictException error.

  • :language_code (required, String)

    The language code of the words in the vocabulary filter. All words in the filter must be in the same language. The vocabulary filter can only be used with transcription jobs in the specified language.

  • :words (Array<String>)

    The words to use in the vocabulary filter. Only use characters from the character set defined for custom vocabularies. For a list of character sets, see Character Sets for Custom Vocabularies.

    If you provide a list of words in the Words parameter, you can\'t use the VocabularyFilterFileUri parameter.

  • :vocabulary_filter_file_uri (String)

    The Amazon S3 location of a text file used as input to create the vocabulary filter. Only use characters from the character set defined for custom vocabularies. For a list of character sets, see Character Sets for Custom Vocabularies.

    The specified file must be less than 50 KB of UTF-8 characters.

    If you provide the location of a list of words in the VocabularyFilterFileUri parameter, you can\'t use the Words parameter.

Returns:

See Also:

#delete_language_model(options = {}) ⇒ Struct

Deletes a custom language model using its name.

Examples:

Request syntax with placeholder values


resp = client.delete_language_model({
  model_name: "ModelName", # required
})

Options Hash (options):

  • :model_name (required, String)

    The name of the model you\'re choosing to delete.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#delete_medical_transcription_job(options = {}) ⇒ Struct

Deletes a transcription job generated by Amazon Transcribe Medical and any related information.

Examples:

Request syntax with placeholder values


resp = client.delete_medical_transcription_job({
  medical_transcription_job_name: "TranscriptionJobName", # required
})

Options Hash (options):

  • :medical_transcription_job_name (required, String)

    The name you provide to the DeleteMedicalTranscriptionJob object to delete a transcription job.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#delete_medical_vocabulary(options = {}) ⇒ Struct

Deletes a vocabulary from Amazon Transcribe Medical.

Examples:

Request syntax with placeholder values


resp = client.delete_medical_vocabulary({
  vocabulary_name: "VocabularyName", # required
})

Options Hash (options):

  • :vocabulary_name (required, String)

    The name of the vocabulary that you want to delete.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#delete_transcription_job(options = {}) ⇒ Struct

Deletes a previously submitted transcription job along with any other generated results such as the transcription, models, and so on.

Examples:

Request syntax with placeholder values


resp = client.delete_transcription_job({
  transcription_job_name: "TranscriptionJobName", # required
})

Options Hash (options):

  • :transcription_job_name (required, String)

    The name of the transcription job to be deleted.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#delete_vocabulary(options = {}) ⇒ Struct

Deletes a vocabulary from Amazon Transcribe.

Examples:

Request syntax with placeholder values


resp = client.delete_vocabulary({
  vocabulary_name: "VocabularyName", # required
})

Options Hash (options):

  • :vocabulary_name (required, String)

    The name of the vocabulary to delete.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#delete_vocabulary_filter(options = {}) ⇒ Struct

Removes a vocabulary filter.

Examples:

Request syntax with placeholder values


resp = client.delete_vocabulary_filter({
  vocabulary_filter_name: "VocabularyFilterName", # required
})

Options Hash (options):

  • :vocabulary_filter_name (required, String)

    The name of the vocabulary filter to remove.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#describe_language_model(options = {}) ⇒ Types::DescribeLanguageModelResponse

Gets information about a single custom language model. Use this information to see details about the language model in your AWS account. You can also see whether the base language model used to create your custom language model has been updated. If Amazon Transcribe has updated the base model, you can create a new custom language model using the updated base model. If the language model wasn't created, you can use this operation to understand why Amazon Transcribe couldn't create it.

Examples:

Request syntax with placeholder values


resp = client.describe_language_model({
  model_name: "ModelName", # required
})

Response structure


resp.language_model.model_name #=> String
resp.language_model.create_time #=> Time
resp.language_model.last_modified_time #=> Time
resp.language_model.language_code #=> String, one of "en-US"
resp.language_model.base_model_name #=> String, one of "NarrowBand", "WideBand"
resp.language_model.model_status #=> String, one of "IN_PROGRESS", "FAILED", "COMPLETED"
resp.language_model.upgrade_availability #=> true/false
resp.language_model.failure_reason #=> String
resp.language_model.input_data_config.s3_uri #=> String
resp.language_model.input_data_config.tuning_data_s3_uri #=> String
resp.language_model.input_data_config.data_access_role_arn #=> String

Options Hash (options):

  • :model_name (required, String)

    The name of the custom language model you submit to get more information.

Returns:

See Also:

#get_medical_transcription_job(options = {}) ⇒ Types::GetMedicalTranscriptionJobResponse

Returns information about a transcription job from Amazon Transcribe Medical. To see the status of the job, check the TranscriptionJobStatus field. If the status is COMPLETED, the job is finished. You find the results of the completed job in the TranscriptFileUri field.

Examples:

Request syntax with placeholder values


resp = client.get_medical_transcription_job({
  medical_transcription_job_name: "TranscriptionJobName", # required
})

Response structure


resp.medical_transcription_job.medical_transcription_job_name #=> String
resp.medical_transcription_job.transcription_job_status #=> String, one of "QUEUED", "IN_PROGRESS", "FAILED", "COMPLETED"
resp.medical_transcription_job.language_code #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.medical_transcription_job.media_sample_rate_hertz #=> Integer
resp.medical_transcription_job.media_format #=> String, one of "mp3", "mp4", "wav", "flac", "ogg", "amr", "webm"
resp.medical_transcription_job.media.media_file_uri #=> String
resp.medical_transcription_job.transcript.transcript_file_uri #=> String
resp.medical_transcription_job.start_time #=> Time
resp.medical_transcription_job.creation_time #=> Time
resp.medical_transcription_job.completion_time #=> Time
resp.medical_transcription_job.failure_reason #=> String
resp.medical_transcription_job.settings.show_speaker_labels #=> true/false
resp.medical_transcription_job.settings.max_speaker_labels #=> Integer
resp.medical_transcription_job.settings.channel_identification #=> true/false
resp.medical_transcription_job.settings.show_alternatives #=> true/false
resp.medical_transcription_job.settings.max_alternatives #=> Integer
resp.medical_transcription_job.settings.vocabulary_name #=> String
resp.medical_transcription_job.specialty #=> String, one of "PRIMARYCARE"
resp.medical_transcription_job.type #=> String, one of "CONVERSATION", "DICTATION"

Options Hash (options):

  • :medical_transcription_job_name (required, String)

    The name of the medical transcription job.

Returns:

See Also:

#get_medical_vocabulary(options = {}) ⇒ Types::GetMedicalVocabularyResponse

Retrieves information about a medical vocabulary.

Examples:

Request syntax with placeholder values


resp = client.get_medical_vocabulary({
  vocabulary_name: "VocabularyName", # required
})

Response structure


resp.vocabulary_name #=> String
resp.language_code #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.vocabulary_state #=> String, one of "PENDING", "READY", "FAILED"
resp.last_modified_time #=> Time
resp.failure_reason #=> String
resp.download_uri #=> String

Options Hash (options):

  • :vocabulary_name (required, String)

    The name of the vocabulary that you want information about. The value is case sensitive.

Returns:

See Also:

#get_transcription_job(options = {}) ⇒ Types::GetTranscriptionJobResponse

Returns information about a transcription job. To see the status of the job, check the TranscriptionJobStatus field. If the status is COMPLETED, the job is finished and you can find the results at the location specified in the TranscriptFileUri field. If you enable content redaction, the redacted transcript appears in RedactedTranscriptFileUri.

Examples:

Request syntax with placeholder values


resp = client.get_transcription_job({
  transcription_job_name: "TranscriptionJobName", # required
})

Response structure


resp.transcription_job.transcription_job_name #=> String
resp.transcription_job.transcription_job_status #=> String, one of "QUEUED", "IN_PROGRESS", "FAILED", "COMPLETED"
resp.transcription_job.language_code #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.transcription_job.media_sample_rate_hertz #=> Integer
resp.transcription_job.media_format #=> String, one of "mp3", "mp4", "wav", "flac", "ogg", "amr", "webm"
resp.transcription_job.media.media_file_uri #=> String
resp.transcription_job.transcript.transcript_file_uri #=> String
resp.transcription_job.transcript.redacted_transcript_file_uri #=> String
resp.transcription_job.start_time #=> Time
resp.transcription_job.creation_time #=> Time
resp.transcription_job.completion_time #=> Time
resp.transcription_job.failure_reason #=> String
resp.transcription_job.settings.vocabulary_name #=> String
resp.transcription_job.settings.show_speaker_labels #=> true/false
resp.transcription_job.settings.max_speaker_labels #=> Integer
resp.transcription_job.settings.channel_identification #=> true/false
resp.transcription_job.settings.show_alternatives #=> true/false
resp.transcription_job.settings.max_alternatives #=> Integer
resp.transcription_job.settings.vocabulary_filter_name #=> String
resp.transcription_job.settings.vocabulary_filter_method #=> String, one of "remove", "mask"
resp.transcription_job.model_settings.language_model_name #=> String
resp.transcription_job.job_execution_settings.allow_deferred_execution #=> true/false
resp.transcription_job.job_execution_settings.data_access_role_arn #=> String
resp.transcription_job.content_redaction.redaction_type #=> String, one of "PII"
resp.transcription_job.content_redaction.redaction_output #=> String, one of "redacted", "redacted_and_unredacted"
resp.transcription_job.identify_language #=> true/false
resp.transcription_job.language_options #=> Array
resp.transcription_job.language_options[0] #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.transcription_job.identified_language_score #=> Float

Options Hash (options):

  • :transcription_job_name (required, String)

    The name of the job.

Returns:

See Also:

#get_vocabulary(options = {}) ⇒ Types::GetVocabularyResponse

Gets information about a vocabulary.

Examples:

Request syntax with placeholder values


resp = client.get_vocabulary({
  vocabulary_name: "VocabularyName", # required
})

Response structure


resp.vocabulary_name #=> String
resp.language_code #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.vocabulary_state #=> String, one of "PENDING", "READY", "FAILED"
resp.last_modified_time #=> Time
resp.failure_reason #=> String
resp.download_uri #=> String

Options Hash (options):

  • :vocabulary_name (required, String)

    The name of the vocabulary to return information about. The name is case sensitive.

Returns:

See Also:

#get_vocabulary_filter(options = {}) ⇒ Types::GetVocabularyFilterResponse

Returns information about a vocabulary filter.

Examples:

Request syntax with placeholder values


resp = client.get_vocabulary_filter({
  vocabulary_filter_name: "VocabularyFilterName", # required
})

Response structure


resp.vocabulary_filter_name #=> String
resp.language_code #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.last_modified_time #=> Time
resp.download_uri #=> String

Options Hash (options):

  • :vocabulary_filter_name (required, String)

    The name of the vocabulary filter for which to return information.

Returns:

See Also:

#list_language_models(options = {}) ⇒ Types::ListLanguageModelsResponse

Provides more information about the custom language models you've created. You can use the information in this list to find a specific custom language model. You can then use the operation to get more information about it.

Examples:

Request syntax with placeholder values


resp = client.list_language_models({
  status_equals: "IN_PROGRESS", # accepts IN_PROGRESS, FAILED, COMPLETED
  name_contains: "ModelName",
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.next_token #=> String
resp.models #=> Array
resp.models[0].model_name #=> String
resp.models[0].create_time #=> Time
resp.models[0].last_modified_time #=> Time
resp.models[0].language_code #=> String, one of "en-US"
resp.models[0].base_model_name #=> String, one of "NarrowBand", "WideBand"
resp.models[0].model_status #=> String, one of "IN_PROGRESS", "FAILED", "COMPLETED"
resp.models[0].upgrade_availability #=> true/false
resp.models[0].failure_reason #=> String
resp.models[0].input_data_config.s3_uri #=> String
resp.models[0].input_data_config.tuning_data_s3_uri #=> String
resp.models[0].input_data_config.data_access_role_arn #=> String

Options Hash (options):

  • :status_equals (String)

    When specified, returns only custom language models with the specified status. Language models are ordered by creation date, with the newest models first. If you don\'t specify a status, Amazon Transcribe returns all custom language models ordered by date.

  • :name_contains (String)

    When specified, the custom language model names returned contain the substring you\'ve specified.

  • :next_token (String)

    When included, fetches the next set of jobs if the result of the previous request was truncated.

  • :max_results (Integer)

    The maximum number of language models to return in the response. If there are fewer results in the list, the response contains only the actual results.

Returns:

See Also:

#list_medical_transcription_jobs(options = {}) ⇒ Types::ListMedicalTranscriptionJobsResponse

Lists medical transcription jobs with a specified status or substring that matches their names.

Examples:

Request syntax with placeholder values


resp = client.list_medical_transcription_jobs({
  status: "QUEUED", # accepts QUEUED, IN_PROGRESS, FAILED, COMPLETED
  job_name_contains: "TranscriptionJobName",
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.status #=> String, one of "QUEUED", "IN_PROGRESS", "FAILED", "COMPLETED"
resp.next_token #=> String
resp.medical_transcription_job_summaries #=> Array
resp.medical_transcription_job_summaries[0].medical_transcription_job_name #=> String
resp.medical_transcription_job_summaries[0].creation_time #=> Time
resp.medical_transcription_job_summaries[0].start_time #=> Time
resp.medical_transcription_job_summaries[0].completion_time #=> Time
resp.medical_transcription_job_summaries[0].language_code #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.medical_transcription_job_summaries[0].transcription_job_status #=> String, one of "QUEUED", "IN_PROGRESS", "FAILED", "COMPLETED"
resp.medical_transcription_job_summaries[0].failure_reason #=> String
resp.medical_transcription_job_summaries[0].output_location_type #=> String, one of "CUSTOMER_BUCKET", "SERVICE_BUCKET"
resp.medical_transcription_job_summaries[0].specialty #=> String, one of "PRIMARYCARE"
resp.medical_transcription_job_summaries[0].type #=> String, one of "CONVERSATION", "DICTATION"

Options Hash (options):

  • :status (String)

    When specified, returns only medical transcription jobs with the specified status. Jobs are ordered by creation date, with the newest jobs returned first. If you don\'t specify a status, Amazon Transcribe Medical returns all transcription jobs ordered by creation date.

  • :job_name_contains (String)

    When specified, the jobs returned in the list are limited to jobs whose name contains the specified string.

  • :next_token (String)

    If you a receive a truncated result in the previous request of ListMedicalTranscriptionJobs, include NextToken to fetch the next set of jobs.

  • :max_results (Integer)

    The maximum number of medical transcription jobs to return in the response. IF there are fewer results in the list, this response contains only the actual results.

Returns:

See Also:

#list_medical_vocabularies(options = {}) ⇒ Types::ListMedicalVocabulariesResponse

Returns a list of vocabularies that match the specified criteria. If you don't enter a value in any of the request parameters, returns the entire list of vocabularies.

Examples:

Request syntax with placeholder values


resp = client.list_medical_vocabularies({
  next_token: "NextToken",
  max_results: 1,
  state_equals: "PENDING", # accepts PENDING, READY, FAILED
  name_contains: "VocabularyName",
})

Response structure


resp.status #=> String, one of "PENDING", "READY", "FAILED"
resp.next_token #=> String
resp.vocabularies #=> Array
resp.vocabularies[0].vocabulary_name #=> String
resp.vocabularies[0].language_code #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.vocabularies[0].last_modified_time #=> Time
resp.vocabularies[0].vocabulary_state #=> String, one of "PENDING", "READY", "FAILED"

Options Hash (options):

  • :next_token (String)

    If the result of your previous request to ListMedicalVocabularies was truncated, include the NextToken to fetch the next set of vocabularies.

  • :max_results (Integer)

    The maximum number of vocabularies to return in the response.

  • :state_equals (String)

    When specified, returns only vocabularies with the VocabularyState equal to the specified vocabulary state. Use this field to see which vocabularies are ready for your medical transcription jobs.

  • :name_contains (String)

    Returns vocabularies whose names contain the specified string. The search is not case sensitive. ListMedicalVocabularies returns both \"vocabularyname\" and \"VocabularyName\".

Returns:

See Also:

#list_transcription_jobs(options = {}) ⇒ Types::ListTranscriptionJobsResponse

Lists transcription jobs with the specified status.

Examples:

Request syntax with placeholder values


resp = client.list_transcription_jobs({
  status: "QUEUED", # accepts QUEUED, IN_PROGRESS, FAILED, COMPLETED
  job_name_contains: "TranscriptionJobName",
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.status #=> String, one of "QUEUED", "IN_PROGRESS", "FAILED", "COMPLETED"
resp.next_token #=> String
resp.transcription_job_summaries #=> Array
resp.transcription_job_summaries[0].transcription_job_name #=> String
resp.transcription_job_summaries[0].creation_time #=> Time
resp.transcription_job_summaries[0].start_time #=> Time
resp.transcription_job_summaries[0].completion_time #=> Time
resp.transcription_job_summaries[0].language_code #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.transcription_job_summaries[0].transcription_job_status #=> String, one of "QUEUED", "IN_PROGRESS", "FAILED", "COMPLETED"
resp.transcription_job_summaries[0].failure_reason #=> String
resp.transcription_job_summaries[0].output_location_type #=> String, one of "CUSTOMER_BUCKET", "SERVICE_BUCKET"
resp.transcription_job_summaries[0].content_redaction.redaction_type #=> String, one of "PII"
resp.transcription_job_summaries[0].content_redaction.redaction_output #=> String, one of "redacted", "redacted_and_unredacted"
resp.transcription_job_summaries[0].model_settings.language_model_name #=> String
resp.transcription_job_summaries[0].identify_language #=> true/false
resp.transcription_job_summaries[0].identified_language_score #=> Float

Options Hash (options):

  • :status (String)

    When specified, returns only transcription jobs with the specified status. Jobs are ordered by creation date, with the newest jobs returned first. If you don’t specify a status, Amazon Transcribe returns all transcription jobs ordered by creation date.

  • :job_name_contains (String)

    When specified, the jobs returned in the list are limited to jobs whose name contains the specified string.

  • :next_token (String)

    If the result of the previous request to ListTranscriptionJobs was truncated, include the NextToken to fetch the next set of jobs.

  • :max_results (Integer)

    The maximum number of jobs to return in the response. If there are fewer results in the list, this response contains only the actual results.

Returns:

See Also:

#list_vocabularies(options = {}) ⇒ Types::ListVocabulariesResponse

Returns a list of vocabularies that match the specified criteria. If no criteria are specified, returns the entire list of vocabularies.

Examples:

Request syntax with placeholder values


resp = client.list_vocabularies({
  next_token: "NextToken",
  max_results: 1,
  state_equals: "PENDING", # accepts PENDING, READY, FAILED
  name_contains: "VocabularyName",
})

Response structure


resp.status #=> String, one of "PENDING", "READY", "FAILED"
resp.next_token #=> String
resp.vocabularies #=> Array
resp.vocabularies[0].vocabulary_name #=> String
resp.vocabularies[0].language_code #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.vocabularies[0].last_modified_time #=> Time
resp.vocabularies[0].vocabulary_state #=> String, one of "PENDING", "READY", "FAILED"

Options Hash (options):

  • :next_token (String)

    If the result of the previous request to ListVocabularies was truncated, include the NextToken to fetch the next set of jobs.

  • :max_results (Integer)

    The maximum number of vocabularies to return in the response. If there are fewer results in the list, this response contains only the actual results.

  • :state_equals (String)

    When specified, only returns vocabularies with the VocabularyState field equal to the specified state.

  • :name_contains (String)

    When specified, the vocabularies returned in the list are limited to vocabularies whose name contains the specified string. The search is not case sensitive, ListVocabularies returns both \"vocabularyname\" and \"VocabularyName\" in the response list.

Returns:

See Also:

#list_vocabulary_filters(options = {}) ⇒ Types::ListVocabularyFiltersResponse

Gets information about vocabulary filters.

Examples:

Request syntax with placeholder values


resp = client.list_vocabulary_filters({
  next_token: "NextToken",
  max_results: 1,
  name_contains: "VocabularyFilterName",
})

Response structure


resp.next_token #=> String
resp.vocabulary_filters #=> Array
resp.vocabulary_filters[0].vocabulary_filter_name #=> String
resp.vocabulary_filters[0].language_code #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.vocabulary_filters[0].last_modified_time #=> Time

Options Hash (options):

  • :next_token (String)

    If the result of the previous request to ListVocabularyFilters was truncated, include the NextToken to fetch the next set of collections.

  • :max_results (Integer)

    The maximum number of filters to return in the response. If there are fewer results in the list, this response contains only the actual results.

  • :name_contains (String)

    Filters the response so that it only contains vocabulary filters whose name contains the specified string.

Returns:

See Also:

#start_medical_transcription_job(options = {}) ⇒ Types::StartMedicalTranscriptionJobResponse

Starts a batch job to transcribe medical speech to text.

Examples:

Request syntax with placeholder values


resp = client.start_medical_transcription_job({
  medical_transcription_job_name: "TranscriptionJobName", # required
  language_code: "af-ZA", # required, accepts af-ZA, ar-AE, ar-SA, cy-GB, 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, ga-IE, gd-GB, 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
  media_sample_rate_hertz: 1,
  media_format: "mp3", # accepts mp3, mp4, wav, flac, ogg, amr, webm
  media: { # required
    media_file_uri: "Uri",
  },
  output_bucket_name: "OutputBucketName", # required
  output_key: "OutputKey",
  output_encryption_kms_key_id: "KMSKeyId",
  settings: {
    show_speaker_labels: false,
    max_speaker_labels: 1,
    channel_identification: false,
    show_alternatives: false,
    max_alternatives: 1,
    vocabulary_name: "VocabularyName",
  },
  specialty: "PRIMARYCARE", # required, accepts PRIMARYCARE
  type: "CONVERSATION", # required, accepts CONVERSATION, DICTATION
})

Response structure


resp.medical_transcription_job.medical_transcription_job_name #=> String
resp.medical_transcription_job.transcription_job_status #=> String, one of "QUEUED", "IN_PROGRESS", "FAILED", "COMPLETED"
resp.medical_transcription_job.language_code #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.medical_transcription_job.media_sample_rate_hertz #=> Integer
resp.medical_transcription_job.media_format #=> String, one of "mp3", "mp4", "wav", "flac", "ogg", "amr", "webm"
resp.medical_transcription_job.media.media_file_uri #=> String
resp.medical_transcription_job.transcript.transcript_file_uri #=> String
resp.medical_transcription_job.start_time #=> Time
resp.medical_transcription_job.creation_time #=> Time
resp.medical_transcription_job.completion_time #=> Time
resp.medical_transcription_job.failure_reason #=> String
resp.medical_transcription_job.settings.show_speaker_labels #=> true/false
resp.medical_transcription_job.settings.max_speaker_labels #=> Integer
resp.medical_transcription_job.settings.channel_identification #=> true/false
resp.medical_transcription_job.settings.show_alternatives #=> true/false
resp.medical_transcription_job.settings.max_alternatives #=> Integer
resp.medical_transcription_job.settings.vocabulary_name #=> String
resp.medical_transcription_job.specialty #=> String, one of "PRIMARYCARE"
resp.medical_transcription_job.type #=> String, one of "CONVERSATION", "DICTATION"

Options Hash (options):

  • :medical_transcription_job_name (required, String)

    The name of the medical transcription job. You can\'t use the strings \".\" or \"..\" by themselves as the job name. The name must also be unique within an AWS account. If you try to create a medical transcription job with the same name as a previous medical transcription job, you get a ConflictException error.

  • :language_code (required, String)

    The language code for the language spoken in the input media file. US English (en-US) is the valid value for medical transcription jobs. Any other value you enter for language code results in a BadRequestException error.

  • :media_sample_rate_hertz (Integer)

    The sample rate, in Hertz, of the audio track in the input media file.

    If you do not specify the media sample rate, Amazon Transcribe Medical determines the sample rate. If you specify the sample rate, it must match the rate detected by Amazon Transcribe Medical. In most cases, you should leave the MediaSampleRateHertz field blank and let Amazon Transcribe Medical determine the sample rate.

  • :media_format (String)

    The audio format of the input media file.

  • :media (required, Types::Media)

    Describes the input media file in a transcription request.

  • :output_bucket_name (required, String)

    The Amazon S3 location where the transcription is stored.

    You must set OutputBucketName for Amazon Transcribe Medical to store the transcription results. Your transcript appears in the S3 location you specify. When you call the GetMedicalTranscriptionJob, the operation returns this location in the TranscriptFileUri field. The S3 bucket must have permissions that allow Amazon Transcribe Medical to put files in the bucket. For more information, see Permissions Required for IAM User Roles.

    You can specify an AWS Key Management Service (KMS) key to encrypt the output of your transcription using the OutputEncryptionKMSKeyId parameter. If you don\'t specify a KMS key, Amazon Transcribe Medical uses the default Amazon S3 key for server-side encryption of transcripts that are placed in your S3 bucket.

  • :output_key (String)

    You can specify a location in an Amazon S3 bucket to store the output of your medical transcription job.

    If you don\'t specify an output key, Amazon Transcribe Medical stores the output of your transcription job in the Amazon S3 bucket you specified. By default, the object key is \"your-transcription-job-name.json\".

    You can use output keys to specify the Amazon S3 prefix and file name of the transcription output. For example, specifying the Amazon S3 prefix, \"folder1/folder2/\", as an output key would lead to the output being stored as \"folder1/folder2/your-transcription-job-name.json\". If you specify \"my-other-job-name.json\" as the output key, the object key is changed to \"my-other-job-name.json\". You can use an output key to change both the prefix and the file name, for example \"folder/my-other-job-name.json\".

    If you specify an output key, you must also specify an S3 bucket in the OutputBucketName parameter.

  • :output_encryption_kms_key_id (String)

    The Amazon Resource Name (ARN) of the AWS Key Management Service (KMS) key used to encrypt the output of the transcription job. The user calling the StartMedicalTranscriptionJob operation must have permission to use the specified KMS key.

    You use either of the following to identify a KMS key in the current account:

    • KMS Key ID: \"1234abcd-12ab-34cd-56ef-1234567890ab\"

    • KMS Key Alias: \"alias/ExampleAlias\"

    You can use either of the following to identify a KMS key in the current account or another account:

    • Amazon Resource Name (ARN) of a KMS key in the current account or another account: \"arn:aws:kms:region:account ID:key/1234abcd-12ab-34cd-56ef-1234567890ab\"

    • ARN of a KMS Key Alias: \"arn:aws:kms:region:account ID:alias/ExampleAlias\"

    If you don\'t specify an encryption key, the output of the medical transcription job 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 in the OutputBucketName parameter.

  • :settings (Types::MedicalTranscriptionSetting)

    Optional settings for the medical transcription job.

  • :specialty (required, String)

    The medical specialty of any clinician speaking in the input media.

  • :type (required, String)

    The type of speech in the input audio. CONVERSATION refers to conversations between two or more speakers, e.g., a conversations between doctors and patients. DICTATION refers to single-speaker dictated speech, e.g., for clinical notes.

Returns:

See Also:

#start_transcription_job(options = {}) ⇒ Types::StartTranscriptionJobResponse

Starts an asynchronous job to transcribe speech to text.

Examples:

Request syntax with placeholder values


resp = client.start_transcription_job({
  transcription_job_name: "TranscriptionJobName", # required
  language_code: "af-ZA", # accepts af-ZA, ar-AE, ar-SA, cy-GB, 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, ga-IE, gd-GB, 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
  media_sample_rate_hertz: 1,
  media_format: "mp3", # accepts mp3, mp4, wav, flac, ogg, amr, webm
  media: { # required
    media_file_uri: "Uri",
  },
  output_bucket_name: "OutputBucketName",
  output_key: "OutputKey",
  output_encryption_kms_key_id: "KMSKeyId",
  settings: {
    vocabulary_name: "VocabularyName",
    show_speaker_labels: false,
    max_speaker_labels: 1,
    channel_identification: false,
    show_alternatives: false,
    max_alternatives: 1,
    vocabulary_filter_name: "VocabularyFilterName",
    vocabulary_filter_method: "remove", # accepts remove, mask
  },
  model_settings: {
    language_model_name: "ModelName",
  },
  job_execution_settings: {
    allow_deferred_execution: false,
    data_access_role_arn: "DataAccessRoleArn",
  },
  content_redaction: {
    redaction_type: "PII", # required, accepts PII
    redaction_output: "redacted", # required, accepts redacted, redacted_and_unredacted
  },
  identify_language: false,
  language_options: ["af-ZA"], # accepts af-ZA, ar-AE, ar-SA, cy-GB, 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, ga-IE, gd-GB, 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
})

Response structure


resp.transcription_job.transcription_job_name #=> String
resp.transcription_job.transcription_job_status #=> String, one of "QUEUED", "IN_PROGRESS", "FAILED", "COMPLETED"
resp.transcription_job.language_code #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.transcription_job.media_sample_rate_hertz #=> Integer
resp.transcription_job.media_format #=> String, one of "mp3", "mp4", "wav", "flac", "ogg", "amr", "webm"
resp.transcription_job.media.media_file_uri #=> String
resp.transcription_job.transcript.transcript_file_uri #=> String
resp.transcription_job.transcript.redacted_transcript_file_uri #=> String
resp.transcription_job.start_time #=> Time
resp.transcription_job.creation_time #=> Time
resp.transcription_job.completion_time #=> Time
resp.transcription_job.failure_reason #=> String
resp.transcription_job.settings.vocabulary_name #=> String
resp.transcription_job.settings.show_speaker_labels #=> true/false
resp.transcription_job.settings.max_speaker_labels #=> Integer
resp.transcription_job.settings.channel_identification #=> true/false
resp.transcription_job.settings.show_alternatives #=> true/false
resp.transcription_job.settings.max_alternatives #=> Integer
resp.transcription_job.settings.vocabulary_filter_name #=> String
resp.transcription_job.settings.vocabulary_filter_method #=> String, one of "remove", "mask"
resp.transcription_job.model_settings.language_model_name #=> String
resp.transcription_job.job_execution_settings.allow_deferred_execution #=> true/false
resp.transcription_job.job_execution_settings.data_access_role_arn #=> String
resp.transcription_job.content_redaction.redaction_type #=> String, one of "PII"
resp.transcription_job.content_redaction.redaction_output #=> String, one of "redacted", "redacted_and_unredacted"
resp.transcription_job.identify_language #=> true/false
resp.transcription_job.language_options #=> Array
resp.transcription_job.language_options[0] #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.transcription_job.identified_language_score #=> Float

Options Hash (options):

  • :transcription_job_name (required, String)

    The name of the job. You can\'t use the strings \".\" or \"..\" by themselves as the job name. The name must also be unique within an AWS account. If you try to create a transcription job with the same name as a previous transcription job, you get a ConflictException error.

  • :language_code (String)

    The language code for the language used in the input media file.

  • :media_sample_rate_hertz (Integer)

    The sample rate, in Hertz, of the audio track in the input media file.

    If you do not specify the media sample rate, Amazon Transcribe determines the sample rate. If you specify the sample rate, it must match the sample rate detected by Amazon Transcribe. In most cases, you should leave the MediaSampleRateHertz field blank and let Amazon Transcribe determine the sample rate.

  • :media_format (String)

    The format of the input media file.

  • :media (required, Types::Media)

    An object that describes the input media for a transcription job.

  • :output_bucket_name (String)

    The location where the transcription is stored.

    If you set the OutputBucketName, Amazon Transcribe puts the transcript in the specified S3 bucket. When you call the GetTranscriptionJob operation, the operation returns this location in the TranscriptFileUri field. If you enable content redaction, the redacted transcript appears in RedactedTranscriptFileUri. If you enable content redaction and choose to output an unredacted transcript, that transcript\'s location still appears in the TranscriptFileUri. The S3 bucket must have permissions that allow Amazon Transcribe to put files in the bucket. For more information, see Permissions Required for IAM User Roles.

    You can specify an AWS Key Management Service (KMS) key to encrypt the output of your transcription using the OutputEncryptionKMSKeyId parameter. If you don\'t specify a KMS key, Amazon Transcribe uses the default Amazon S3 key for server-side encryption of transcripts that are placed in your S3 bucket.

    If you don\'t set the OutputBucketName, Amazon Transcribe generates a pre-signed URL, a shareable URL that provides secure access to your transcription, and returns it in the TranscriptFileUri field. Use this URL to download the transcription.

  • :output_key (String)

    You can specify a location in an Amazon S3 bucket to store the output of your transcription job.

    If you don\'t specify an output key, Amazon Transcribe stores the output of your transcription job in the Amazon S3 bucket you specified. By default, the object key is \"your-transcription-job-name.json\".

    You can use output keys to specify the Amazon S3 prefix and file name of the transcription output. For example, specifying the Amazon S3 prefix, \"folder1/folder2/\", as an output key would lead to the output being stored as \"folder1/folder2/your-transcription-job-name.json\". If you specify \"my-other-job-name.json\" as the output key, the object key is changed to \"my-other-job-name.json\". You can use an output key to change both the prefix and the file name, for example \"folder/my-other-job-name.json\".

    If you specify an output key, you must also specify an S3 bucket in the OutputBucketName parameter.

  • :output_encryption_kms_key_id (String)

    The Amazon Resource Name (ARN) of the AWS Key Management Service (KMS) key used to encrypt the output of the transcription job. The user calling the StartTranscriptionJob operation must have permission to use the specified KMS key.

    You can use either of the following to identify a KMS key in the current account:

    • KMS Key ID: \"1234abcd-12ab-34cd-56ef-1234567890ab\"

    • KMS Key Alias: \"alias/ExampleAlias\"

    You can use either of the following to identify a KMS key in the current account or another account:

    • Amazon Resource Name (ARN) of a KMS Key: \"arn:aws:kms:region:account ID:key/1234abcd-12ab-34cd-56ef-1234567890ab\"

    • ARN of a KMS Key Alias: \"arn:aws:kms:region:account ID:alias/ExampleAlias\"

    If you don\'t specify an encryption key, the output of the transcription job 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 in the OutputBucketName parameter.

  • :settings (Types::Settings)

    A Settings object that provides optional settings for a transcription job.

  • :model_settings (Types::ModelSettings)

    Choose the custom language model you use for your transcription job in this parameter.

  • :job_execution_settings (Types::JobExecutionSettings)

    Provides information about how a transcription job is executed. Use this field to indicate that the job can be queued for deferred execution if the concurrency limit is reached and there are no slots available to immediately run the job.

  • :content_redaction (Types::ContentRedaction)

    An object that contains the request parameters for content redaction.

  • :identify_language (Boolean)

    Set this field to true to enable automatic language identification. Automatic language identification is disabled by default. You receive a BadRequestException error if you enter a value for a LanguageCode.

  • :language_options (Array<String>)

    An object containing a list of languages that might be present in your collection of audio files. Automatic language identification chooses a language that best matches the source audio from that list.

Returns:

See Also:

#update_medical_vocabulary(options = {}) ⇒ Types::UpdateMedicalVocabularyResponse

Updates a vocabulary with new values that you provide in a different text file from the one you used to create the vocabulary. The UpdateMedicalVocabulary operation overwrites all of the existing information with the values that you provide in the request.

Examples:

Request syntax with placeholder values


resp = client.update_medical_vocabulary({
  vocabulary_name: "VocabularyName", # required
  language_code: "af-ZA", # required, accepts af-ZA, ar-AE, ar-SA, cy-GB, 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, ga-IE, gd-GB, 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
  vocabulary_file_uri: "Uri",
})

Response structure


resp.vocabulary_name #=> String
resp.language_code #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.last_modified_time #=> Time
resp.vocabulary_state #=> String, one of "PENDING", "READY", "FAILED"

Options Hash (options):

  • :vocabulary_name (required, String)

    The name of the vocabulary to update. The name is case sensitive. If you try to update a vocabulary with the same name as a vocabulary you\'ve already made, you get a ConflictException error.

  • :language_code (required, String)

    The language code of the language used for the entries in the updated vocabulary. US English (en-US) is the only valid language code in Amazon Transcribe Medical.

  • :vocabulary_file_uri (String)

    The location in Amazon S3 of the text file that contains the you use for your custom vocabulary. The URI must be in the same AWS Region as the resource that you are calling. The following is the format for a URI:

    https://s3.<aws-region>.amazonaws.com/<bucket-name>/<keyprefix>/<objectkey>

    For example:

    https://s3.us-east-1.amazonaws.com/AWSDOC-EXAMPLE-BUCKET/vocab.txt

    For more information about Amazon S3 object names, see Object Keys in the Amazon S3 Developer Guide.

    For more information about custom vocabularies in Amazon Transcribe Medical, see Medical Custom Vocabularies.

Returns:

See Also:

#update_vocabulary(options = {}) ⇒ Types::UpdateVocabularyResponse

Updates an existing vocabulary with new values. The UpdateVocabulary operation overwrites all of the existing information with the values that you provide in the request.

Examples:

Request syntax with placeholder values


resp = client.update_vocabulary({
  vocabulary_name: "VocabularyName", # required
  language_code: "af-ZA", # required, accepts af-ZA, ar-AE, ar-SA, cy-GB, 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, ga-IE, gd-GB, 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
  phrases: ["Phrase"],
  vocabulary_file_uri: "Uri",
})

Response structure


resp.vocabulary_name #=> String
resp.language_code #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.last_modified_time #=> Time
resp.vocabulary_state #=> String, one of "PENDING", "READY", "FAILED"

Options Hash (options):

  • :vocabulary_name (required, String)

    The name of the vocabulary to update. The name is case sensitive. If you try to update a vocabulary with the same name as a previous vocabulary you will receive a ConflictException error.

  • :language_code (required, String)

    The language code of the vocabulary entries.

  • :phrases (Array<String>)

    An array of strings containing the vocabulary entries.

  • :vocabulary_file_uri (String)

    The S3 location of the text file that contains the definition of the custom vocabulary. The URI must be in the same region as the API endpoint that you are calling. The general form is

    For example:

    For more information about S3 object names, see Object Keys in the Amazon S3 Developer Guide.

    For more information about custom vocabularies, see Custom Vocabularies.

Returns:

See Also:

#update_vocabulary_filter(options = {}) ⇒ Types::UpdateVocabularyFilterResponse

Updates a vocabulary filter with a new list of filtered words.

Examples:

Request syntax with placeholder values


resp = client.update_vocabulary_filter({
  vocabulary_filter_name: "VocabularyFilterName", # required
  words: ["Word"],
  vocabulary_filter_file_uri: "Uri",
})

Response structure


resp.vocabulary_filter_name #=> String
resp.language_code #=> String, one of "af-ZA", "ar-AE", "ar-SA", "cy-GB", "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", "ga-IE", "gd-GB", "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"
resp.last_modified_time #=> Time

Options Hash (options):

  • :vocabulary_filter_name (required, String)

    The name of the vocabulary filter to update. If you try to update a vocabulary filter with the same name as another vocabulary filter, you get a ConflictException error.

  • :words (Array<String>)

    The words to use in the vocabulary filter. Only use characters from the character set defined for custom vocabularies. For a list of character sets, see Character Sets for Custom Vocabularies.

    If you provide a list of words in the Words parameter, you can\'t use the VocabularyFilterFileUri parameter.

  • :vocabulary_filter_file_uri (String)

    The Amazon S3 location of a text file used as input to create the vocabulary filter. Only use characters from the character set defined for custom vocabularies. For a list of character sets, see Character Sets for Custom Vocabularies.

    The specified file must be less than 50 KB of UTF-8 characters.

    If you provide the location of a list of words in the VocabularyFilterFileUri parameter, you can\'t use the Words parameter.

Returns:

See Also:

#wait_until(waiter_name, params = {}) {|waiter| ... } ⇒ Boolean

Waiters polls an API operation until a resource enters a desired state.

Basic Usage

Waiters will poll until they are succesful, they fail by entering a terminal state, or until a maximum number of attempts are made.

# polls in a loop, sleeping between attempts client.waiter_until(waiter_name, params)

Configuration

You can configure the maximum number of polling attempts, and the delay (in seconds) between each polling attempt. You configure waiters by passing a block to #wait_until:

# poll for ~25 seconds
client.wait_until(...) do |w|
  w.max_attempts = 5
  w.delay = 5
end

Callbacks

You can be notified before each polling attempt and before each delay. If you throw :success or :failure from these callbacks, it will terminate the waiter.

started_at = Time.now
client.wait_until(...) do |w|

  # disable max attempts
  w.max_attempts = nil

  # poll for 1 hour, instead of a number of attempts
  w.before_wait do |attempts, response|
    throw :failure if Time.now - started_at > 3600
  end

end

Handling Errors

When a waiter is successful, it returns true. When a waiter fails, it raises an error. All errors raised extend from Waiters::Errors::WaiterFailed.

begin
  client.wait_until(...)
rescue Aws::Waiters::Errors::WaiterFailed
  # resource did not enter the desired state in time
end

Parameters:

  • waiter_name (Symbol)

    The name of the waiter. See #waiter_names for a full list of supported waiters.

  • params (Hash) (defaults to: {})

    Additional request parameters. See the #waiter_names for a list of supported waiters and what request they call. The called request determines the list of accepted parameters.

Yield Parameters:

Returns:

  • (Boolean)

    Returns true if the waiter was successful.

Raises:

  • (Errors::FailureStateError)

    Raised when the waiter terminates because the waiter has entered a state that it will not transition out of, preventing success.

  • (Errors::TooManyAttemptsError)

    Raised when the configured maximum number of attempts have been made, and the waiter is not yet successful.

  • (Errors::UnexpectedError)

    Raised when an error is encounted while polling for a resource that is not expected.

  • (Errors::NoSuchWaiterError)

    Raised when you request to wait for an unknown state.

#waiter_namesArray<Symbol>

Returns the list of supported waiters. The following table lists the supported waiters and the client method they call:

Waiter NameClient MethodDefault Delay:Default Max Attempts:

Returns:

  • (Array<Symbol>)

    the list of supported waiters.