Overview
For an introduction to callbacks, see the Callbacks documentation.
This page covers two additional parameters for handling survey reconciliation:
status- Indicates if a completion was rejectedrejection_reason- Explains why a completion was rejected
How Reconciliation Works
- Rejections are sent either at completion time or in daily batches
- A rejected payout arrives as a second callback with:
- The same
tid(transaction ID) - Status of "Rejected"
- A rejection reason
- The same
Server-to-Server Only
status and rejection_reason are only available via server-to-server postback. They are not sent through in-app callbacks.
Payload
| Parameter | Type | Description |
|---|---|---|
| uid | String | Persistent unique identifier for this user. |
| did | String | Device identifier -- IDFA for Apple, Google Device ID for Android (May not be present if the user opted out of ad tracking). |
| tid | String | Transaction ID or click ID. This value will not be unique if the user completed multiple surveys in a single session. Use cpid for deduping purposes. |
| cpid | String | Unique survey complete identifier. We recommend that you store and check against this value to ensure you reward the user only once per survey complete. |
| api_token | String | This is the unique identifier we generate when you create an app in our dashboard. |
| payout_amount | Integer | Amount of currency earned by this user. |
| payout_currency | String | The type of currency the user earned. |
| revenue | Decimal | Amount you will be paid for this survey complete in USD. |
| payout_type | Integer | The action that the user was rewarded for. 0 - Profile Complete, 3 - Survey Rewarded, 9 - Quick Question Completed. |
| ip_address | String | This is the IP address of the respondent when the transaction occurred. |
| sig | String | This is the URL signature, which is an HMAC-MD5 generated using the query string, minus the sig parameter. See the security section for more details. |
| status | String | The status of the transaction. Possible values are "Pending" or "Rejected". Except in extremely rare circumstances, "Pending" transactions will be updated to status "Complete" after 90 days. We will not fire the callback at the time but the payout is considered settled. Only available for server-to-server postback. |
| rejection_reason | String | The reason for rejection, if applicable. Only available for server-to-server postback. |