チャネル関連識別子の設定
チャネル関連識別子は、到達チャネル上の識別子であり、そのチャネルの到達対象として使用できます。設定と解除は、いずれも EUID とチャネル ID に基づいて実行します。
完全な呼び出し URL は、データセンターの Base URL と下記の API パスを組み合わせたものです。Base URL、API Key、API Secret の取得方法については、REST API 概要を参照してください。
呼び出し認証
EngageLab REST APIはHTTP基本認証の認証方式を使用します:HTTPヘッダーにAuthorizationを追加します:
Authorization: Basic ${base64_auth_string}
上記のbase64_auth_stringの生成アルゴリズムは:base64(api_key:api_secret)
- ヘッダー名は"Authorization"で、値はbase64変換後の"username:password"ペア(コロンで区切る)。
- MA APIシナリオでは、usernameはAPIKey、passwordはAPISecretです。データソースにAPIタイプのデータソースを追加してAPIKeyとAPISecretを取得してください。
チャネル関連識別子の設定
呼び出しアドレス
POST /v1/user/channel
リクエスト例
リクエストヘッダー
> POST /v1/user/channel
> Content-Type: application/json
> Authorization: Basic N2Q0MzFlNDJkZmE2YTZkNjkzYWMyZDA0OjVlOTg3YWM2ZDJlMDRkOTVhOWQ4ZjBkMQ==
リクエストボディ
{
"euid": 10362473,
"channel_id": 8801,
"ma_rid": "1a0018970d1c9f8f8e2",
"value": [
"channel_identifier_1",
"channel_identifier_2"
]
}
リクエストパラメーター
| フィールド | タイプ | 必須か | 説明 |
|---|---|---|---|
euid |
Long | はい | ユーザーの一意の ID。現在のプロジェクトに既に存在するユーザーである必要があります。 |
channel_id |
Long | はい | 到達チャネル ID。現在のプロジェクトに既に存在するチャネルである必要があります。 |
ma_rid |
String | いいえ | MA Registration ID。指定すると、今回書き込むチャネル識別子はこの MA RID に紐づき、プラットフォームが記録されます。この MA RID が別の EUID へ移ると、それに紐づいたチャネル識別子も一緒に移ります。省略、空文字、または空白のみの場合、今回の書き込みでは紐づけを作らず、今回書き込む識別子に既存の紐づけがあれば消去します。値からプラットフォームを解析できない場合、設定は失敗します。 |
value |
Array<String> | はい | 設定するチャネル関連識別子の一覧。リストは空にできず、各要素も空白にできません。値は原文のまま保存され、大文字と小文字を区別し、前後の空白は除去しません。同一リクエスト内の重複値は除去されます。 |
同じ euid + channel_id では、同じ識別子を今回のリクエスト内容で書き直します。旧レコードを削除して新しいレコードを書き込み、更新時刻は現在時刻になります。今回の一覧にない既存の識別子はそのまま残り、新しい値は追加されます。
AppPush/WebPush チャネルでは、同一 channel_id の同じチャネル識別子は 1 つの EUID にのみ属します。新しい EUID への書き込みが成功したあと、システムはその値をまだ持つ他の EUID から削除します。その他のチャネル種別では、この一意性の付け替えは行いません。
レスポンスパラメーター
| フィールド | タイプ | 必須か | 説明 |
|---|---|---|---|
code |
Int | はい | API 呼び出しが成功したかどうか。0 は成功を示します。 |
message |
String | はい | API 呼び出し結果の説明。 |
成功例
{
"code": 0,
"message": "success"
}
チャネル関連識別子の解除
呼び出しアドレス
POST /v1/user/channel/unbind
リクエスト例
リクエストヘッダー
> POST /v1/user/channel/unbind
> Content-Type: application/json
> Authorization: Basic N2Q0MzFlNDJkZmE2YTZkNjkzYWMyZDA0OjVlOTg3YWM2ZDJlMDRkOTVhOWQ4ZjBkMQ==
リクエストボディ
{
"euid": 10362473,
"channel_id": 8801,
"value": [
"channel_identifier_1",
"channel_identifier_2"
]
}
リクエストパラメーター
| フィールド | タイプ | 必須か | 説明 |
|---|---|---|---|
euid |
Long | はい | ユーザーの一意の ID。 |
channel_id |
Long | はい | 到達チャネル ID。 |
value |
Array<String> | はい | 解除するチャネル関連識別子の一覧。各値は保存済みの識別子と完全一致する必要があります。大文字と小文字を区別し、前後の空白は除去しません。 |
解除はチャネル識別子の値で一致させ、ma_rid では一致させません。解除リクエストに ma_rid フィールドはありません。euid + channel_id + value が完全一致するレコードを削除します。ユーザーが存在しない、またはそのユーザーに完全一致する識別子がない場合、データは変更せず成功を返します。解除では channel_id が現在のプロジェクトに属するかどうかは検証しません。
レスポンスパラメーター
| フィールド | タイプ | 必須か | 説明 |
|---|---|---|---|
code |
Int | はい | API 呼び出しが成功したかどうか。0 は成功を示します。 |
message |
String | はい | API 呼び出し結果の説明。 |
成功例
{
"code": 0,
"message": "success"
}
エラーコード
設定 API は業務検証に失敗すると、次のエラーコードを HTTP ステータス 400 で返します。レスポンス本文の message は英語の説明であり、下表の説明文そのものではありません。解除 API が 55004 を返すのは、必須パラメーターが不正な場合、またはリクエスト本文を解析できない場合だけです。ユーザーまたは識別子が存在しない場合、解除は成功を返します。
| エラーコード | 説明 | 詳細 |
|---|---|---|
| 55004 | 業務パラメーターが不正 | 設定時に channel_id が現在のプロジェクトに存在しない場合、message は channel_id does not exist in current project: {channel_id} です。設定時に ma_rid からプラットフォームを解析できない場合、message は ma_rid is invalid です。設定と解除の両方で、必須項目の欠落、空の value、空白だけの要素、解析できないリクエスト本文(このときの message は Invalid request payload format)もこのコードを返します。 |
| 55108 | 無効な EUID | 設定 API のみが返します。現在のプロジェクトにその EUID が存在しません。message は EUID does not exist: {euid} です。 |
失敗例
channel_id が存在しない場合:
{
"code": 55004,
"message": "channel_id does not exist in current project: 8801"
}
ma_rid を解析できない場合:
{
"code": 55004,
"message": "ma_rid is invalid"
}
EUID が存在しない場合:
{
"code": 55108,
"message": "EUID does not exist: 10362473"
}










