Tradutor 3.0: Idiomas
Obtém o conjunto de idiomas atualmente suportados por outras operações do Tradutor.
URL do Pedido
Envie um pedido GET
para:
https://api.cognitive.microsofttranslator.com/languages?api-version=3.0
Para redes virtuais, use seu ponto de extremidade de domínio personalizado:
https://<your-custom-domain>.cognitiveservices.azure.com/languages?api-version=3.0
Para obter mais informações, consulte Suporte de rede virtual para serviço de tradutor selecionado configuração e suporte de rede e ponto final privado.
Parâmetros de solicitação
Os parâmetros de solicitação passados na cadeia de caracteres de consulta são:
Parâmetros de consultas | Description |
---|---|
api-version | Parâmetro necessário A versão da API solicitada pelo cliente. O valor deve ser 3.0 . |
âmbito | Parâmetro opcional. Uma lista separada por vírgulas de nomes que definem o grupo de idiomas a serem retornados. Os nomes de grupo permitidos são: translation , transliteration e dictionary . Se nenhum escopo for dado, todos os grupos serão retornados, o que equivale a passar scope=translation,transliteration,dictionary . |
Ver corpo da resposta.
Os cabeçalhos de solicitação são:
Cabeçalhos | Description |
---|---|
Accept-Language | Cabeçalho de solicitação opcional. O idioma a utilizar nas cadeias da interface de utilizador. Alguns dos campos na resposta são nomes de idiomas ou nomes de regiões. Use esse parâmetro para definir o idioma no qual esses nomes são retornados. O idioma é especificado fornecendo uma tag de 47 idiomas bem formada BCP . Por exemplo, use o valor fr para solicitar nomes em francês ou use o valor zh-Hant para solicitar nomes em chinês tradicional.Os nomes são fornecidos no idioma inglês quando um idioma de destino não é especificado ou quando a localização não está disponível. |
X-ClientTraceId | Cabeçalho de solicitação opcional. Um GUID gerado pelo cliente para identificar exclusivamente a solicitação. |
A autenticação não é necessária para obter recursos linguísticos.
Corpo da resposta
Um cliente usa o scope
parâmetro query para definir quais grupos de idiomas listar.
scope=translation
fornece idiomas suportados para traduzir texto de um idioma para outro;scope=transliteration
fornece recursos para converter texto em um idioma de um script para outro;scope=dictionary
Fornece pares de idiomas para os quaisDictionary
as operações retornam dados.
Um cliente pode recuperar vários grupos simultaneamente especificando uma lista de nomes separados por vírgula. Por exemplo, scope=translation,transliteration,dictionary
retornaria idiomas suportados para todos os grupos.
Uma resposta bem-sucedida é um objeto JSON com uma propriedade para cada grupo solicitado:
{
"translation": {
//... set of languages supported to translate text (scope=translation)
},
"transliteration": {
//... set of languages supported to convert between scripts (scope=transliteration)
},
"dictionary": {
//... set of languages supported for alternative translations and examples (scope=dictionary)
}
}
O valor para cada propriedade é o seguinte.
translation
propriedadeO valor da
translation
propriedade é um dicionário de pares (chave, valor). Cada tecla é uma etiqueta deBCP
47 idiomas. Uma chave identifica um idioma para o qual o texto pode ser traduzido ou traduzido. O valor associado à chave é um objeto JSON com propriedades que descrevem a linguagem:name
: Nome de exibição do idioma na localidade solicitada viaAccept-Language
cabeçalho.nativeName
: Nome de exibição do idioma na localidade nativa para este idioma.dir
: Direcionalidade, que értl
para idiomas da direita para a esquerda oultr
para idiomas da esquerda para a direita.
Um exemplo é:
{ "translation": { ... "fr": { "name": "French", "nativeName": "Français", "dir": "ltr" }, ... } }
transliteration
propriedadeO valor da
transliteration
propriedade é um dicionário de pares (chave, valor). Cada tecla é uma etiqueta deBCP
47 idiomas. Uma chave identifica um idioma para o qual o texto pode ser convertido de um script para outro. O valor associado à chave é um objeto JSON com propriedades que descrevem a linguagem e seus scripts suportados:name
: Nome de exibição do idioma na localidade solicitada viaAccept-Language
cabeçalho.nativeName
: Nome de exibição do idioma na localidade nativa para este idioma.scripts
: Lista de scripts para converter. Cada elemento dascripts
lista tem propriedades:code
: Código que identifica o script.name
: Nome de exibição do script na localidade solicitada viaAccept-Language
cabeçalho.nativeName
: Nome de exibição do idioma na localidade nativa do idioma.dir
: Direcionalidade, que értl
para idiomas da direita para a esquerda oultr
para idiomas da esquerda para a direita.toScripts
: Lista de scripts disponíveis para converter texto. Cada elemento datoScripts
lista tem propriedadescode
,name
,nativeName
, edir
conforme descrito anteriormente.
Um exemplo é:
{ "transliteration": { ... "ja": { "name": "Japanese", "nativeName": "日本語", "scripts": [ { "code": "Jpan", "name": "Japanese", "nativeName": "日本語", "dir": "ltr", "toScripts": [ { "code": "Latn", "name": "Latin", "nativeName": "ラテン語", "dir": "ltr" } ] }, { "code": "Latn", "name": "Latin", "nativeName": "ラテン語", "dir": "ltr", "toScripts": [ { "code": "Jpan", "name": "Japanese", "nativeName": "日本語", "dir": "ltr" } ] } ] }, ... } }
dictionary
propriedadeO valor da
dictionary
propriedade é um dicionário de pares (chave, valor). Cada tecla é uma etiqueta deBCP
47 idiomas. A chave identifica uma língua para a qual estão disponíveis traduções e retrotraduções alternativas. O valor é um objeto JSON que descreve o idioma de origem e os idiomas de destino com traduções disponíveis:name
: Nome de exibição do idioma de origem na localidade solicitada viaAccept-Language
cabeçalho.nativeName
: Nome de exibição do idioma na localidade nativa para este idioma.dir
: Direcionalidade, que értl
para idiomas da direita para a esquerda oultr
para idiomas da esquerda para a direita.translations
: Lista de línguas com traduções alterativas e exemplos para a consulta expressa na língua de partida. Cada elemento datranslations
lista tem propriedades:name
: Nome de exibição do idioma de destino na localidade solicitada viaAccept-Language
cabeçalho.nativeName
: Nome de exibição do idioma de destino na localidade nativa para o idioma de destino.dir
: Direcionalidade, que értl
para idiomas da direita para a esquerda oultr
para idiomas da esquerda para a direita.code
: Código linguístico que identifica a língua de chegada.
Um exemplo é:
"es": { "name": "Spanish", "nativeName": "Español", "dir": "ltr", "translations": [ { "name": "English", "nativeName": "English", "dir": "ltr", "code": "en" } ] },
A estrutura do objeto de resposta não muda sem uma alteração na versão da API. Para a mesma versão da API, a lista de idiomas disponíveis pode mudar ao longo do tempo porque o Microsoft Translator estende continuamente a lista de idiomas suportados pelos seus serviços.
A lista de idiomas suportados não muda com frequência. Para economizar largura de banda de rede e melhorar a capacidade de resposta, um aplicativo cliente deve considerar o armazenamento em cache de recursos de idioma e a marca de entidade correspondente (ETag
). Em seguida, o aplicativo cliente pode consultar periodicamente (por exemplo, uma vez a cada 24 horas) o serviço para buscar o conjunto mais recente de idiomas suportados. Passar o valor atual ETag
em um If-None-Match
campo de cabeçalho permite que o serviço otimize a resposta. Se o recurso não for modificado, o serviço retornará o código de status 304 e um corpo de resposta vazio.
Cabeçalhos de resposta
Cabeçalhos | Description |
---|---|
ETag | Valor atual da marca de entidade para os grupos solicitados de idiomas suportados. Para tornar as solicitações subsequentes mais eficientes, o cliente pode enviar o ETag valor em um If-None-Match campo de cabeçalho. |
X-RequestId | Valor gerado pelo serviço para identificar a solicitação. Ele é usado para fins de solução de problemas. |
Códigos de status de resposta
A seguir estão os possíveis códigos de status HTTP que uma solicitação retorna.
Código de Estado | Description |
---|---|
200 | Êxito. |
304 | O recurso não é modificado e está alinhado com a versão especificada pelos cabeçalhos de If-None-Match solicitação. |
400 | Um dos parâmetros de consulta está em falta ou não é válido. Corrija os parâmetros de solicitação antes de tentar novamente. |
429 | O servidor rejeitou a solicitação porque o cliente excedeu os limites de solicitação. |
500 | Erro inesperado. Se o erro persistir, informe-o com: data e hora da falha, identificador de solicitação do cabeçalho X-RequestId da resposta e identificador do cliente do cabeçalho X-ClientTraceId da solicitação. |
503 | Servidor temporariamente indisponível. Repita o pedido. Se o erro persistir, informe-o com: data e hora da falha, identificador de solicitação do cabeçalho X-RequestId da resposta e identificador do cliente do cabeçalho X-ClientTraceId da solicitação. |
Se ocorrer um erro, a solicitação também retornará uma resposta de erro JSON. O código de erro é um número de 6 dígitos que combina o código de status HTTP de 3 dígitos seguido por um número de 3 dígitos para categorizar ainda mais o erro. Os códigos de erro comuns podem ser encontrados na página de referência do Tradutor V3.
Exemplos
O exemplo a seguir mostra como recuperar idiomas suportados para tradução de texto.
curl "https://api.cognitive.microsofttranslator.com/languages?api-version=3.0&scope=translation"