API de Phrase TMS

Webhooks (TMS)

El contenido se traduce automáticamente del inglés por Phrase Language AI.

Disponible para

  • Planes Team, Professional, Business y Enterprise

Ponte en contacto con Ventas para preguntas sobre licencias.

Los webhooks son URL arbitrarias que manejan solicitudes HTTP POST permitiendo la notificación de sistemas de terceros sobre eventos específicos.

phrase monitoriza si se ha recibido correctamente una rellamada webhook. Si una recepción webhook falla 3000 veces, se desactiva con una notificación enviada a los Administradores de la cuenta y el fallo se anota en el webhook específico en la página Webhooks. El mecanismo de reintento tiene un máximo de 10 reintentos, computándose el intervalo entre reintentos hasta un valor máximo de 30 minutos.

Los webhooks se pueden deshabilitar/habilitar, probar o eliminar de la página webhooks pasando el cursor sobre webhooks individuales y haciendo clic en ellipses.png para acceder al menú. La función Historial proporciona un resumen de las llamadas en los últimos 14 días y se pueden reproducir webhooks con errores.

Importante

La lista blanca de conexiones webhook por direcciones IP quedó obsoleta y ha sido reemplazada por tokens de seguridad webhook.

Se pueden seleccionar webhooks para los siguientes eventos:

  • Job status changed

  • Trabajo creado

  • Job assigned

  • La fecha de entrega del Trabajo ha cambiado

  • Fuente de trabajo actualizada

  • Meta trabajo actualizadod (Se refiere a la acción meta Actualizar en trabajos)

  • Trabajo continuo actualizado

  • Proyecto creado

  • Estado del proyecto cambiado

  • La fecha de entrega del Proyecto ha cambiado

  • Plantilla del proyecto creada

  • Plantilla modificada del proyecto

  • Plantilla del proyecto eliminada

  • Shared project assigned

  • Metadatos del proyecto actualizados

  • Pre-traducción terminada

  • Análisis creado

  • Trabajo eliminado

  • Proyecto eliminado

  • Trabajo exportado

  • Trabajo no exportado

  • Importación finalizada del lenguaje Language AI

  • Traducción del lenguaje AI terminada

Configurar webhooks

Para configurar webhooks, siga estos pasos:

  1. Desde la página Setup_gear.png de configuración, desplácese hacia abajo hasta la sección Integraciones y haga clic en Webhooks.

    Se abre la página de Webhooks.

  2. Haz clic en Agregar webhook.

    Se abre la página de creación.

  3. Proporcionar URL.

  4. Proporcionar identificador único (token) de seguridad si es necesario.

    Especificar un valor que se ha de añadir como encabezado identificador único (token) x Memsource y que se puede utilizar para autenticar el remitente del webhook.

  5. Seleccionar eventos.

  6. Haga clic en el esquema vista previa para ver la respuesta webhook al ejecutarse.

  7. Haz clic en Crear webhook.

    El webhook se agrega a la lista de la página Webhooks.

Ejemplos de uso webhook

Un sitio web llamado RequestBin proporcionará una URL para usarla al crear un webhook.

La Siguiente vez que se cambie el estado del trabajo o se cree un trabajo en la cuenta, la URL recibirá la respuesta adecuada del sistema. El uso real puede ser más complejo y la recepción de la respuesta debe considerarse una señal para que la aplicación conectada realice ciertas acciones.

Eventos

Ejemplos de trabajo cambian de estado, trabajo asignado, trabajo creado y fecha de entrega del trabajo cambiada.

Estatus del trabajo ha cambiado

{
"jobParts": [
  {
    "id": 9,
    "uid": "ipmdz5p0sagqcOYaijTZU2",
    "internalId": "4",
    "task": "SEfSaenvqFgctE1I0_dc1",
    "fileName": "en.txt",
    "targetLang": "af",
    "workflowLevel": 1,
    "estado": "NUEVO",
    "wordsCount": 2,
    "beginIndex": 0,
    "endIndex": 1,
    "isParentJobSplit": false,
    "dateDue": null,
    "dateCreated": "2016-11-02T17:06:54Z",
    "proyecto": {
      "id": 2,
      "uid": "4RvyVbwX00KerkomA7kpT9",
      "lastWorkflowLevel": 1
    },
    "assignedTo": [
      {
        "vendor": {
          "id": 1,
          "nombre": "Abc",
          "vendorToken": "4-ifos0-CAqPo"
        }
      },
      {
        "lingüista": {
          "id": 3,
          "firstName": "admin",
          "lastName": "admin",
          "userName": "admin",
          "correo electrónico": "admin@example.com",
          "función": "ADMIN",
          "timezone": "Europa/Londres",
          "activo": verdadero,
          "eliminado": falso,
          "terminólogo": falso,
          "dateCreated": "2016-10-11T07:43:22Z"
        }
      }
    ]
  }
],
"evento": "JOB_STATUS_CHANGED"
}

trabajo asignado

{
"jobParts": [
  {
    "id": 9,
    "uid": "ipmdz5p0sagqcOYaijTZU2",
    "internalId": "4",
    "task": "SEfSaenvqFgctE1I0_dc1",
    "fileName": "en.txt",
    "targetLang": "af",
    "workflowLevel": 1,
    "estado": "NUEVO",
    "wordsCount": 2,
    "beginIndex": 0,
    "endIndex": 1,
    "isParentJobSplit": false,
    "dateDue": null,
    "dateCreated": "2016-11-02T17:06:54Z",
    "proyecto": {
      "id": 2
      "uid": "4RvyVbwX00KerkomA7kpT9",
      "lastWorkflowLevel": 1
    },
    "assignedTo": [
      {
        "vendor": {
          "id": 1,
          "nombre": "Abc",
          "vendorToken": "4-ifos0-CAqPo"
        }
      },
      {
        "lingüista": {
          "id": 3,
          "firstName": "admin",
          "lastName": "admin",
          "userName": "admin",
          "correo electrónico": "admin@example.com",
          "función": "ADMIN",
          "timezone": "Europa/Londres",
          "activo": verdadero,
          "eliminado": falso,
          "terminólogo": falso,
          "dateCreated": "2016-10-11T07:43:22Z"
        }
      }
    ]
  }
],
"evento": "JOB_ASSIGNED"
}

Trabajo creado

{
 "jobParts": [
   {
     "id": 9,
     "uid": "ipmdz5p0sagqcOYaijTZU2",
     "internalId": "4",
     "task": "SEfSaenvqFgctE1I0_dc1",
     "fileName": "en.txt",
     "targetLang": "af",
     "workflowLevel": 1,
     "estado": "NUEVO",
     "wordsCount": 2,
     "beginIndex": 0,
     "endIndex": 1,
     "isParentJobSplit": false,
     "dateDue": null,
     "dateCreated": "2016-11-02T17:06:54Z",
     "proyecto": {
       "id": 2,
       "uid": "4RvyVbwX00KerkomA7kpT9",
       "lastWorkflowLevel": 1
     },
     "assignedTo": [
       {
         "vendor": {
           "id": 1,
           "nombre": "Abc",
           "vendorToken": "4-ifos0-CAqPo"
         }
       },
       {
         "lingüista": {
           "id": 3,
           "firstName": "admin",
           "lastName": "admin",
           "userName": "admin",
           "correo electrónico": "admin@example.com",
           "función": "ADMIN",
           "timezone": "Europa/Londres",
           "activo": verdadero,
           "eliminado": falso,
           "terminólogo": falso,
           "dateCreated": "2016-10-11T07:43:22Z"
         }
       }
     ]
   }
 ],
 "evento": "JOB_CREATED"
}

Fecha de entrega del trabajo cambiada

{
  "jobParts": [
    {
      "id": 127865777,
      "uid": "ElTXvXnNIHEN2xgL5sU2L2",
      "internalId": "1",
      "task": "LvkAHilgobApeoVm_dc4",
      "fileName": "Libro Blanco de la UE Editado.doc",
      "targetLang": "de",
      "workflowLevel": 1,
      "estado": "NUEVO",
      "wordsCount": 204,
      "beginIndex": 0,
      "endIndex": 16,
      "isParentJobSplit": false,
      "dateDue": "2018-09-11T22:00:00Z",
      "dateCreated": "2018-09-10T06:25:41Z",
      "proyecto": {
        "id": 12277756,
        "uid": "4RvyVbwX00KerkomA7kpT9
        "lastWorkflowLevel": 1
      },
      "assignedTo": []
    }
  ],
  "evento": "JOB_DUE_DATE_CHANGED"
}

Tabla de estado

Cuando se trabaja con API, webhooks e interfaz de usuario, el estado puede nombrarse de manera ligeramente diferente.

API REST

Webhook

UI

NUEVO

NUEVO

NUEVO

ACEPTADO

ASIGNADO

ACEPTADO (por proveedor)

RECHAZADO

DECLINED_BY_LINGUIST

DECLINADO (por proveedor)

RECHAZADO

REJECTED_BY_LINGUIST

RECHAZADO (por proveedor)

ENTREGADO

COMPLETADO

ENTREGADO

ENVIADO POR CORREO ELECTRÓNICO

ENVIADO POR CORREO ELECTRÓNICO

ENVIADO POR CORREO ELECTRÓNICO (por proveedor)

COMPLETADO

COMPLETED_BY_LINGUIST

TERMINADO (por proveedor)

CANCELADO

CANCELADO

CANCELADO

¿Fue útil este artículo?

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.