사용자에게 보상을 지급하기 위해서 포스트백(Postback) 연동이 필요합니다. 포스트백 요청은 보안을 위해 서버 간 통신(Server-to-Server) 형태로 진행됩니다.
...
파라미터 필드(Field) | 타입 (Type) | 설명 |
---|
user_id
| String (max 255) | 매체사에서 정의한 유저의 식별값 |
transaction_id
| String (max 32) | 보상에 발급되는 ID, 이는 포인트 중복 지급을 방지하기 위해 사용 Panel |
---|
panelIconId | atlassian-warning |
---|
panelIcon | :warning: |
---|
bgColor | #FFEBE6 |
---|
| 같은 transaction_id 로 요청이 온 경우에는 반드시 포인트 중복 적립이 되지 않도록 처리해주어야 합니다. (필수) |
|
point
| Integer | 사용자에게 지급해야하는 포인트 |
unit_id
| Long | 광고가 노출된 지면의 ID 값 Note |
---|
현재 주로 사용하는 값은 15자리의 숫자입니다. |
|
title
| String (max 255) | 포인트가 지급된 방식에 설정된 이름 광고 (참여한 광고의 이름) 그 외는 모두 빈값
Info |
---|
최대 한글 255자까지 전달될 수 있으므로 연동 시 DB별 String 사이즈를 참조해 주세요. |
|
action_type
| String (max 32) | 포인트를 지급 받기 위해 사용자가 취한 액션 타입 opened : Feed 지면 진입 (지면을 방문하기만 해도 기본 리워드 적립)
u : 잠금 해제
l : 랜딩
a : 액션 (해당 광고의 요구 액션을 완료했을 때)
won : Potto에서 당첨번호에 당첨되었을 시 포인트 적립을 요청
manual : 담당자 수기 적립 요청
spinned : 룰렛 미션 참여 시 지급되는 포인트
daily : Feed 출석체크(데일리 리워드 이벤트) 참여 보상
|
event_at
| Long (timestamp) | 포인트 지급 시점 (UNIX Timestamp 초단위) 대부분 API 호출시점과 동일하지만 API 호출이 재시도인 경우 다를 수 있습니다. |
extra
| String (max 1024) | 파라미터를 추가해야할 경우, 해당 파라미터(JSON serialize 된 문자열 값)을 활용 |
data
| String | HTTP request parameter를 암호화 해서 전송하는 경우 사용되는 파라미터 Info |
---|
자세한 내용은 아래 HTTP Request Parameter Encryption/Decryption을 참조하세요. |
|
c
| String | HTTP request parameter에 Checksum을 전송하는 경우 사용되는 파라미터 Info |
---|
자세한 내용은 아래 Add Checksum Parameter를 참조하세요. |
|
custom2
| String (max 255) | 퍼블리셔 실시간 S2S API 제품 연동 매체사에서 지정하는 커스텀 파라미터 |
custom3
| String (max 255) | 퍼블리셔 실시간 S2S API 제품 연동 매체사에서 지정하는 커스텀 파라미터 |
custom4
| String (max 255) | 퍼블리셔 실시간 S2S API 제품 연동 매체사에서 지정하는 커스텀 파라미터 |
...
Expand |
---|
|
준비물 진행 절차 버즈빌 서버에서 HTTP Request parameter를 암호화 JSON serialized parameters(string)에 해당 string을 UTF-8 인코딩 적용 해당 string에 PKCS7 패딩 적용 및 AES 암호화 진행 암호화된 값을 base64 encoding을 진행
암호화 된 데이터를 HTTP POST request에 파라미터 data 라는 이름으로 추가하여 전송 e.g Code Block |
---|
| {
"data": "cg087LiIp30jCWpc3MVLfxPL4F05OFGGCkQwwpS6pRVMZhkumzfTFxc8iBoZ8unI15uk0cmY+CbSeOaLHsd7PaxsbyKISiJ31WJJ1OwfaYttoMwFysKNfL7pSz2HB9ULWZicG8MSPxCPKr9RDqgOXpuEoVm9YR3I4yNE5M0LNltpCTdXRBjTrOcjp+RtEZ1VENtHqTICK18nDqO+91BUt3AJsf4VmzogJ8UpA0izEbY="
} |
수신 측 (매체사) 에서는 HTTP POST request에서 data 파라미터를 가져와 아래와 같은 순서로 복호화 암호화된 값을 base64 decoding 진행 해당 decoding된 string을 복호화 진행 이후 PKCS7 패딩 제거 해당 string을 UTF-8 디코딩
예제 Code Block |
---|
| {
"unit_id":"12345",
"transaction_id":"10000000_1",
"user_id":"buzzvil",
"point": 1,
"action_type":"won",
"event_at": 1599622182,
"title":"title",
"extra": "{}"
} |
|
...