Skip to documentation
AdQuestDocs

How AdQuest works

Who does what, which credential lives where, and which integration method to choose.

On this page

Who does what

PartyResponsibility
Your backendKnows who the user is. Creates a participant session with the Secret Key, receives webhooks, keeps every secret.
Your frontendShows the widget or your own interface, using the public API key and the user’s participant token.
AdQuestServes quests and lotteries, checks each completion on its servers, settles tokens and sends webhooks.

AdQuest never signs your users in. It trusts the user ID your backend sends. The participant token is short-lived (15 minutes) and is tied to that one user.

What AdQuest decides, and what you decide

AdQuest decidesYou decide
Whether a quest was completed, and the rewardWho the user is (external_user_id)
Which quests a user can seeThe language (locale) and the reward country (country_code)
Token balances, lottery entries and drawsWhere AdQuest appears in your product
When a webhook is sentWhat your own product grants after a verified result

Choose an integration method

MethodBest forYou buildGuide
React widgetReact or Next.js apps. The fastest start.A session route and one component.React & Next.js
Hosted iframeAny website.A session route and a postMessage handler.Hosted iframe & WebView
Native WebViewiOS, Android, React Native and Flutter apps.A session endpoint and a native bridge.Hosted iframe & WebView
Headless clientA fully custom interface.A session route and your own screens on the typed client.Headless JavaScript
API onlyAny other server or client.HTTP calls to the public API.API reference

Something unclear, missing or wrong here? Tell us