Pass-through values
Pass-through values allow publishers to send custom key-value data when sending a participant into a survey. These values are stored with the session and returned as parameters on your reward postback, and in the pass_through parameter of the post-survey redirect.
This is useful for passing internal identifiers such as:
- Session IDs
- Placement IDs
- Campaign IDs
- User segmentation flags
- Any custom reconciliation metadata
Where to append pass-through values
To use pass-through values:
- Take the survey's
offer_entry_urlfrom theGET /campaignsresponse. - Append the
pass_through_valuesparameter to that URL before redirecting the user.
Parameter format
Append the following parameter to the end of the offer_entry_url:
&pass_through_values=<url_safe_base64_json>
Encoding requirements
- The value must be a JSON object (key-value pairs).
- Encode the JSON string with URL-safe Base64.
Example
Original JSON
{
"session_id": "abc123",
"placement_id": "wall_top",
"campaign": "spring_promo"
}
Base64 encoded
eyJzZXNzaW9uX2lkIjoiYWJjMTIzIiwicGxhY2VtZW50X2lkIjoid2FsbF90b3AiLCJjYW1wYWlnbiI6InNwcmluZ19wcm9tbyJ9
Final offer entry URL
https://www.tapresearch.com/router/offers/28e0f041675fb74b7ef254482ad1d502/pre_entry?...&pass_through_values=eyJzZXNzaW9uX2lkIjoiYWJjMTIzIiwicGxhY2VtZW50X2lkIjoid2FsbF90b3AiLCJjYW1wYWlnbiI6InNwcmluZ19wcm9tbyJ9
Postback behavior
Each key is returned as a separate parameter on the reward postback, covered by its signature. Choose names that do not conflict with standard postback fields.
Example postback parameters
For the example above, a GET postback includes these parameters alongside the standard ones:
campaign=spring_promo&placement_id=wall_top&session_id=abc123
Error handling
Send a JSON object encoded as URL-safe Base64. Invalid Base64 can prevent the survey session from starting; decoded data that is not a JSON object prevents reward postback delivery.
Best practices
- Keep the JSON payload small.
- Use stable, predictable keys.
- Avoid sending sensitive information.
- Ensure values are unique per click when needed for reconciliation.
- Use the reward postback fields, not pass-through values, to determine rewards.