Phrase TMS API

APIテクノロジー(TMS)

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

APIは、アプリケーションエンティティ(プロジェクト、ジョブ、設定)を取得、作成、変更、削除できるリソースと見なします。 

すべてのHTTPメソッドはアクションを表します。

  • GET

    リソースを取得し、リソースを変更することはありません

  • POST

    リソースを作成します。POSTは、翻訳メモリの検索やジョブの作成など、4つの操作のいずれにも当てはまらない操作や、入力が長く複雑な操作にも使用されます。

  • PUT

    リソースを更新します。エンティティ全体は 必須 であり、変更されたフィールドだけでなく、すべてのフィールドが含まれていることに注意してください。含まれていないということは、nullに設定する必要があることを意味します。

  • DELETE

    リソースを削除します。

重要

入力および出力データ は通常、UTF-8エンコードされた JSON ファイル形式です。リクエスト本文のコンテンツタイプとしてファイルを使用する場合、application/octet-stream または multipart/form-data が使用されます。

良好な応答時間を維持するために、エンティティは可能な限りフラットな構造を使用します。子オブジェクト全体を回答に含めるのではなく、ID、UID、およびその他のいくつかの属性を含む参照が含まれます。IDReference オブジェクトまたは UidReference オブジェクトのいずれかが関連エンティティを参照する必要があります。

すべての応答リストがページングされます。パラメータ pageNumberpageSize を使用して、要求されたデータを取得します。最大ページサイズは50です。

ドキュメント

APIドキュメントにはOpenAPI 3.0が使用されます。クライアント開発にはスワガーコードジェネレータが推奨されます。

生のドキュメントファイル:

API例

すべての翻訳メモリの一覧を取得

GET

/web/api2/v1/transMemories

応答

200

{
    "pageNumber":0,
    "content": [
        {
            "internalId":1,
            "createdBy": {
                "userName": "admin",
                "id":"3",
                "firstName":"Jan",
                "lastName":"Janocko",
                "role":「管理者」、
                "email": "jan.janocko@phrase.com"
            },
            "client": null,
            "注":"TMでの使用は必要ありません",
            "dateCreated":"2018-01-09T14:07:46+0000",
            "id":"1",
            "targetLangs": [
                "es",
                "it"
            ],
            "subDomain": null,
            "businessUnit": {
                "id":"1",
                "name":「最初のBU」
            },
            "sourceLang": "en",
            "domain": null,
            "name":「新しいTM」
        }
    ],
    "numberOfElements":1,
    "totalElements":1,
    "pageSize":50,
    "totalPages":1
}

新しい翻訳メモリの作成

POST

/web/api2/v1/transMemories

{{
"name":「新しいTM」、
"sourceLang": "en",
"targetLangs": [
"es","it-IT"
],
"businessUnit": {
"id":"1"
},
"note": "TMでの使用は必要ありません"
}

応答

201

{
    "internalId":1,
    "createdBy": {
        "userName": "admin",
        "id":"3",
        "firstName":"J",
        "lastName":"Jan",
        "role":「管理者」、
        "email": "jan.j@phrase.com"
    },
    "client": null,
    "注":"TMでの使用は必要ありません",
    "dateCreated":"2018-01-09T14:07:46+0000",
    "id":"1",
    "targetLangs": [
        "es",
        "it"
    ],
    "subDomain": null,
    "businessUnit": {
        "id":"1",
        "name":「最初のBU」
    },
    "sourceLang": "en",
    "domain": null,
    "name":「新しいTM」
}

ジョブ作成時のファイルの追加

このファイルをバイナリ添付ファイルとしてリクエストの本文に追加します。Phrase と コンテンツ破棄 ヘッダーが正しく挿入されていることを確認します。

PostmanのサンプルPHP:

<?php

$request = new HttpRequest();
$request->setUrl('https://cloud.memsource.com/web/api2/v1/projects/%7BUID%20of%20your%20project%7D/jobs');
$request->setMethod(HTTP_METH_POST);

$request->setQueryData(array(
 トークン  => 'トークンはこちら'
));

$request->setHeaders(array(
'postman-token' => 'ABC',
'cache-control' => 'キャッシュなし',
'content-disposition' => 'filename*=UTF-8''Sample.txt',
'Memsource' => '{\\"targetLangs\\":[\\"de\\",\\"fr\\",\\"es\\"],\\"callbackUrl\\":\\"https://my-shiny-service.com/consumeCallback\\",\\"importSettings\\":{\\"uid\\":\\"WF0T1SfSHxII09yKr0dZh9\\"}'
));

try {
$response = $request->send();

echo $response->getBody();
} catch (HttpException $ex) {
echo $ex;
}

エラー処理

APIリクエストの処理中に問題が発生した場合、次のJSON構造体が返されます。エラーコード は常に表示されます。詳細説明はnullの可能性があります。

{ "errorCode":"InvalidArguments",
"errorDescription":「文字列」タイプの必須引数「パスワード」が見つかりません。
}

エラーレスポンスは、 レスポンスのHTTPステータスコードを読み取ることで検出できます。エラーが発生した場合、2xxに設定されることはありません。ステータスコードは400 bad request、認証または認可の問題の場合は401または403です。

問題の報告

テクニカルサポートに問題を報告する場合、 は以下の項目をレポートに含めます。

  • APIエンドポイント

  • リクエスト

  • 時間 (およびタイムゾーン)

  • レスポンス

  • 応答のPhrase-Action-ID

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

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.