# Cloud Translation API . projects

## Instance Methods

Returns the locations Resource.

Detects the language of text within a request.

Returns a list of supported languages for translation.

Translates input text and returns translated text.

### Method Details

`detectLanguage(parent, body=None, x__xgafv=None)`

    Detects the language of text within a request.

    Args:
      parent: string, 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. (required)
      body: object, The request body.
        The object takes the form of:

    { # The request message for language detection.
        "mimeType": "A String", # Optional. The format of the source text, for example, "text/html",
            # "text/plain". If left blank, the MIME type defaults to "text/html".
        "content": "A String", # The content of the input stored as a string.
        "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.
          "a_key": "A String",
        },
        "model": "A String", # 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.
      }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # The response message for language detection.
        "languages": [ # A list of detected languages sorted by detection confidence in descending
            # order. The most probable language first.
          { # The response message for language detection.
            "languageCode": "A String", # The BCP-47 language code of source content in the request, detected
                # automatically.
            "confidence": 3.14, # The confidence of the detection result for this language.
          },
        ],
      }

`getSupportedLanguages(parent, displayLanguageCode=None, model=None, x__xgafv=None)`

    Returns a list of supported languages for translation.

    Args:
      parent: string, 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. (required)
      displayLanguageCode: string, 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.
      model: string, 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.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # 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.
          { # A single supported language response corresponds to information related
              # to one supported language.
            "languageCode": "A String", # 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')
            "displayName": "A String", # Human readable name of the language localized in the display language
                # specified in the request.
            "supportSource": True or False, # Can be used as source language.
            "supportTarget": True or False, # Can be used as target language.
          },
        ],
      }

`translateText(parent, body=None, x__xgafv=None)`

    Translates input text and returns translated text.

    Args:
      parent: string, 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. (required)
      body: object, The request body.
        The object takes the form of:

    { # The request message for synchronous translation.
        "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.
          "a_key": "A String",
        },
        "targetLanguageCode": "A String", # 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.
        "sourceLanguageCode": "A String", # 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.
        "mimeType": "A String", # Optional. The format of the source text, for example, "text/html",
            #  "text/plain". If left blank, the MIME type defaults to "text/html".
        "glossaryConfig": { # Configures which glossary should be used for a specific target language, # 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.
            # and defines options for applying that glossary.
          "ignoreCase": True or False, # Optional. Indicates match is case-insensitive.
              # Default value is false if missing.
          "glossary": "A String", # Required. Specifies the glossary used for this translation. Use
              # this format: projects/*/locations/*/glossaries/*
        },
        "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.
          "A String",
        ],
        "model": "A String", # 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.
      }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        {
        "translations": [ # Text translation responses with no glossary applied.
            # This field has the same length as
            # `contents`.
          { # A single translation response.
            "detectedLanguageCode": "A String", # 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.
            "model": "A String", # 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`.
            "glossaryConfig": { # Configures which glossary should be used for a specific target language, # The `glossary_config` used for this translation.
                # and defines options for applying that glossary.
              "ignoreCase": True or False, # Optional. Indicates match is case-insensitive.
                  # Default value is false if missing.
              "glossary": "A String", # Required. Specifies the glossary used for this translation. Use
                  # this format: projects/*/locations/*/glossaries/*
            },
            "translatedText": "A String", # Text translated into the target language.
          },
        ],
        "glossaryTranslations": [ # Text translation responses if a glossary is provided in the request.
            # This can be the same as
            # `translations` if no terms apply.
            # This field has the same length as
            # `contents`.
          { # A single translation response.
            "detectedLanguageCode": "A String", # 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.
            "model": "A String", # 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`.
            "glossaryConfig": { # Configures which glossary should be used for a specific target language, # The `glossary_config` used for this translation.
                # and defines options for applying that glossary.
              "ignoreCase": True or False, # Optional. Indicates match is case-insensitive.
                  # Default value is false if missing.
              "glossary": "A String", # Required. Specifies the glossary used for this translation. Use
                  # this format: projects/*/locations/*/glossaries/*
            },
            "translatedText": "A String", # Text translated into the target language.
          },
        ],
      }