Integration overview
My Ad Rewards is a rewarded-attention verification and rewards layer that sits alongside your existing ad stack. This documentation covers everything an integrator needs: the publisher tag, the earn mark, advertiser funding and reporting, CTV, the API, and the additional earning surfaces.
The model, in developer terms
A reward is never issued for an ad request or an impression alone. Two independent reports — two keys — must agree about the same view, and the viewer must then claim the reward:
- 1
The publisher reports delivery. The tag (or your ad server) posts a
delivery_reporttoPOST /v1/events— the creative was delivered, for this publisher, creative, and placement. - 2
The device confirms the view. The same tag posts a second report from the device — a
viewability_confirmfor display (50% of pixels in view for 1 continuous second by default) or acompletion_confirmfor video. - 3
The pair matches. Both halves carry the same
nonce,publisher_id, andidentity_token. When they meet inside the 10-minute match window, the view is verified and the reward becomes claimable — held for the viewer, not yet paid. - 4
The viewer claims. A tap on the earn badge, the wallet, or the phone notification releases the points. Only then is the funder's prepaid budget drawn — once, for exactly that claim.
- 5
Unclaimed rewards expire. If nobody claims within the claim window (24 hours by default), the reward expires and nothing is drawn.
Because earning requires a verified view plus an explicit claim, advertisers pay for attention a viewer chose to collect on — and every step is observable through receipts, reports, and webhooks.
Who integrates what
Publishers
Add the verification tag and the earn mark to your pages or app webviews, and verify the loop end-to-end.
Publisher guide →
Advertisers
Fund a rewards budget, bind it to your creatives, and reconcile claims through reporting and webhooks.
Advertiser guide →
CTV apps
Web-based apps use the same JavaScript; native apps report through the ad server. Includes screen pairing and the phone claim.
CTV guide →
API reference
Authentication (email code, Google, identity tokens, operator key) and the full endpoint tables.
API reference →
More ways to earn
Scan-to-claim tokens, receipt cashback, and out-of-home capture — three more claim surfaces on the same wallet.
Earning surfaces →
Key concepts
| Concept | What it is |
|---|---|
publisher_id | Your publisher identifier, issued at onboarding. Every event, token, and report is keyed by it. |
nonce | A 16-hex-character value generated per tracked view and shared by both halves of the pair. It is also the capability that identifies the view's receipt. |
| Identity token | A 32-hex-character token that ties events to a viewer and device. The tag generates a pseudonymous first-party one automatically; a server-minted token (issued by the API for a real account user + device) is what makes a device registered. |
| Registered device | A device or screen linked to a viewer account. Only registered devices ever see the earn badge or receive claim notifications — unregistered devices see a clean ad and nothing else. |
| Funding program | A prepaid points budget owned by an advertiser or a publisher, drawn only when a viewer claims. Bindings attach a program to a creative, a campaign, or a publisher. |
| Receipt | The per-view record of the loop: pending → matched → claimable → settled (or expired). Poll it to follow any view. |
| Claim window | How long a verified reward stays claimable — 24 hours by default. |
Before you start
- Publishers need a publisher ID (issued at onboarding — there is no self-serve endpoint yet) and somewhere to host two small JavaScript files.
- Advertisers need a business account with the advertiser role and a funded program; both are set up with our team at onboarding.
- All API traffic goes to
https://api.myadrewards.com. Current builds of the tag and the earn mark ship with a legacy default endpoint — production integrations must set the endpoint explicitly, as every guide here shows.