Phrase TMS API

Webhooks (TMS)

文本由 Phrase Language AI 从英语机器翻译而得。

可用于

  • Team、Professional、Business和Enterprise套餐

有关许可问题,请联系销售人员

网络钩子是处理 HTTP POST 请求的任意 URL,允许就指定事件通知第三方系统。

phrase 监控 webhook 回调是否成功接收。如果 webhook 接收失败 3000 次,则会将其停用,并向账户管理员发送通知,并在 Webhook 页面上的特定 webhook 上注明失败。重试机制最多有 10 次重试,计算重试间隔的最大值为 30 分钟。

通过将鼠标悬停在单个网络钩子上并单击ellipses.png以访问菜单,可以禁用/启用、测试或删除网络钩子页面。历史功能提供过去 14 天呼叫的概览,并可以重播失败的网络钩子。

重要

按 IP 地址的白名单 webhook 连接已弃用,已被 webhook 安全令牌所取代。

可以为以下事件选择网络钩子:

  • Job status changed

  • 工作已创建

  • Job assigned

  • 工作截止日期已更改

  • 工作原文已更新

  • 工作译文更新d(参考工作译文更新操作)

  • 连续工作已更新

  • 项目已创建

  • 项目状态已更改

  • 项目截止日期已更改

  • 项目模板已创建

  • 项目模板已更改

  • 项目模板已删除

  • Shared project assigned

  • 项目元数据已更新

  • 预翻译完成

  • 分析报告已创建

  • 工作已删除

  • 项目已删除

  • 已导出的工作

  • 未导出的工作

  • Language AI 导入已完成

  • Language AI 翻译已完成

配置网络钩子

要配置网络钩子,请执行以下步骤:

  1. 从设置Setup_gear.png页面,向下滚动到集成部分,然后单击网络钩子

    网络钩子页面打开。

  2. 单击添加 webhook

    创建页面打开。

  3. 提供 URL。

  4. 如果需要,提供安全令牌。

    指定一个要添加为 x-Memsource-令牌标头的值,该值可用于验证 webhook 的发件人。

  5. 选择事件。

  6. 单击预览架构以在运行时查看 webhook 响应。

  7. 单击创建 webhook

    webhook 被添加到 Webhook 页面的列表中。

webhook 使用示例

一个名为 RequestBin 的网站将在创建 webhook 时提供一个 URL 供使用。

下一个更改工作状态或在账户中创建工作时,URL 会收到系统的相应响应。实际使用可能更加复杂,接收响应应被视为连接的应用程序执行某些操作的信号。

事件

工作状态更改、工作分配、工作创建和工作截止日期更改时的例子。

工作状态已更改

{
"jobParts": [
  {
    “id”:9,
    "uid": "ipmdz5p0sagqcOYaijTZU2",
    "internalId":"4",
    "task":"SEfSaenvqFgctE1I0_dc1",
    "fileName": "en.txt",
    "targetLang": "af",
    "workflowLevel":1,
    "status":"NEW",
    "wordsCount":2,
    "beginIndex":0,
    "endIndex":1,
    "isParentJobSplit": false,
    "dateDue": null,
    "dateCreated":"2016-11-02T17:06:54Z",
    "project": {
      “id”:2,
      “uid”:"4RvyVbwX00KerkomA7kpT9",
      "lastWorkflowLevel":1
    },
    "assignedTo": [
      {
        "vendor": {
          “id”:1,
          "name":ABC
          "vendorToken":"4-ifos0-CAqPo"
        }
      },
      {
        “译员”:{
          “id”:3,
          "firstName":“管理员”,
          "lastName":“管理员”,
          "userName": "admin",
          "email": "admin@example.com",
          "role":"ADMIN",
          "timezone":"Europe/London",
          “可用的”:真,
          "deleted": false,
          “术语专家”:假的,
          "dateCreated":"2016-10-11T07:43:22Z"
        }
      }
    ]
  }
],
“事件”:"JOB_STATUS_CHANGED"
}

工作分配

{
"jobParts": [
  {
    “id”:9,
    "uid": "ipmdz5p0sagqcOYaijTZU2",
    "internalId":"4",
    "task":"SEfSaenvqFgctE1I0_dc1",
    "fileName": "en.txt",
    "targetLang": "af",
    "workflowLevel":1,
    "status":"NEW",
    "wordsCount":2,
    "beginIndex":0,
    "endIndex":1,
    "isParentJobSplit": false,
    "dateDue": null,
    "dateCreated":"2016-11-02T17:06:54Z",
    "project": {
      “id”:2
      “uid”:"4RvyVbwX00KerkomA7kpT9",
      "lastWorkflowLevel":1
    },
    "assignedTo": [
      {
        "vendor": {
          “id”:1,
          "name":ABC
          "vendorToken":"4-ifos0-CAqPo"
        }
      },
      {
        “译员”:{
          “id”:3,
          "firstName":“管理员”,
          "lastName":“管理员”,
          "userName": "admin",
          "email": "admin@example.com",
          "role":"ADMIN",
          "timezone":"Europe/London",
          “可用的”:真,
          "deleted": false,
          “术语专家”:假的,
          "dateCreated":"2016-10-11T07:43:22Z"
        }
      }
    ]
  }
],
“事件”:"JOB_ASSIGNED"
}

工作已创建

{
 "jobParts": [
   {
     “id”:9,
     "uid": "ipmdz5p0sagqcOYaijTZU2",
     "internalId":"4",
     "task":"SEfSaenvqFgctE1I0_dc1",
     "fileName": "en.txt",
     "targetLang": "af",
     "workflowLevel":1,
     "status":"NEW",
     "wordsCount":2,
     "beginIndex":0,
     "endIndex":1,
     "isParentJobSplit": false,
     "dateDue": null,
     "dateCreated":"2016-11-02T17:06:54Z",
     "project": {
       “id”:2,
       “uid”:"4RvyVbwX00KerkomA7kpT9",
       "lastWorkflowLevel":1
     },
     "assignedTo": [
       {
         "vendor": {
           “id”:1,
           "name":ABC
           "vendorToken":"4-ifos0-CAqPo"
         }
       },
       {
         “译员”:{
           “id”:3,
           "firstName":“管理员”,
           "lastName":“管理员”,
           "userName": "admin",
           "email": "admin@example.com",
           "role":"ADMIN",
           "timezone":"Europe/London",
           “可用的”:真,
           "deleted": false,
           “术语专家”:假的,
           "dateCreated":"2016-10-11T07:43:22Z"
         }
       }
     ]
   }
 ],
 “事件”:"JOB_CREATED"
}

工作截止日期已更改

{
  "jobParts": [
    {
      “id”:127865777,
      “uid”:"ElTXvXnNIHEN2xgL5sU2L2",
      "internalId":"1",
      "task":"LvkAHilgobApeoVm_dc4",
      "fileName":"EU White Paper Edited.doc",
      "targetLang": "de",
      "workflowLevel":1,
      "status":"NEW",
      "wordsCount":204,
      "beginIndex":0,
      "endIndex":16,
      "isParentJobSplit": false,
      "dateDue":"2018-09-11T22:00:00Z",
      "dateCreated":"2018-09-10T06:25:41Z",
      "project": {
        “id”:12277756,
        “uid”:"4RvyVbwX00KerkomA7kpT9
        "lastWorkflowLevel":1
      },
      "assignedTo": []
    }
  ],
  “事件”:"JOB_DUE_DATE_CHANGED"
}

状态表

使用 API、网络钩子和用户界面时,状态的名称可能略有不同。

Rest API

Webhook

UI

新建

新建

新建

已接受

已分配

已接受(服务商)

已拒绝

DECLINED_BY_LINGUIST

已拒绝(由服务商)

已拒绝

REJECTED_BY_LINGUIST

被服务商拒绝

已交付

已完成

已交付

已发邮件

已发邮件

已发邮件(按服务商)

已完成

COMPLETED_BY_LINGUIST

已完成(服务商)

已取消

已取消

已取消

这篇文章有帮助吗?

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.