Phrase TMS API

ウェブフック(TMS)

本コンテンツはPhrase Language AIの機械翻訳により、英語から翻訳されています。

利用可能対象

  • Team、Professional、Business、Enterpriseプライズプラン

ライセンスに関する質問は、営業担当までお問い合わせください。

ウェブフックは、HTTP POST 要求を処理する任意の URL で、指定されたイベントについてサードパーティ システムに注意できます。

phraseはウェブフックコールバックが正常に受信されたかを監視します。ウェブフックの受信に 3000 回失敗すると、そのアカウントの管理者に送信される注意によって非アクティブ化され、ウェブフック ページの特定のウェブフックに失敗が通知されます。リトライ メカニズムには最大 10 回のリトライがあり、リトライ間隔は最大値 30 分まで計算されます。

ウェブフックの無効化/有効化、テスト、削除は、個々のウェブフックにカーソルを合わせて [ellipses.png] をクリックすることで、ウェブフックのページから行えます。履歴機能は、過去 14 日間のコールの概要を提供し、失敗したウェブフックをリプレイできます。

重要

IP アドレスによるウェブフック接続のホワイトリスト化は廃止され、ウェブフックセキュリティトークンに置き換えられました。

ウェブフックは次のイベントで選択できます。

  • Job status changed

  • ジョブが作成されました

  • Job assigned

  • ジョブの納期が変更されました

  • ジョブの原文が更新されました

  • ジョブ訳文更新 (ジョブ訳文更新アクションを参照)

  • 継続ジョブを更新しました

  • プロジェクトが作成されました

  • プロジェクトステータスが変更されました

  • プロジェクトの納期が変更されました

  • プロジェクトテンプレートが作成されました

  • プロジェクトテンプレートが変更されました

  • プロジェクトテンプレートが削除されました

  • Shared project assigned

  • プロジェクトのメタデータを更新しました

  • 一括翻訳が完成しました

  • 解析が作成されました

  • ジョブが削除されました

  • プロジェクトが削除されました

  • ジョブがエクスポートされました

  • ジョブはエクスポートされませんでした

  • Language AIインポートが完了しました

  • Language AI翻訳が完了しました

ウェブフックの設定

ウェブフックを設定するには、次の手順に従います。

  1. 設定Setup_gear.png ページから、[統合機能] セクションまでスクロールし、[ウェブフック] をクリックします。

    Webhooks ページが開きます。

  2. ウェブフック追加をクリックします。

    作成ページが開きます。

  3. URLを入力します。

  4. 必要に応じてセキュリティトークンを提供します。

    x-Memsource トークン ヘッダーまたは Authorization ヘッダーに含める値を指定し、ユーザーがウェブフック送信者を認証するための適切な方法を選択できるようにします。

  5. イベント選択。

  6. 「スキーマプレビュー」をクリックして、実行時にウェブフック応答を表示します。

  7. ウェブフック作成をクリックします。

    ウェブフックがウェブフックページの一覧に追加されます。

ウェブフックの使用例

RequestBin という Web サイトが、ウェブフック作成時に使用する URL を提供します。

次へ、アカウント内でジョブのステータスが変更されたり、ジョブが作成された際に、URLはシステムから適切な応答を受け取ります。実際の使用はより複雑になる場合があります。応答の受信は、接続されたアプリケーションが特定のアクションを実行するためのシグナルと見なす必要があります。

イベント

ジョブのステータス変更、ジョブの割り当て、ジョブの作成、ジョブの納期の変更の例。

ジョブ ステータスが変更されました

{
"jobParts": [
  {
    "id":9,
    "uid": "ipmdz5p0sagqcOYaijTZU2",
    "internalId":"4",
    "task":"SEfSaenvqFgctE1I0_dc1",
    "fileName": "en.txt",
    "targetLang": "af",
    "workflowLevel":1,
    "status":"新規",
    "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"
        }
      },
      {
        "linguist": {
          "id":3,
          "firstName":「管理者」、
          "lastName":「管理者」、
          "userName": "admin",
          "email": "admin@example.com",
          "role":「管理者」、
          "timezone":「ヨーロッパ/ロンドン」、
          "active": true,
          "deleted": false,
          "terminologist": false,
          "dateCreated":"2016-10-11T07:43:22Z"
        }
      }
    ]
  }
],
"event":"JOB_STATUS_CHANGED"
}

ジョブ割り当て済

{
"jobParts": [
  {
    "id":9,
    "uid": "ipmdz5p0sagqcOYaijTZU2",
    "internalId":"4",
    "task":"SEfSaenvqFgctE1I0_dc1",
    "fileName": "en.txt",
    "targetLang": "af",
    "workflowLevel":1,
    "status":"新規",
    "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"
        }
      },
      {
        "linguist": {
          "id":3,
          "firstName":「管理者」、
          "lastName":「管理者」、
          "userName": "admin",
          "email": "admin@example.com",
          "role":「管理者」、
          "timezone":「ヨーロッパ/ロンドン」、
          "active": true,
          "deleted": false,
          "terminologist": false,
          "dateCreated":"2016-10-11T07:43:22Z"
        }
      }
    ]
  }
],
"event":"JOB_ASSIGNED"
}

ジョブ作成

{
 "jobParts": [
   {
     "id":9,
     "uid": "ipmdz5p0sagqcOYaijTZU2",
     "internalId":"4",
     "task":"SEfSaenvqFgctE1I0_dc1",
     "fileName": "en.txt",
     "targetLang": "af",
     "workflowLevel":1,
     "status":"新規",
     "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"
         }
       },
       {
         "linguist": {
           "id":3,
           "firstName":「管理者」、
           "lastName":「管理者」、
           "userName": "admin",
           "email": "admin@example.com",
           "role":「管理者」、
           "timezone":「ヨーロッパ/ロンドン」、
           "active": true,
           "deleted": false,
           "terminologist": false,
           "dateCreated":"2016-10-11T07:43:22Z"
         }
       }
     ]
   }
 ],
 "event":"JOB_CREATED"
}

ジョブ納期の変更

{
  "jobParts": [
    {
      "id":127865777,
      "uid":"ElTXvXnNIHEN2xgL5sU2L2",
      "internalId":"1",
      "task":"LvkAHilgobApeoVm_dc4",
      "fileName":"EU White Paper Edited.doc",
      "targetLang": "de",
      "workflowLevel":1,
      "status":"新規",
      "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": []
    }
  ],
  "event":"JOB_DUE_DATE_CHANGED"
}

ステータステーブル

API、ウェブフック、および UI を使用する場合、ステータスの名前は若干異なる場合があります。

Rest API

ウェブフック

UI

NEW

NEW

新規

ACCEPTED

ASSIGNED

承諾済(プロバイダにより)

DECLINED

DECLINED_BY_LINGUIST

辞退 (プロバイダにより)

REJECTED

REJECTED_BY_LINGUIST

拒否 (プロバイダにより)

DELIVERED

COMPLETED

納品済

EMAILED

EMAILED

メール済(プロバイダ提供)

COMPLETED

COMPLETED_BY_LINGUIST

完了済 (プロバイダにより)

CANCELLED

CANCELLED

CANCELLED

この記事は役に立ちましたか?

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.