Um conjunto de chamadas de API está disponível, permitindo:
-
Integração do Phrase e de qualquer software de terceiros (ferramentas de gerenciamento de tradução, CMSs, etc.)
-
Desenvolvimento de uma estação de trabalho para tradutores. O editor CAT é construído sobre APIs públicas.
-
Criação de uma nova ferramenta ou serviço usando o Phrase em seu backend.
Fluxo de Trabalho Básico
Os procedimentos e o fluxo de trabalho devem ser compreendidos antes de usar as APIs. É recomendado estar familiarizado com um procedimento no Phrase antes de implementar a API relacionada.
O fluxo de trabalho básico é:
-
Crie uma memória de tradução, glossário e, opcionalmente, adicione um mecanismo de tradução automática.
-
Crie um projeto com a memória de tradução, glossário e mecanismo de tradução automática anexados (se necessário).
-
Salve o projeto como um modelo de projeto e reutilize-o para criar um novo projeto de tradução.
-
Faça upload do seu arquivo para tradução no projeto (crie um trabalho).
-
Você pode então analisar, pré-traduzir ou atribuir o trabalho a um linguista.
APIs Assíncronas
APIs assíncronas devem sempre ser preferidas em relação às suas contrapartes síncronas. Se chamar APIs síncronas, há uma chance de receber respostas de tempo limite expirado ao processar grandes lotes de arquivos ou até mesmo um único arquivo grande. APIs síncronas devem ser usadas apenas para arquivos pequenos e integração em pequena escala.
Polling
Após chamar uma API assíncrona, uma resposta instantânea é recebida, incluindo o identificador da solicitação. Use este identificador para verificar o estado da solicitação chamando getAsyncRequest e verificando o campo asyncResponse. Essa abordagem de polling pode levar a um número de chamadas getAsyncRequest antes de receber uma asyncResponse que não seja nula.
Callbacks
Como resposta às desvantagens da abordagem de polling para solicitações assíncronas, há suporte para callbacks em todas as APIs assíncronas. Ao chamar uma solicitação assíncrona, especifique uma URL (no parâmetro callbackUrl) que é solicitada após o trabalho iniciado pela solicitação assíncrona ser concluído.
Callbacks são solicitados via chamadas HTTP POST e os dados são passados no corpo codificados como JSON. O objeto JSON sempre contém:
-
Informações sobre a solicitação assíncrona (as mesmas de quando chamando getAsyncRequest).
-
Informações detalhadas sobre o resultado da ação, como uma análise completa ou detalhes do trabalho.
{
"asyncRequest": {
...
}
"analyse": {
...
}
}
Se uma URL de callback não puder ser acessada, a solicitação é repetida após 2, 4, 8, 16 e 30 minutos, até que 10 tentativas falhem.
A URL de callback deve responder com o código de status HTTP 200 OK para ser considerada bem-sucedida.