Un conjunto de API calls está disponible que permite:
-
Integración de Phrase y cualquier software de terceros (herramientas de gestión de traducción, CMS, etc.)
-
Desarrollo de un banco de trabajo para traductores. El editor CAT se basa en APIs públicas.
-
Creación de una nueva herramienta o servicio utilizando Phrase en su backend.
Flujo de trabajo básico
Los procedimientos y el flujo de trabajo deben ser comprendidos antes de usar las APIs. Se recomienda estar familiarizado con un procedimiento en Phrase antes de implementar la API relacionada.
El flujo de trabajo básico es:
-
Crear un TM, TB y opcionalmente, agregar un motor de traducción automática.
-
Crear un proyecto con el TM/TB/motor de traducción automática adjunto (si es necesario).
-
Guardar el proyecto como una plantilla de proyecto y reutilizarlo para crear un nuevo proyecto de traducción.
-
Cargar su archivo para traducción al proyecto (crear un trabajo).
-
Luego puede analizar, pretraducir o asignar el trabajo a un lingüista.
APIs asíncronas
Las APIs asíncronas siempre deben ser preferidas a sus contrapartes sincrónicas. Si se llaman APIs sincrónicas, existe la posibilidad de recibir respuestas de tiempo de espera expirado al procesar grandes lotes de archivos o incluso un solo archivo grande. Las APIs sincrónicas solo deben usarse para archivos pequeños y para integraciones a pequeña escala.
Polling
Después de llamar a una API asíncrona, se recibe una respuesta instantánea que incluye el identificador de la solicitud. Usa este identificador para verificar el estado de la solicitud llamando a getAsyncRequest y verificando el campo asyncResponse. Este enfoque de sondeo puede llevar a un número de llamadas getAsyncRequest antes de recibir una asyncResponse que no sea nula.
Callbacks
Como respuesta a las desventajas del enfoque de sondeo para solicitudes asíncronas, se admite el soporte para callbacks en todas las API asíncronas. Al llamar a una solicitud asíncrona, especifica una URL (en el parámetro callbackUrl) que se solicita después de que el trabajo iniciado por la solicitud asíncrona esté completo.
Los callbacks se solicitan a través de llamadas HTTP POST y los datos se envían en el cuerpo codificados como JSON. El objeto JSON siempre contiene:
-
Información sobre la solicitud asíncrona (la misma que al llamar a getAsyncRequest).
-
Información detallada sobre el resultado de la acción, como un análisis completo o detalles del trabajo.
{ "asyncRequest": { ... } "analizar": { ... } }
Si una URL de callback no es accesible, la solicitud se repite después de 2, 4, 8, 16 y 30 minutos hasta que 10 reintentos hayan fallado.
La URL de callback debe responder con el código de estado HTTP 200 OK para ser considerada exitosa.