Callback parameters

Find a comprehensive list of all callback parameters.

Mandatory parameters

ParameterTypeDescription
[%USER:UID%]StringUnique User Identifier, passed in by publisher. Max. length is 65 characters.
[%VALUE:CURRENCY%]FloatUser Reward in App Currency. You can configure it in the Currency Settings.
[%VALUE:USD%]FloatComplete payment in USD, paid to the publisher.
[%TX%]StringTransaction ID. Use this to prevent double-booking.
&hash=[Hash]StringAlways attached: Hash of the complete URI (HEX encoded SHA-1 HMAC) with the App Secret. We recommend using this to verify your callbacks. Read more about it here.

General parameters

ParameterTypeDescription
[%APP:TOKEN%]StringReturns the token of your placement/app.
[%USER:IP_ADDRESS%]StringIP Address of the user
[%REF%]StringReference ID can be used to look up the transaction ID of the COMPLETE or COMPLETED callback.

Offer parameters

Parameter

Type

Description

[%OFFER:ID%]

Integer

ID of the completed task's offer. One offer can have many tasks.

[%OFFER:TASK:ID%]

Integer

ID of the completed task.

[%OFFER:TASK:STATE%]

String

It can only be used when using Stateful Offer Callbacks. One of: NONE, COMPLETED, PENDING, RECONCILED. It isNONE if stateful offer conversion callbacks are disabled (this is the default). If they are enabled, however, it indicates the latest state of the offer conversion.

[%OFFER:NAME%]

String

Localized name of the offer. Language is equivalent to what the user saw.

[%OFFER:TASK:NAME%]

String

Localized name of the task. Language is equivalent to what the user saw.

[%OFFER:TITLE%]

String

Returns the anchor name of an offer.

[%OFFER:DELAY%]

Integer

Returns the user reward delay in minutes.

[%OFFER:TASK:IAP:USD%]

Float

The USD amount of a single in-app purchase of an app.

[%OFFER:TASK:HIDDEN%]

Integer

Shows if the in-app purchase event was visible to the user or not: 0 when the event is visible, 1 when it's hidden.

[%OFFER:TASK:TYPE:ID%]

Integer

1 – INSTALL: User completed an app install.

2 – EVENT: Generic catchall event type for anything that doesn’t fall into the other categories.

3 – PURCHASE: Event fired when a specific purchase is made (Purchase the pack of 10 gems to earn X).

4 – ADJUST: Dynamic event types we’re able to support with our Adjust clients.

5 – PLAYTIME: Time-based events (e.g., “Play 5 days in a row”).

6 – APPSFLYER: Dynamic event types we’re able to support with our Appsflyer clients.

7 – SPONSORSHIP: Special event type for sponsored deals that require no user action.

8 – SIGN_UP: Similar to install, but for offer types that don’t require an install, but sign-ups.

9 – DEPOSIT: Often used for cash games and other offers that require the user to maintain a cash balance (Deposit X and win Y games).

10 – DIRECT_DEPOSIT: An event that requires a direct deposit, often into a bank account. Generally used for fintech offers (Make a direct deposit of at least X to earn Y).

11 – ORDERED_LEVEL_EVENT: Level-based ordered actions (e.g., “Reach level 10”).

12 – AD_VIEW: Event fired when an advertisement is viewed.

13 – ANY_PURCHASE: Event fired when a non-specific purchase is made (Make any purchase to earn X).

14 – OTHER_SALE: Catch-all for where we’re collecting the sale amount, but it’s not a deposit or an IAP (Sign up for X subscription to earn Y).

null – UNKNOWN: Event type not recognized or not provided.

[%OFFER:TASK:TYPE:NAME%]

String

Returns the corresponding name to the Type ID.

[%OFFER:REJECTION_REASON%]

String

Returns a rejection reason. Find a list of reasons here.

Additional parameters for offer ban callbacks

ParameterTypeDescription
[%BAN:REASON%]StringReturns the reason for a user ban.
[%BAN:STATUS%]StringReturns ACTIVE or BANNED.

Survey parameters

Parameter

Type

Description

[%ACTIVITY:TYPE%]

String

Type of the callback ("COMPLETE", "SCREENOUT","RECONCILIATION", "START_BONUS")

[%SURVEY:REASON%]

String

Explains the reason for a screenout. It can be one of the following: NONE: The user faced a screenout during the client survey ERROR: Something went wrong before the user joined the client survey. QUALITY: The user faced a screenout due to quality issues CLICK: The user faced a screenout during the qualification process
Test Reason: Sent during callback testing.

Additional reasons can be added in the future.

[%SURVEY:RATING%]

Integer

Survey Rating from 0 to 5

[%SURVEY:NETWORK:NAME%]

String

Internal Survey Source/Mediation Layer

[%SURVEY:LOI%]

Integer

Length of the Survey in minutes.

[%COUNTRY%]

String

The Country the User took the survey from as ISO Code. (Example: US, DE, FR)

[%SURVEY:ID%]

String

Unique survey id returned in /v2/client/surveys endpoint. Only available if new integration API is used.

[%VALUE:PROMISED_USD%]

Float

Used for screenout purposes. Returns the survey’s promised CPI in USD.

[%VALUE:PROMISED_CURRENCY%]

Float

Used for screenout purposes. Returns the survey’s promised Reward in the converted currency.

Magic Receipts parameters

ParameterTypeDescription
[%RECEIPT:STATE%]StringIt can only be used when using Stateful Magic Receipts Callbacks. One of: COMPLETED, PENDING, RECONCILED, REVIEWING
[%RECEIPT:OFFER:ID%]IntegerReturns the offer ID
[%RECEIPT:OFFER:NAME%]StringReturns the offer name
[%RECEIPT:UPLOAD:ID%]IntegerReturns an ID that is associated to an upload
[%RECEIPT:UPLOAD:OFFER:ID%]IntegerReturns the id we give to an offer that the member tried to get awarded for, i.e. if they clicked that this specific offer was on their receipt, and they are attempting to be awarded for it, we create a unique id for this. Or if an offer we are serving matches with an offer on their receipt (without them choosing it), we create an upload offer id for that if they get awarded.
[%RECEIPT:REASON:DESCRIPTION%]StringReturns the reason why a receipt got rejected or approved.
[%RECEIPT:REASON:ID%]IntegerReturns the id of the reason.

Cashback parameters

ParameterTypeDescription
[%CASHBACK:STATE%]StringOne of: COMPLETED, CREATED, ADJUSTED, PENDING
[%CASHBACK:MERCHANT:REF%]StringReturns the merchant ref ID
[%CASHBACK:MERCHANT:NAME%]StringReturns the merchant name
[%CASHBACK:EVENT:NAME%]StringReturns the name of the tracked event
[%CASHBACK:ORDER:ID%]StringReturns the order ID of a purchase
[%CASHBACK:REASON%]StringReason for adjustments
[%CASHBACK:LINE_ID%]StringThe offer line ID
[%CASHBACK:REWARD_DELAY_DAYS%]IntegerDelay in days