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 APIs. Las opciones que se pueden configurar a través de las APIs son extensas. Consulte las secciones respectivas de la 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 APIs 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 que la asignación termina (marcada como Completar por el lingüista), el estado del proyecto se establece en Completar y el documento terminado se descarga del proyecto.
Metodología
Cada llamada de API REST individual tiene un método apropiado listado. El uso de un método incorrecto (p. ej., GET en lugar de POST en la llamada de Crear 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.
-
Method
POST
-
Request URL
https://cloud.memsource.com/web/api2/v3/auth/login
-
Request body:
{ "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, importar y asignación de proyecto
Creación de proyecto
Usar la llamada a la API Proyectos para Crear un proyecto con los parámetros obligatorios name, sourceLang y targetLangs.
-
Method
POST
-
Request URL
https://cloud.memsource.com/web/api2/v3/projects
-
Cuerpo de la solicitud
{ "name":"My project", "sourceLang":"en", "targetLangs":[ "de","fr" ]} -
Respuesta
ID del proyecto (p. ej., KmtNyVlz1skQd2aMVEipp7)
Es posible Crear una plantilla de proyecto usando la llamada a la API Crear plantilla de proyecto con el ID del proyecto de la última llamada.
-
Method
POST
-
Request URL
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
ID del proyecto plantilla (p. ej., AmtNyVlz1skQd2aMVEipp8)
La forma más eficiente de crear proyectos es usar una plantilla de proyecto. Usar Crear proyecto desde plantilla con el ID del proyecto plantilla 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 la solicitud donde se inserta el ID del proyecto plantilla obtenido.
-
Method
POST
-
Request URL
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 .
-
Method
POST
-
Request URL
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)
ID de AsyncRequest
Usar Obtener solicitud asíncrona con el ID 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 ID 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), usar 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:
-
Usar la lista de usuarios llamada a la API.
Esta llamada a la 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 los usuarios con nombres de usuario específicos.
Notificar a los usuarios asignados
El UID del trabajo se puede usar como un parámetro opcional en la llamada Notificar a los usuarios asignados junto con el parámetro emailTemplate 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.
-
Request URL
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 (completado), establecer proyecto como completado
Descargar archivo traducido
Este escenario funciona bajo la suposición de que un traductor termina su trabajo (marca el trabajo como completado), pero el archivo completado se puede descargar en cualquier momento, el trabajo no necesita tener el estado completado.
Para descargar un archivo meta, se necesitan dos llamadas a la API: las llamadas 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, por ejemplo, el 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.
-
-
Use 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 en1(= primer paso del flujo de trabajo) de forma predeterminada. 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.
-
Method
PUT
-
Request URL
https://cloud.memsource.com/web/api2/v2/projects/KmtNyVlz1skQd2aMVEipp7/jobs/dOYgeXzAdAbj4xFjuEVZP2/targetFile
-
Respuesta
ID de solicitud asíncrona
Usar 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.
-
Method
OBTENER
-
Request URL
https://cloud.memsource.com/web/api2/v2/projects/KmtNyVlz1skQd2aMVEipp7/jobs/dOYgeXzAdAbj4xFjuEVZP2/downloadTargetFile/1291716982
-
Respuesta
Respuesta binaria con el archivo completado en sí
Establecer proyecto como Completado
Para finalizar el proyecto una vez que el trabajo en el proyecto esté completo, usar la llamada Editar estado del 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 del 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.
-
Method
POST
-
Request URL
https://cloud.memsource.com/web/api2/v1/projects/KmtNyVlz1skQd2aMVEipp7/setStatus
-
Cuerpo de la solicitud
{ \"estado\": \"COMPLETADO\"} -
Respuesta
Vacío (estado 204: Sin contenido)