
Get Treatments
API定義
POST https://apis.auxia.io/v1/GetTreatments
Path Parameters
| Name | Type | Description |
|---|---|---|
| api_key | String | Auxiaを使用する各プロジェクトまたは企業に発行される文字列のAPIキーです。 リクエストパラメータまたはヘッダーのいずれかに設定できます。 |
Headers
| Name | Type | Description |
|---|---|---|
| x-api-key | String | Auxiaを使用する各プロジェクトまたは企業に発行される文字列のAPIキーです。このAPIキーには、このAPIを呼び出す権限が必要です。 リクエストパラメータまたはヘッダーのいずれかに設定できます。 |
ステータスコード
- 200: OK トリートメントが正常に返されます。
- 401: Unauthorized 正しいAPIキー、projectId、その他のパラメータがリクエストに含まれていることを確認してください。
リクエストボディ(Raw)
{
"projectId": "1250",
// This is an example user ID. Actual user ID can be obfuscated. See
// documentation below
"userId": "gGTE8CWUIgpzPivCejVk7JN284V",
"contextualAttributes": [
{
"key": "profile_id",
"stringValue": "pr1234"
},
{
"key": "last_action",
"stringValue": "button_x_clicked"
}
],
"surfaces": [
{
"surface": "HOME_SCREEN",
"maximumTreatmentCount": 1
},
{
"surface": "CART_SCREEN",
"maximumTreatmentCount": 3,
"minimumTreatmentCount": 1
}
],
// Optional. Defaults to "en".
"languageCode": "en"
}
curlの例
curl --location --request POST 'https://apis.auxia.io/v1/GetTreatments' \
--header 'Content-Type: application/json' \
--header 'x-api-key: *********************' \
--data-raw '{
"projectId": "1250",
"userId": "gGTE8CWUIgpzPivCejVk79JN284V",
"contextualAttributes": [
{
"key": "profile_id",
"integerValue": 10
},
{
"key": "last_action",
"stringValue": "button_x_clicked"
}
],
"surfaces": [
{
"surface": "HOME_SCREEN",
"maximumTreatmentCount": 1
},
{
"surface": "CART_SCREEN",
"maximumTreatmentCount": 3,
"minimumTreatmentCount": 1
}
]
}'
レスポンス
{
"responseId": "690e24d8-16a6-4518-bf37-09a8f0120dfb",
"userTreatments": [
{
"treatmentId": "6",
"treatmentTrackingId": "6_690e24d8-16a6-4518-bf37-09a8f0120dfb",
"rank": "1",
"treatmentContent": "{ \"title\": \"You have a new message!\", \"description\": \"Learn how our product helps you\", \"cta_name\": \"Learn more\", \"cta_link\": \"/tabs/home/feed\"}",
"treatmentType": "IN_APP_CONTENT_CARD",
"surface": "HOME_SCREEN",
"contentLanguageCode": "en",
},
{
"treatmentId": "4",
"treatmentTrackingId": "4_690e24d8-16a6-4518-bf37-09a8f0120dfb",
"rank": "1",
"treatmentContent": "{ \"title\": \"Check out your trends\", \"description\": \"87% of users found this feature useful\", \"cta_name\": \"View trends\", \"cta_link\": \"/actionscreen\"}",
"treatmentType": "IN_APP_CONTENT_CARD",
"surface": "CART_SCREEN",
"contentLanguageCode": "en",
},
{
"treatmentId": "3",
"treatmentTrackingId": "3_690e24d8-16a6-4518-bf37-09a8f0120dfb",
"rank": "2",
"treatmentContent": "{ \"title\": \"Check leaderboard\", \"description\": \"See your global ranking\", \"cta_name\": \"View leaderboard\", \"cta_link\": \"/leaderboardscreen\"}",
"treatmentType": "IN_APP_CONTENT_CARD",
"surface": "HOME_SCREEN",
"contentLanguageCode": "en",
}
]
}
スキーマリファレンス
リクエスト
| Name | Data Type | Required? | Description |
|---|---|---|---|
| projectId | string | Required | 特定の顧客のプロジェクトに対して、常に同じ値を使用してください。 |
| userId | string | Required | 各ユーザーの一意のIDです。 |
| contextualAttributes | json | Optional | アプリのコンテキストからの追加属性のセットです。例: 現在の画面、最近のアクション、ユーザーのコンテキスト選択など。各コンテキスト属性はキーと値のペアです。 含めるべき内容:
同じキーを持つ重複した属性は例外をスローします。 例:
|
| surfaces | json | Required | リクエストには少なくとも1つのサーフェスを含める必要があります。各サーフェスには以下が含まれます:
例:
|
| languageCode | string | Optional | トリートメントのコンテンツに対してリクエストされる言語コードです。形式: IETF BCP 47。このフィールドが未指定の場合、デフォルトの言語(en)が使用されます。リクエストされた言語の翻訳がないトリートメントは返されません。 |
| maximumTreatmentCount | int64 | Optional | クライアントに返されるトリートメントの最大数です。値が設定されていない場合、デフォルトは1です。 |
レスポンス
| Name | Data Type | Description |
|---|---|---|
| responseId | string |
|
| userTreatments | json(下記の表を参照) | UIやメッセージングシステムでレンダリングするために必要な情報を含むトリートメントのリストです。 |
userTreatments
| Name | Data Type | Description |
|---|---|---|
| treatmentId | string | 特定のトリートメントを識別する一意のIDです。Auxiaコンソールの「Overview」セクションの「Treatments」でも確認できます。 |
| treatmentTrackingId | string | 特定のトリートメントだけでなく、そのトリートメントが返された特定のRPC呼び出しも参照する一意のIDです。 |
| surface | string | リクエストで上記に定義されたサーフェスの名前で、このトリートメントがレンダリングされるべき、またはこのトリートメントが使用されるべきサーフェスです。 |
| rank | int64 | 指定されたサーフェスに対するレスポンス内のトリートメントのランクです。Auxiaは、レスポンスでプロビジョニングされる前に、各ユーザーのトリートメントをランク付けしてソートします。 |
| treatmentType | string | コンテンツのレンダリング方法を決定するために使用されるクライアント設定パラメータです。 例: タイトル、テキスト、画像を含むカードをレンダリングする「In App Content Card」や、異なるUIコンポーネント用の「Banner」など。 |
| treatmentContent | json | (アプリ内で)表示される、または(メッセージに)含まれるコンテンツです。
コンテンツ内のプレースホルダーは、パーソナライゼーションシグナルで置き換えることができます。
コンテンツ形式は、Treatment Config UIを通じてAuxiaのお客様が管理します。
プレーンテキスト、JSON、HTML、JSスニペット、またはクライアントUIで直接使用可能な任意の形式を使用できます。
例:
|
| contentLanguageCode | string | トリートメントのコンテンツの言語コードです。形式: IETF BCP 47。 |
付録
言語と翻訳
in_app_content_cardなどのトリートメントコンテンツは、異なる言語に翻訳できます。
翻訳を使用するには、以下のエンドポイントにPOSTする際に「language_code」JSONフィールドで特定の言語コードを選択してください:
https://apis.auxia.io/v1/GetTreatments
例
curl --location --request POST 'https://apis.auxia.io/v1/GetTreatments' \
--header 'Content-Type: application/json' \
--header 'x-api-key: *********************' \
--data-raw '{
"projectId": "1250",
"userId": "gGTE8CWUIgpzPivCejVk7JN284V",
"contextualAttributes": [
{
"key": "profile_id",
"stringValue": "pr1234"
},
{
"key": "last_action",
"stringValue": "button_x_clicked"
}
],
"surfaces": [
{
"surface": "HOME_SCREEN",
"maximumTreatmentCount": 1
}
],
"languageCode": "vi"
}'
レスポンス
{
"responseId": "18c7c4b3-2093-494a-9996-94989abac914",
"userTreatments": [
{
"treatmentId": "4",
"treatmentTrackingId": "4_18c7c4b3-2093-494a-9996-94989abac914",
"rank": "1",
"treatmentContent": "... translated content ...",
"treatmentType": "IN_APP_CONTENT_CARD",
"surface": "HOME_SCREEN",
"contentLanguageCode": "vi",
}
]
}
未翻訳の場合
リクエストされた言語にトリートメントが翻訳されていない場合、そのトリートメントは返されません。
例
curl --location --request POST 'https://apis.auxia.io/v1/GetTreatments \
--header 'Content-Type: application/json' \
--header 'x-api-key: *********************' \
--data-raw '{
"projectId": "1250",
"userId": "gGTE8CWUIgpzPivCejVk7JN284V",
"contextualAttributes": [
{
"key": "profile_id",
"stringValue": "pr1234"
},
{
"key": "last_action",
"stringValue": "button_x_clicked"
}
],
"surfaces": [
{
"surface": "HOME_SCREEN",
"maximumTreatmentCount": 1
}
],
"languageCode": "eo"
}' # The language code `eo` is not supported.
レスポンス
{
"responseId": "e9861c48-f8bf-42dd-a189-a471c35002ad"
}