마케팅 동의 웹훅
Aghanim의 마케팅 동의 webhooks는 플레이어의 마케팅 동의 변경 사항을 게임에 알리고, 마케팅 목록을 동기화된 상태로 유지할 수 있도록 합니다.
웹훅 이벤트
이 webhook 이벤트를 사용하여 마케팅 목록을 관리하세요.
| 이벤트 | 실행되는 경우 | 해야 할 작업 |
|---|---|---|
player.marketing_consent.updated | 플레이어의 마케팅 동의 상태가 변경됨 | 그에 따라 마케팅 목록을 업데이트하세요 |
요구 사항
Aghanim의 마케팅 동의 웹훅을 사용하려면 웹훅 서버를 다음과 같이 구성해야 합니다:
- POST 웹훅 요청을 수락하는 HTTPS 엔드포인트.
- Aghanim이 생성하고 서명한 이벤트를 수신합니다.
- 웹훅 페이로드에 포함된
idempotency_key를 처리하여 중복 웹훅 처리를 방지합니다. - 이벤트가 성공적으로 처리되면 2xx 상태 코드로 응답하고, 오류가 발생하면 4xx 또는 5xx로 응답합니다.
구성
- 마케팅 동의 웹훅 처리를 위한 함수를 개발합니다.
- 엔드포인트를 사용 가능하게 설정하세요.
- 처리하려는 마케팅 동의 이벤트 유형을 선택하여 Aghanim 계정에서 엔드포인트를 등록합니다 → Game → Webhooks → New Webhook.
대안으로, Create Webhook API 메서드를 사용하여 Aghanim 내에서 엔드포인트를 등록할 수 있습니다.
요청 스키마
아래는 예시입니다 player.marketing_consent.updated 웹훅 요청:
- HTTP
- cURL
POST /your/webhook/uri HTTP/1.1
Content-Type: application/json
Host: your-webhook-endpoint.com
User-Agent: Aghanim/0.1.0
X-Aghanim-Signature: 2e45ed4dede5e09506717490655d2f78e96d4261040ef48cc623a780bda38812
X-Aghanim-Signature-Timestamp: 1725548450
{
"event_type": "player.marketing_consent.updated",
"event_data": {
"player_id": "2D2R-OP3C",
"email": {
"address": "[email protected]",
"granted_at": 1704067200,
"revoked_at": null
}
},
"event_time": 1725548450,
"event_id": "whevt_eCacGbJVbvToOgzjXUgOCitkQE",
"idempotency_key": null,
"request_id": "d1593e9c-c291-4004-8846-6679c2e5810b",
"sandbox": false,
"trigger": "hub.purchase",
"transaction_id": "whtx_eCacGbJVbvT",
"context": null,
"game_id": "gm_exTAyxPsVwh"
}
curl "https://your-webhook-endpoint.com/your/webhook/uri" \
-X POST \
-H "Content-Type: application/json" \
-H "User-Agent: Aghanim/0.1.0" \
-H "X-Aghanim-Signature: 2e45ed4dede5e09506717490655d2f78e96d4261040ef48cc623a780bda38812" \
-H "X-Aghanim-Signature-Timestamp: 1725548450" \
-d '{
"event_type": "player.marketing_consent.updated",
"event_data": {
"player_id": "2D2R-OP3C",
"email": {
"address": "[email protected]",
"granted_at": 1704067200,
"revoked_at": null
}
},
"event_time": 1725548450,
"event_id": "whevt_eCacGbJVbvToOgzjXUgOCitkQE",
"idempotency_key": null,
"request_id": "d1593e9c-c291-4004-8846-6679c2e5810b",
"sandbox": false,
"trigger": "hub.purchase",
"transaction_id": "whtx_eCacGbJVbvT",
"context": null,
"game_id": "gm_exTAyxPsVwh"
}'
이벤트 스키마
| Key | 유형 | 설명 |
|---|---|---|
event_id | string | Aghanim에 의해 생성된 고유 이벤트 ID. |
game_id | string | Aghanim 시스템에서의 귀하의 게임 ID. |
event_type | string | 이벤트의 유형, player.marketing_consent.updated 이럴 경우. |
event_time | number | 유닉스 에포크 시간으로 된 이벤트 날짜. |
event_data | EventData | 이벤트 특정 데이터가 포함되어 있으며, 상속된 객체에 대한 가능한 키가 포함됩니다. |
idempotency_key | string|null | 웹훅 작업이 재시도되어도 한 번만 실행되도록 보장합니다. 일 수 있습니다 null 이벤트 유형에 따라 달라집니다. |
request_id | string|null | 이벤트가 API 요청에 의해 트리거된 경우, 요청 ID가 포함됩니다. |
sandbox | boolean | 이 이벤트가 샌드박스 게임 환경에서 전송되었는지를 표시합니다. |
trigger | string|null | The trigger that caused the event to be sent. |
transaction_id | string | Aghanim이 생성한 거래 ID입니다. 이 ID는 동일한 거래 내에서 발생한 여러 이벤트에서 동일할 수 있습니다. |
context | object|null | 이벤트에 대한 컨텍스트 정보. |
EventData 스키마
| Key | 유형 | 설명 |
|---|---|---|
player_id | string | 플레이어 인증을 위해 선택된 고유한 플레이어 ID. |
email | `EmailChannel\ | null` |
EmailChannel 스키마
| Key | 유형 | 설명 |
|---|---|---|
address | string | 플레이어의 이메일 주소입니다. |
granted_at | number | 동의가 부여된 시점의 Unix 타임스탬프. |
revoked_at | `number\ | null` |
Trigger 값
| 값 | 설명 |
|---|---|
hub.purchase | Checkout 중에 플레이어가 마케팅에 옵트인할 때. |
s2s.player.marketing_consent.grant | Grant Email Marketing Consent S2S API를 통해 동의가 부여될 때입니다. |
s2s.player.marketing_consent.revoke | Revoke Email Marketing Consent S2S API를 통해 동의가 철회될 때입니다. |
dashboard.player.marketing_consent.revoke | Aghanim Dashboard를 통해 동의가 철회될 때입니다. |
test | Dashboard에서 "Send test event"를 사용할 때. |
도움이 필요하세요?
통합팀에 문의하십시오 [email protected]