Localization API
Guides and Surveys Localization APIは、ガイドとサーベイの翻訳ファイルをXLIFF1.2形式でインポートおよびエクスポートします。このAPIは外部の翻訳管理システムやワークフローと統合できます。
| 名前 | 概要 |
|---|---|
| Import Translations | XLIFFファイルをインポートして、1つ以上のNudgeの翻訳を追加または更新します。 |
| Export Translations | (flag_keyによって)指定されたNudgeの翻訳をXLIFF1.2ファイルにエクスポートします。 |
地域
ここで説明するAPIエンドポイントはすべて、次のベースURLに関連しています。
| データのレジデンシー | ベースURL |
|---|---|
| デフォルト | https://app.amplitude.com/a/ |
| 欧州連合 | https://app.eu.amplitude.com/a/ |
認証
このAPIはベーシック認証を使用します。APIキー(アプリキーではなく)とプロジェクトシークレットキーを入力する必要があります。
文字列YOUR_API_KEY:YOUR_PROJECT_SECRET_KEYをBase64でエンコードすることにより、ベーシック認証ヘッダーを構築します。
ヘッダーの例: Authorization: Basic <base64_encoded_api_key:project_secret_key>
<base64_encoded_api_key:project_secret_key>を実際のBase64エンコードされた認証情報に置き換えます。
XLIFFファイルの構造
このAPIはXLIFFバージョン1.2を使用しています。XLIFF構造には次のエレメントが含まれます。
**
<file>エレメント:**ガイドやサーベイの翻訳を表します。original:ガイドまたはサーベイ、オプションで特定のバリアントを識別します。- フォーマット:
<key>または<key>_<variant> <key>:ガイドやサーベイに固有のキーです。<variant>(オプション):ガイドまたはサーベイ内の特定のバリアントの識別子です。- インポートの場合、
<variant>が省略されると、APIはガイドまたはサーベイのい最初のバリアントを更新します。 - エクスポートの場合、ガイドまたはサーベイに複数のアクティブなバリアントがある場合、各バリアントがXLIFFドキュメント内の個別の
<file>エレメント内に表示されます。original属性は、これらのファイルを区別するために<key>_<variant>のフォーマットを使用します。
- インポートの場合、
- フォーマット:
datatype="plaintext"source-language:ソース言語コードです(例:"en")。target-language:このファイル内の翻訳のターゲット言語コードです(例:"de"、"fr")。
**
<body>エレメント:**1つ以上の<trans-unit>エレメントを含んでいます。**
<trans-unit>エレメント:**翻訳用のテキストの一部を表します。id:ガイドまたはサーベイ内のテキストセグメントに対する固有の識別子です(例:snooze_label、step_1_title、step_6_content.markdown)。これらのIDは、ガイドまたはサーベイコンテンツの翻訳可能なフィールドに対応しています。<source>:source-languageの元のテキストです。<target>:target-language内の翻訳済みテキストです。インポートの場合は、ここに翻訳を提供してください。 エクスポートの場合、エレメントには既存の翻訳が含まれています。空の<target>エレメントは、テキストがそのターゲット言語にまだ翻訳されていないことを意味します。
エンドポイント
翻訳をインポート
XLIFFファイルをインポートして、1つ以上のガイドまたはサーベイの翻訳を追加または更新します。インポートが成功すると、Amplitudeはアプリケーションの関連キャッシュをパージし、新しい翻訳を利用できるようにします。
- HTTPメソッド:
POST - URL:
/import/ - ヘッダー:
Authorization: Basic <base64_encoded_api_key:project_secret_key>Content-Type: application/xml; charset=utf-8
- リクエスト本文: XLIFF1.2の生のXMLコンテンツ。xml
<?xml version="1.0" encoding="UTF-8"?> <xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2"> <file original="your-nudge-flag-key" datatype="plaintext" source-language="en" target-language="de"> <body> <trans-unit id="step_1_title"> <source>Welcome!</source> <target>Willkommen!</target> </trans-unit> <trans-unit id="step_1_content.markdown"> <source>This is an important announcement.</source> <target>Dies ist eine wichtige Ankündigung.</target> </trans-unit> <!-- Add more trans-unit elements as needed --> </body> </file> <!-- Add more file elements for other Nudges or languages --> </xliff> - リクエスト例(curl):
(bashcurl -X POST \\ -H "Authorization: Basic YOUR_BASE64_ENCODED_CREDENTIALS" \\ -H "Content-Type: application/xml; charset=utf-8" \\ --data \'\'\'<?xml version="1.0" encoding="UTF-8"?> <xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2"><file original="nudge-translated-announcement-1" datatype="plaintext" source-language="en" target-language="de"> <body> <trans-unit id="step_1_title"> <source>Announcement</source> <target>Ankündigung</target> </trans-unit> </body> </file> </xliff>\'\'\' \\ "https://app.amplitude.com/a/guides-surveys/api/v1/localization/import/"<base64_encoding(api_key:project_secret_key)>を実際のBase64エンコードされたAPIキーとプロジェクトシークレットキーに置き換えてください。) - レスポンス:
200 OK:XLIFFファイル内のすべての翻訳単位が正常に処理されました。レスポンス本分は、処理された各ファイルのステータスを詳述するJSONオブジェクトです。 例:
json{ "nudge-translated-announcement-1": { "de": { "state": "COMPLETE", "message": "Updated 5 translation units." } } }
翻訳をエクスポート
(keyによって)指定されたガイドまたはサーベイの翻訳をXLIFF1.2ファイルにエクスポートします。
- HTTPメソッド:
GET - URL:
/export/ - ヘッダー:
Authorization: Basic <base64_encoded_api_key:project_secret_key>
- クエリパラメータ:
key(文字列、必須):翻訳をエクスポートする対象のガイドまたはサーベイのキーです。複数のガイドやサーベイをリクエストするには、このパラメータを複数回提供するか、カンマ区切りリストを提供します(例:?key=key1&key=key2または?key=key1,key2)。少なくとも1つのkeyは必須です。locale(文字列、オプション):エクスポートする特定のターゲット言語コード("de"、"fr"など)。このパラメータは、複数のロケールに対して複数回指定してください。 省略された場合、APIはソース言語を除く、アプリに設定されているすべてのターゲットロケールの翻訳をエクスポートします。
- リクエスト例(curl): 単一のガイドまたはサーベイと、特定のロケールの翻訳をエクスポートする場合:
複数のガイドまたはサーベイのキーとロケールをエクスポートする場合:bashcurl -X GET \\ -H "Authorization: Basic YOUR_BASE64_ENCODED_CREDENTIALS" \\ "https://app.amplitude.com/a/guides-surveys/api/v1/localization/export/?key=nudge-translated-announcement-1&locale=de" (bashcurl -X GET \\ -H "Authorization: Basic YOUR_BASE64_ENCODED_CREDENTIALS" \\ "https://app.amplitude.com/a/guides-surveys/api/v1/localization/export/?key=key-one&key=key-two&locale=de&locale=fr"YOUR_BASE64_ENCODED_CREDENTIALSを実際のBase64エンコードされたAPIキーとプロジェクトシークレットキーに置き換えてください。) - レスポンス:
200 OK:レスポンス本文にはXLIFF1.2のXMLコンテンツが含まれています。
これは役に立ちましたか?