API Integration (Advanced)
Get Progress API - Technical Docs
Quick start
Endpoint
Method: GET. HTTPS is required.
Authentication
This endpoint uses your wall-specific API key (a 20 character key found in the Publisher Portal under Offerwall > API Key). The key identifies the wall, so there is no wall parameter to send.
This key is specific to Get Progress. It is different from the account-level key used by the Get Offers API. The Get Personalized API requires no key at all. Use the wall key shown under Offerwall > API Key for this endpoint.
You can supply the key in any of these ways:
Header:
X-API-Key: YOUR_WALL_API_KEYHeader:
Authorization: ApiKey YOUR_WALL_API_KEYHeader:
Authorization: Bearer YOUR_WALL_API_KEYQuery parameter:
api_key=YOUR_WALL_API_KEY
Passing the key as a header is recommended so it stays out of URLs and logs. Keep the key secret and never expose it in client-side code.
Request parameters
Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| path | string | Yes | The user's identifier in your integration (ASCII). |
| query | integer | No | Maximum offers to return (1 to 500). Default 100. |
| query | integer | No | Pagination offset. Default 0. |
| query | integer | No | Return progress for a single offer only. |
| query | integer | No | Filter by reward status: |
| query | string | No | Optional session identifier. |
| query | string (IPv4) | No | IP used for country macro expansion. Defaults to the caller's IP. |
| query | string | No | Two-letter country override for macros. |
| query | integer | No | Click source used when generating |
Pagination
Results are paged with limit and offset, and the response reports total (the number of matching offers before paging). Walk the full set by incrementing offset by limit until offset reaches total.
The response
A successful request returns status: "success" and a paged list of the user's offers.
Field | Type | Description |
|---|---|---|
| string |
|
| integer | Your affiliate (publisher) ID. |
| integer | The wall the key belongs to. |
| integer | A reference ID for this request, useful when contacting support. |
| integer | Matching offers before the |
| integer | The offset applied to this page. |
| integer | The page size applied to this page. |
| array | The user's offers and their progress (see below). |
The offer object
Each entry in offers[] describes one offer the user has engaged with. The content, categorization, and reward fields match the rest of the RevU suite; the progress detail lives mostly inside events[].
Identity and content
Field | Type | Description |
|---|---|---|
| integer | Unique offer identifier. |
| string | Internal/campaign name. |
| string | Short marketing headline. |
| string | Longer description. |
| string | Terms and requirements. |
| string | Optional campaign label. |
Categorization
Field | Type | Description |
|---|---|---|
| string | Category label: |
| integer | Internal content category (0 to 11): 0 Undefined, 1 Casino/Gambling, 2 Loyalty Offers, 3 Non Branded Submits, 4 Games, 5 Trial/Purchase, 6 Surveys, 7 Branded, 8 Mobile Non Gaming, 9 Alcohol/Tobacco/Drugs, 10 Other Mature, 11 Social Casinos. |
Rewards
Field | Type | Description |
|---|---|---|
| number | Total virtual currency the user can earn across all events (sum of |
| number | Your total payout across events in USD. |
| integer | Base attribution window in days. |
Click URL and timing
Field | Type | Description |
|---|---|---|
| string | The user-specific tracking URL. Serve it as-is. |
| string | null |
| string | null |
| array | Images, each with |
| string | Expected tracking delay: |
Events and per-step progress
Each entry in events[] is one step of the offer, with both its reward terms and the user's progress on it.
Field | Type | Description |
|---|---|---|
| string | Identifier for this step (the base step is |
| string | What the user must do for this step. |
| number | Virtual currency offered for this step. |
| number | Your payout for this step in USD. |
| integer | Reporting type id from the campaign configuration. |
| integer | Attribution window for this event in days. |
| integer |
|
| integer | Points actually awarded to the user from the conversion record. |
| string | null |
| integer | Status code: |
| string | The status as a label: |
| string | null |
Reward status reference
The same status set is used by the reward_status filter and by each event's event_reward_status:
Code | Label | Meaning |
|---|---|---|
1 |
| The user has started but not yet completed the step. |
2 |
| The reward has been credited. |
3 |
| The reward was reversed, or the opportunity expired. |
4 |
| Completed and awaiting credit (see |
Best practices
Call on demand. Fetch a user's progress when you are about to render it, rather than caching it.
Serve
click_urlunmodified. It is already specific to the user.Use
event_reward_status_labelto drive UI states (in progress, credited, pending, reversed).Use
reward_statusto fetch just the slice you need (for example, only in-progress offers for an activity screen).Paginate with
limitandoffsetand stop onceoffsetreachestotal.Include
support_idfrom the response when you raise a support ticket.
Errors
Every error uses the same shape:
HTTP |
| Meaning |
|---|---|---|
400 |
|
|
400 |
| The user ID contains unsupported (non-ASCII) characters. |
401 |
| No API key was supplied. |
403 |
| The key is invalid or inactive. |
403 |
| The key does not resolve to a valid wall or affiliate. |
405 | (method not allowed) | Only |
500 |
| A server or data error occurred. |
Support
For technical questions, contact your account manager or sales contact. Include the support_id from the response when reporting an issue.
Share feedback on this documentation