As of January 1, 2020 this library no longer supports Python 2 on the latest released version. Library versions released prior to that date will continue to be available. For more information please visit Python 2 support on Google Cloud.

Types for Google Cloud Translate v3 API

class google.cloud.translate_v3.types.BatchTranslateMetadata(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

State metadata for the batch translation operation.

state

The state of the operation.

Type

State

translated_characters

Number of successfully translated characters so far (Unicode codepoints).

Type

int

failed_characters

Number of characters that have failed to process so far (Unicode codepoints).

Type

int

total_characters

Total number of characters (Unicode codepoints). This is the total number of codepoints from input files times the number of target languages and appears here shortly after the call is submitted.

Type

int

submit_time

Time when the operation was submitted.

Type

Timestamp

class State(value)[source]

State of the job.

class google.cloud.translate_v3.types.BatchTranslateResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Stored in the [google.longrunning.Operation.response][google.longrunning.Operation.response] field returned by BatchTranslateText if at least one sentence is translated successfully.

total_characters

Total number of characters (Unicode codepoints).

Type

int

translated_characters

Number of successfully translated characters (Unicode codepoints).

Type

int

failed_characters

Number of characters that have failed to process (Unicode codepoints).

Type

int

submit_time

Time when the operation was submitted.

Type

Timestamp

end_time

The time when the operation is finished and [google.longrunning.Operation.done][google.longrunning.Operation.done] is set to true.

Type

Timestamp

class google.cloud.translate_v3.types.BatchTranslateTextRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

The batch translation request.

parent

Required. Location to make a call. Must refer to a caller’s project.

Format: projects/{project-number-or-id}/locations/{location-id}.

The global location is not supported for batch translation.

Only AutoML Translation models or glossaries within the same region (have the same location-id) can be used, otherwise an INVALID_ARGUMENT (400) error is returned.

Type

str

source_language_code

Required. Source language code.

Type

str

target_language_codes

Required. Specify up to 10 language codes here.

Type

Sequence[str]

models

Optional. The models to use for translation. Map’s key is target language code. Map’s value is model name. Value can be a built-in general model, or an AutoML Translation model.

The value format depends on model type:

  • AutoML Translation models: projects/{project-number-or-id}/locations/{location-id}/models/{model-id}

  • General (built-in) models: projects/{project-number-or-id}/locations/{location-id}/models/general/nmt, projects/{project-number-or-id}/locations/{location-id}/models/general/base

If the map is empty or a specific model is not requested for a language pair, then default google model (nmt) is used.

Type

Sequence[ModelsEntry]

input_configs

Required. Input configurations. The total number of files matched should be <= 1000. The total content size should be <= 100M Unicode codepoints. The files must use UTF-8 encoding.

Type

Sequence[InputConfig]

output_config

Required. Output configuration. If 2 input configs match to the same file (that is, same input path), we don’t generate output for duplicate inputs.

Type

OutputConfig

glossaries

Optional. Glossaries to be applied for translation. It’s keyed by target language code.

Type

Sequence[GlossariesEntry]

labels

Optional. The labels with user-defined metadata for the request. Label keys and values can be no longer than 63 characters (Unicode codepoints), can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. Label values are optional. Label keys must start with a letter. See https://cloud.google.com/translate/docs/labels for more information.

Type

Sequence[LabelsEntry]

class GlossariesEntry(mapping=None, *, ignore_unknown_fields=False, **kwargs)
class LabelsEntry(mapping=None, *, ignore_unknown_fields=False, **kwargs)
class ModelsEntry(mapping=None, *, ignore_unknown_fields=False, **kwargs)
class google.cloud.translate_v3.types.CreateGlossaryMetadata(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Stored in the [google.longrunning.Operation.metadata][google.longrunning.Operation.metadata] field returned by CreateGlossary.

name

The name of the glossary that is being created.

Type

str

state

The current state of the glossary creation operation.

Type

State

submit_time

The time when the operation was submitted to the server.

Type

Timestamp

class State(value)[source]

Enumerates the possible states that the creation request can be in.

class google.cloud.translate_v3.types.CreateGlossaryRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Request message for CreateGlossary.

parent

Required. The project name.

Type

str

glossary

Required. The glossary to create.

Type

Glossary

class google.cloud.translate_v3.types.DeleteGlossaryMetadata(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Stored in the [google.longrunning.Operation.metadata][google.longrunning.Operation.metadata] field returned by DeleteGlossary.

name

The name of the glossary that is being deleted.

Type

str

state

The current state of the glossary deletion operation.

Type

State

submit_time

The time when the operation was submitted to the server.

Type

Timestamp

class State(value)[source]

Enumerates the possible states that the creation request can be in.

class google.cloud.translate_v3.types.DeleteGlossaryRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Request message for DeleteGlossary.

name

Required. The name of the glossary to delete.

Type

str

class google.cloud.translate_v3.types.DeleteGlossaryResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Stored in the [google.longrunning.Operation.response][google.longrunning.Operation.response] field returned by DeleteGlossary.

name

The name of the deleted glossary.

Type

str

submit_time

The time when the operation was submitted to the server.

Type

Timestamp

end_time

The time when the glossary deletion is finished and [google.longrunning.Operation.done][google.longrunning.Operation.done] is set to true.

Type

Timestamp

class google.cloud.translate_v3.types.DetectLanguageRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

The request message for language detection.

parent

Required. Project or location to make a call. Must refer to a caller’s project.

Format: projects/{project-number-or-id}/locations/{location-id} or projects/{project-number-or-id}.

For global calls, use projects/{project-number-or-id}/locations/global or projects/{project-number-or-id}.

Only models within the same region (has same location-id) can be used. Otherwise an INVALID_ARGUMENT (400) error is returned.

Type

str

model

Optional. The language detection model to be used.

Format: projects/{project-number-or-id}/locations/{location-id}/models/language-detection/{model-id}

Only one language detection model is currently supported: projects/{project-number-or-id}/locations/{location-id}/models/language-detection/default.

If not specified, the default model is used.

Type

str

content

The content of the input stored as a string.

Type

str

mime_type

Optional. The format of the source text, for example, “text/html”, “text/plain”. If left blank, the MIME type defaults to “text/html”.

Type

str

labels

Optional. The labels with user-defined metadata for the request. Label keys and values can be no longer than 63 characters (Unicode codepoints), can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. Label values are optional. Label keys must start with a letter. See https://cloud.google.com/translate/docs/labels for more information.

Type

Sequence[LabelsEntry]

class LabelsEntry(mapping=None, *, ignore_unknown_fields=False, **kwargs)
class google.cloud.translate_v3.types.DetectLanguageResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

The response message for language detection.

languages

A list of detected languages sorted by detection confidence in descending order. The most probable language first.

Type

Sequence[DetectedLanguage]

class google.cloud.translate_v3.types.DetectedLanguage(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

The response message for language detection.

language_code

The BCP-47 language code of source content in the request, detected automatically.

Type

str

confidence

The confidence of the detection result for this language.

Type

float

class google.cloud.translate_v3.types.GcsDestination(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

The Google Cloud Storage location for the output content.

output_uri_prefix

Required. There must be no files under ‘output_uri_prefix’. ‘output_uri_prefix’ must end with “/” and start with “gs://”, otherwise an INVALID_ARGUMENT (400) error is returned.

Type

str

class google.cloud.translate_v3.types.GcsSource(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

The Google Cloud Storage location for the input content.

input_uri

Required. Source data URI. For example, gs://my_bucket/my_object.

Type

str

class google.cloud.translate_v3.types.GetGlossaryRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Request message for GetGlossary.

name

Required. The name of the glossary to retrieve.

Type

str

class google.cloud.translate_v3.types.GetSupportedLanguagesRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

The request message for discovering supported languages.

parent

Required. Project or location to make a call. Must refer to a caller’s project.

Format: projects/{project-number-or-id} or projects/{project-number-or-id}/locations/{location-id}.

For global calls, use projects/{project-number-or-id}/locations/global or projects/{project-number-or-id}.

Non-global location is required for AutoML models.

Only models within the same region (have same location-id) can be used, otherwise an INVALID_ARGUMENT (400) error is returned.

Type

str

display_language_code

Optional. The language to use to return localized, human readable names of supported languages. If missing, then display names are not returned in a response.

Type

str

model

Optional. Get supported languages of this model.

The format depends on model type:

  • AutoML Translation models: projects/{project-number-or-id}/locations/{location-id}/models/{model-id}

  • General (built-in) models: projects/{project-number-or-id}/locations/{location-id}/models/general/nmt, projects/{project-number-or-id}/locations/{location-id}/models/general/base

Returns languages supported by the specified model. If missing, we get supported languages of Google general base (PBMT) model.

Type

str

class google.cloud.translate_v3.types.Glossary(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Represents a glossary built from user provided data.

name

Required. The resource name of the glossary. Glossary names have the form projects/{project-number-or-id}/locations/{location-id}/glossaries/{glossary-id}.

Type

str

language_pair

Used with unidirectional glossaries.

Type

LanguageCodePair

language_codes_set

Used with equivalent term set glossaries.

Type

LanguageCodesSet

input_config

Required. Provides examples to build the glossary from. Total glossary must not exceed 10M Unicode codepoints.

Type

GlossaryInputConfig

entry_count

Output only. The number of entries defined in the glossary.

Type

int

submit_time

Output only. When CreateGlossary was called.

Type

Timestamp

end_time

Output only. When the glossary creation was finished.

Type

Timestamp

class LanguageCodePair(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Used with unidirectional glossaries.

source_language_code

Required. The BCP-47 language code of the input text, for example, “en-US”. Expected to be an exact match for GlossaryTerm.language_code.

Type

str

target_language_code

Required. The BCP-47 language code for translation output, for example, “zh-CN”. Expected to be an exact match for GlossaryTerm.language_code.

Type

str

class LanguageCodesSet(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Used with equivalent term set glossaries.

language_codes

The BCP-47 language code(s) for terms defined in the glossary. All entries are unique. The list contains at least two entries. Expected to be an exact match for GlossaryTerm.language_code.

Type

Sequence[str]

class google.cloud.translate_v3.types.GlossaryInputConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Input configuration for glossaries.

gcs_source

Required. Google Cloud Storage location of glossary data. File format is determined based on the filename extension. API returns [google.rpc.Code.INVALID_ARGUMENT] for unsupported URI-s and file formats. Wildcards are not allowed. This must be a single file in one of the following formats:

For unidirectional glossaries:

  • TSV/CSV (.tsv/.csv): 2 column file, tab- or comma-separated. The first column is source text. The second column is target text. The file must not contain headers. That is, the first row is data, not column names.

  • TMX (.tmx): TMX file with parallel data defining source/target term pairs.

For equivalent term sets glossaries:

  • CSV (.csv): Multi-column CSV file defining equivalent glossary terms in multiple languages. The format is defined for Google Translation Toolkit and documented in Use a glossary.

Type

GcsSource

class google.cloud.translate_v3.types.InputConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Input configuration for BatchTranslateText request.

mime_type

Optional. Can be “text/plain” or “text/html”. For .tsv, “text/html” is used if mime_type is missing. For .html, this field must be “text/html” or empty. For .txt, this field must be “text/plain” or empty.

Type

str

gcs_source

Required. Google Cloud Storage location for the source input. This can be a single file (for example, gs://translation-test/input.tsv) or a wildcard (for example, gs://translation-test/*). If a file extension is .tsv, it can contain either one or two columns. The first column (optional) is the id of the text request. If the first column is missing, we use the row number (0-based) from the input file as the ID in the output file. The second column is the actual text to be translated. We recommend each row be <= 10K Unicode codepoints, otherwise an error might be returned. Note that the input tsv must be RFC 4180 compliant.

You could use https://github.com/Clever/csvlint to check potential formatting errors in your tsv file. csvlint –delimiter=’t’ your_input_file.tsv

The other supported file extensions are .txt or .html, which is treated as a single large chunk of text.

Type

GcsSource

class google.cloud.translate_v3.types.ListGlossariesRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Request message for ListGlossaries.

parent

Required. The name of the project from which to list all of the glossaries.

Type

str

page_size

Optional. Requested page size. The server may return fewer glossaries than requested. If unspecified, the server picks an appropriate default.

Type

int

page_token

Optional. A token identifying a page of results the server should return. Typically, this is the value of [ListGlossariesResponse.next_page_token] returned from the previous call to ListGlossaries method. The first page is returned if page_tokenis empty or missing.

Type

str

filter

Optional. Filter specifying constraints of a list operation. Filtering is not supported yet, and the parameter currently has no effect. If missing, no filtering is performed.

Type

str

class google.cloud.translate_v3.types.ListGlossariesResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Response message for ListGlossaries.

glossaries

The list of glossaries for a project.

Type

Sequence[Glossary]

next_page_token

A token to retrieve a page of results. Pass this value in the [ListGlossariesRequest.page_token] field in the subsequent call to ListGlossaries method to retrieve the next page of results.

Type

str

class google.cloud.translate_v3.types.OutputConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Output configuration for BatchTranslateText request.

gcs_destination

Google Cloud Storage destination for output content. For every single input file (for example, gs://a/b/c.[extension]), we generate at most 2 * n output files. (n is the # of target_language_codes in the BatchTranslateTextRequest).

Output files (tsv) generated are compliant with RFC 4180 except that record delimiters are ‘n’ instead of ‘rn’. We don’t provide any way to change record delimiters.

While the input files are being processed, we write/update an index file ‘index.csv’ under ‘output_uri_prefix’ (for example, gs://translation-test/index.csv) The index file is generated/updated as new files are being translated. The format is:

input_file,target_language_code,translations_file,errors_file, glossary_translations_file,glossary_errors_file

input_file is one file we matched using gcs_source.input_uri. target_language_code is provided in the request. translations_file contains the translations. (details provided below) errors_file contains the errors during processing of the file. (details below). Both translations_file and errors_file could be empty strings if we have no content to output. glossary_translations_file and glossary_errors_file are always empty strings if the input_file is tsv. They could also be empty if we have no content to output.

Once a row is present in index.csv, the input/output matching never changes. Callers should also expect all the content in input_file are processed and ready to be consumed (that is, no partial output file is written).

The format of translations_file (for target language code ‘trg’) is: gs://translation_test/a_b_c\_'trg'_translations.[extension]

If the input file extension is tsv, the output has the following columns: Column 1: ID of the request provided in the input, if it’s not provided in the input, then the input row number is used (0-based). Column 2: source sentence. Column 3: translation without applying a glossary. Empty string if there is an error. Column 4 (only present if a glossary is provided in the request): translation after applying the glossary. Empty string if there is an error applying the glossary. Could be same string as column 3 if there is no glossary applied.

If input file extension is a txt or html, the translation is directly written to the output file. If glossary is requested, a separate glossary_translations_file has format of gs://translation_test/a_b_c\_'trg'_glossary_translations.[extension]

The format of errors file (for target language code ‘trg’) is: gs://translation_test/a_b_c\_'trg'_errors.[extension]

If the input file extension is tsv, errors_file contains the following: Column 1: ID of the request provided in the input, if it’s not provided in the input, then the input row number is used (0-based). Column 2: source sentence. Column 3: Error detail for the translation. Could be empty. Column 4 (only present if a glossary is provided in the request): Error when applying the glossary.

If the input file extension is txt or html, glossary_error_file will be generated that contains error details. glossary_error_file has format of gs://translation_test/a_b_c\_'trg'_glossary_errors.[extension]

Type

GcsDestination

class google.cloud.translate_v3.types.SupportedLanguage(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

A single supported language response corresponds to information related to one supported language.

language_code

Supported language code, generally consisting of its ISO 639-1 identifier, for example, ‘en’, ‘ja’. In certain cases, BCP-47 codes including language and region identifiers are returned (for example, ‘zh-TW’ and ‘zh-CN’)

Type

str

display_name

Human readable name of the language localized in the display language specified in the request.

Type

str

support_source

Can be used as source language.

Type

bool

support_target

Can be used as target language.

Type

bool

class google.cloud.translate_v3.types.SupportedLanguages(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

The response message for discovering supported languages.

languages

A list of supported language responses. This list contains an entry for each language the Translation API supports.

Type

Sequence[SupportedLanguage]

class google.cloud.translate_v3.types.TranslateTextGlossaryConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Configures which glossary should be used for a specific target language, and defines options for applying that glossary.

glossary

Required. Specifies the glossary used for this translation. Use this format: projects//locations//glossaries/*

Type

str

ignore_case

Optional. Indicates match is case- nsensitive. Default value is false if missing.

Type

bool

class google.cloud.translate_v3.types.TranslateTextRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

The request message for synchronous translation.

contents

Required. The content of the input in string format. We recommend the total content be less than 30k codepoints. Use BatchTranslateText for larger text.

Type

Sequence[str]

mime_type

Optional. The format of the source text, for example, “text/html”, “text/plain”. If left blank, the MIME type defaults to “text/html”.

Type

str

source_language_code

Optional. The BCP-47 language code of the input text if known, for example, “en-US” or “sr-Latn”. Supported language codes are listed in Language Support. If the source language isn’t specified, the API attempts to identify the source language automatically and returns the source language within the response.

Type

str

target_language_code

Required. The BCP-47 language code to use for translation of the input text, set to one of the language codes listed in Language Support.

Type

str

parent

Required. Project or location to make a call. Must refer to a caller’s project.

Format: projects/{project-number-or-id} or projects/{project-number-or-id}/locations/{location-id}.

For global calls, use projects/{project-number-or-id}/locations/global or projects/{project-number-or-id}.

Non-global location is required for requests using AutoML models or custom glossaries.

Models and glossaries must be within the same region (have same location-id), otherwise an INVALID_ARGUMENT (400) error is returned.

Type

str

model

Optional. The model type requested for this translation.

The format depends on model type:

  • AutoML Translation models: projects/{project-number-or-id}/locations/{location-id}/models/{model-id}

  • General (built-in) models: projects/{project-number-or-id}/locations/{location-id}/models/general/nmt, projects/{project-number-or-id}/locations/{location-id}/models/general/base

For global (non-regionalized) requests, use location-id global. For example, projects/{project-number-or-id}/locations/global/models/general/nmt.

If missing, the system decides which google base model to use.

Type

str

glossary_config

Optional. Glossary to be applied. The glossary must be within the same region (have the same location-id) as the model, otherwise an INVALID_ARGUMENT (400) error is returned.

Type

TranslateTextGlossaryConfig

labels

Optional. The labels with user-defined metadata for the request. Label keys and values can be no longer than 63 characters (Unicode codepoints), can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. Label values are optional. Label keys must start with a letter. See https://cloud.google.com/translate/docs/labels for more information.

Type

Sequence[LabelsEntry]

class LabelsEntry(mapping=None, *, ignore_unknown_fields=False, **kwargs)
class google.cloud.translate_v3.types.TranslateTextResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]
translations

Text translation responses with no glossary applied. This field has the same length as [contents][google.cloud.translation.v3.TranslateTextRequest.contents].

Type

Sequence[Translation]

glossary_translations

Text translation responses if a glossary is provided in the request. This can be the same as [translations][google.cloud.translation.v3.TranslateTextResponse.translations] if no terms apply. This field has the same length as [contents][google.cloud.translation.v3.TranslateTextRequest.contents].

Type

Sequence[Translation]

class google.cloud.translate_v3.types.Translation(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

A single translation response.

translated_text

Text translated into the target language.

Type

str

model

Only present when model is present in the request. model here is normalized to have project number.

For example: If the model requested in TranslationTextRequest is projects/{project-id}/locations/{location-id}/models/general/nmt then model here would be normalized to projects/{project-number}/locations/{location-id}/models/general/nmt.

Type

str

detected_language_code

The BCP-47 language code of source text in the initial request, detected automatically, if no source language was passed within the initial request. If the source language was passed, auto-detection of the language does not occur and this field is empty.

Type

str

glossary_config

The glossary_config used for this translation.

Type

TranslateTextGlossaryConfig