Este es un escenario de API simple con llamadas de API de muestra e instrucciones sobre cómo encadenarlas para completar una acción simple usando solo API. Las opciones que se pueden configurar a través de las API son extensas. Consulte las secciones respectivas de documentación de API REST para obtener más información sobre todas las opciones disponibles.
La plataforma de API Postman se utilizó para crear el escenario.
En estos ejemplos, la URL de solicitud estándar comienza con https://cloud.memsource.com. En caso de que una organización utilice API en el centro de datos de EE. UU., la URL de solicitud debe comenzar con https://us.cloud.memsource.com.
Escenario
-
Autenticación
El usuario se autentica (el equivalente de API a iniciar sesión).
-
Creación
La creación de un proyecto simple, trabajos cargados y asignación de lingüista con notificación por correo electrónico.
-
Traducción
Trabajo de traducción realizado fuera del escenario de API (en cualquiera de los editores).
-
Función de API
Una vez finalizada la asignación (marcada como Completado por el lingüista), el estado del proyecto se establece en Completado y el documento terminado se descarga del proyecto.
Metodología
Cada llamada de API REST individual tiene un método apropiado enumerado. El uso de un método incorrecto (p. ej., GET en lugar de POST en la llamada de creación de proyecto) resulta en una llamada de API fallida.
Paso 1: autenticación
Existen dos métodos de autenticación:
-
Llamada a la API de autenticación:
Genera un identificador único (token) de autenticación válido durante 24 horas. El identificador único (token) debe insertarse en todas las API siguientes. El identificador único (token) valida a los usuarios y les permite realizar cualquier otra función dentro del perfil.
-
Permite la validación de una aplicación. Una aplicación validada está en comunicación continua y no necesita más autenticación.
Para este escenario, se usa la llamada a la API de autenticación. El identificador único (token) generado es necesario para todas las llamadas a la API siguientes y no aparece en los parámetros de ejemplo.
Usar la API Login para la autenticación con los parámetros requeridos. En este caso, se requieren username y password.
-
Método
POST
-
URL de solicitud
https://cloud.memsource.com/web/api2/v3/auth/login
-
Cuerpo de la solicitud:
{ "userName":"username", "password":"password"} -
Respuesta
Identificador único (token) de autenticación.
Los miembros de múltiples organizaciones de TMS tienen el mismo nombre de usuario y contraseña para múltiples cuentas. En este caso, se debe añadir el userUid al cuerpo de la solicitud para especificar a qué organización desea iniciar sesión el usuario. Si no se especifica, el usuario inicia sesión en la cuenta predeterminada asociada con el nombre de usuario y la contraseña proporcionados.
Paso 2: Creación, importación y asignación de proyecto
Creación de proyecto
Use la llamada a la API Proyectos para crear un proyecto con los parámetros obligatorios nombre, idiomaOrigen y idiomasDestino.
-
Método
POST
-
URL de solicitud
https://cloud.memsource.com/web/api2/v3/projects
-
Cuerpo de la solicitud
{ "name":"My project", "sourceLang":"en", "targetLangs":[ "de","fr" ]} -
Respuesta
UID de proyecto (p. ej., KmtNyVlz1skQd2aMVEipp7)
Es posible crear una plantilla de proyecto usando la llamada a la API Crear plantilla de proyecto con el UID de proyecto de la última llamada.
-
Método
POST
-
URL de solicitud
https://cloud.memsource.com/web/api2/v1/projectTemplates
-
Cuerpo de la solicitud
{ "project": { "uid": "string" }, "name": "string", "importSettings": { "uid": "string" }, "useDynamicTitle": true, "dynamicTitle": "string" } -
Respuesta
UID de plantilla de proyecto (p. ej., AmtNyVlz1skQd2aMVEipp8)
La forma más eficiente de crear proyectos es usar una plantilla de proyecto. Use Crear proyecto desde plantilla con el UID de plantilla de proyecto de la última llamada para crear un nuevo proyecto basado en la configuración de la plantilla de proyecto.
La expresión {templateUid} sirve como marcador de posición en la URL de solicitud donde se inserta el UID de plantilla de proyecto obtenido.
-
Método
POST
-
URL de solicitud
https://cloud.memsource.com/web/api2/v2/projects/applyTemplate/oNQiljwTGHpd2l1nnQRiu4
-
Cuerpo de la solicitud
{ "name": "string", "sourceLang": "string", "targetLangs": [ "string" ], "workflowSteps": [ { "id": "string" } ], "dateDue": "2019-08-24T14:15:22Z", "note": "string", "client": { "id": "string" }, "businessUnit": { "id": "string" }, "domain": { "id": "string" }, "subDomain": { "id": "string" }, "costCenter": { "id": "string" } }{ "project": { "uid": "string" }, "name": "string", "importSettings": { "uid": "string" }, "useDynamicTitle": true, "dynamicTitle": "string" } -
Respuesta
UID del proyecto (p. ej., BmtNyVlz1skQd2aMVEipp9)
Crear trabajo
Con el UID del proyecto de la última llamada, se pueden añadir nuevos trabajos directamente al proyecto recién creado usando Crear trabajo.
La expresión {projectUid} sirve como marcador de posición en la URL de la solicitud donde se inserta el UID del proyecto obtenido. Con la llamada a la API Crear trabajo, los encabezados de la solicitud deben cambiarse para que tengan concordancia con los requeridos por Phrase (en otras llamadas, Postman añade automáticamente los encabezados apropiados a la solicitud).
Todos los parámetros de importar deben insertarse en un encabezado Memsource Personalizar.
El encabezado Content-Disposition debe incluir el nombre del archivo en un formato predefinido para procesar correctamente la solicitud de importar.
Para importar un archivo fuente, vaya al cuerpo, seleccione y aparecerá la opción .
-
Método
POST
-
URL de solicitud
https://cloud.memsource.com/web/api2/v1/projects/KmtNyVlz1skQd2aMVEipp7/jobs
-
(Encabezado) Content-Disposition
filename*=UTF-8''file.txt -
(Encabezado) Memsource
{"targetLangs":["de","fr"]} -
(Header) Content-Type
application/octet-stream
-
Respuesta
ID de trabajo (p. ej., dOYgeXzAdAbj4xFjuEVZP2)
UID de AsyncRequest
Use Obtener solicitud asíncrona con el UID de AsyncRequest de la llamada Crear trabajo para comprobar que el trabajo se creó correctamente y que es funcional.
El ID de trabajo devuelto es único en cada paso del flujo de trabajo del proyecto. Por lo tanto, si el trabajo se crea en un proyecto con flujo de trabajo, la respuesta devuelve un ID de trabajo único para cada paso del flujo de trabajo.
La configuración de importación reutilizable se puede configurar con la llamada Crear configuración de importación. En la respuesta se recibe un UID de configuración de importación que se puede usar en la llamada crear trabajo.
Para asignar proveedores al trabajo (a menos que se asignen directamente en la llamada Crear trabajo), use la llamada Editar trabajo.
El ID del proveedor que se inserta en la llamada se puede obtener de dos maneras:
-
Para recuperar el ID de la aplicación Phrase, siga estos pasos:
-
Use la lista de usuarios llamada de API.
Esta llamada de API no requiere parámetros específicos y devolverá una lista de todos los usuarios de la cuenta. La respuesta contiene tanto nombres de usuario como ID.
Se puede añadir un parámetro opcional, userName, a la consulta que le permite listar solo usuarios con nombres de usuario específicos.
Notificar a los usuarios asignados
El UID del trabajo puede usarse entonces como un parámetro opcional en la llamada Notificar a los usuarios asignados junto con el parámetro plantilla de correo electrónico que representa el ID de la plantilla de correo electrónico que se va a usar. Esto se puede obtener usando la llamada lista de plantillas de correo electrónico.
-
URL de solicitud
https://cloud.memsource.com/web/api2/v1/projects/KmtNyVlz1skQd2aMVEipp7/jobs/notifyAssigned
-
Respuesta
Vacío (Estado 204: Sin contenido)
Aquí es donde el traductor comenzaría a trabajar en su perfil tal como si se estuviera usando la interfaz de Phrase. Después de que el trabajo termina, el PM a cargo recibe una notificación y se inicia la siguiente parte del escenario. Se puede interceptar una devolución de llamada a través de webhooks para iniciar automáticamente la siguiente parte del escenario, pero esto no se abordará en este ejemplo.
Paso 3: Descargar archivo traducido (Completar), establecer proyecto como completado
Descargar archivo traducido
Este escenario funciona bajo la suposición de que un traductor termina su asignación (marca el trabajo como Completar), pero el archivo completado se puede descargar en cualquier momento, el trabajo no necesita tener el estado Completar.
Para descargar un archivo traducido, se necesitan dos llamadas a la API: Descargar archivo meta (asíncrono) y Descargar archivo meta basado en solicitud asíncrona.
El primer paso es llamar a Descargar archivo meta (asíncrono) con los parámetros projectUid y jobUid. Si está descargando el archivo completado de un proyecto con múltiples pasos del flujo de trabajo, asegúrese de usar el jobUid del paso del flujo de trabajo específico desde el cual desea descargar el archivo completado, p. ej., paso del flujo de trabajo de revisión.
-
Para recuperar el jobUID para un paso del flujo de trabajo específico desde la aplicación Phrase, siga estos pasos:
-
Abra el proyecto.
-
En la tabla de trabajos, cambie al paso del flujo de trabajo desde el cual desea descargar el archivo completado.
-
Copie la parte única de la URL después de /job desde el navegador.
-
-
Usar la lista de trabajos llamada a la API.
Este endpoint devuelve una lista de trabajos dentro del proyecto especificado. Use la llamada con el parámetro de consulta
workflowLevel. Este parámetro no se basa en cero e indica el paso del flujo de trabajo al que pertenecen los trabajos devueltos. Si no se especifica, su valor se establece de forma predeterminada en1(= primer paso del flujo de trabajo). Por ejemplo, si necesita obtener los trabajos del paso de revisión, especifique el número de ese paso en el parámetro de consulta, es decir,2.
La llamada Descargar archivo meta (asíncrono) inicia una solicitud asíncrona para generar y descargar el archivo meta que contiene las traducciones. No proporciona directamente el archivo meta dentro de la respuesta, sino un asyncRequestId necesario para la siguiente llamada.
-
Método
PUT
-
URL de solicitud
https://cloud.memsource.com/web/api2/v2/projects/KmtNyVlz1skQd2aMVEipp7/jobs/dOYgeXzAdAbj4xFjuEVZP2/targetFile
-
Respuesta
ID de solicitud asíncrona
Use Obtener solicitud asíncrona con el asyncRequestID de la respuesta para verificar que la solicitud se haya completado. Una vez que la solicitud asíncrona se haya completado, puede descargar el archivo meta usando la llamada Descargar archivo meta basado en solicitud asíncrona. El asyncRequestId solo se puede usar una vez. Una vez que se inicia la descarga, el asyncRequestId deja de ser válido para su uso posterior.
-
Método
OBTENER
-
URL de solicitud
https://cloud.memsource.com/web/api2/v2/projects/KmtNyVlz1skQd2aMVEipp7/jobs/dOYgeXzAdAbj4xFjuEVZP2/downloadTargetFile/1291716982
-
Respuesta
Respuesta binaria con el archivo completado en sí
Cambiar estado de proyecto a Completado
Para finalizar el proyecto una vez que el trabajo en el proyecto esté completo, use la llamada editar estado de proyecto con los parámetros obligatorios projectUid y estado para cambiar el estado de todo el proyecto a Completado. Este cambio es manual, pero si se usa automatización de estado de proyecto, el estado se cambiará automáticamente. También es posible esperar un webhook e iniciar otras acciones basadas en la devolución de llamada recibida.
-
Método
POST
-
URL de solicitud
https://cloud.memsource.com/web/api2/v1/projects/KmtNyVlz1skQd2aMVEipp7/setStatus
-
Cuerpo de la solicitud
{ \"estado\": \"COMPLETADO\"} -
Respuesta
Vacío (Estado 204: Sin contenido)