Advertisers: launch your first campaign
Create an account, list the steps you’ll pay for, verify each one with a free test event, add at least $50, then submit for approval. Publishers can run the campaign once our team approves it.
On this page
- Your app’s store links, or the public HTTPS address of your site.
- Someone who can change your server. Events are sent from your backend, never from the app.
Create your account
Start a campaign creates your advertiser account. Sign-up is open, and your balance is only drawn when a live event matches a tap.
Add your product
Add your app as a product, with its iOS and Android store links, or your site with its public HTTPS address. Each product gets an
appId; your events will carry it.Campaigns, then New campaign
Choose New campaign for the product, then add each event you’ll pay for: a key your server will send, such as
level_25, and a price.Event key When it fires Price chapter_1The player finishes chapter 1 $0.60 level_25The player reaches level 25 $1.50 starter_pack_purchaseThe player buys the starter pack $4.00 Example for Tidewater Games. Nothing is paid at install, so the first event is chapter 1. Prices are yours to set, from $0.01; each event starts as Awaiting test.
Capture afos_click_id
On every tap, we add
afos_click_idto your destination URL. Store it on the player, and send it back asclickIdon every live event. For apps:- Android: read it from the Play install referrer on first launch.
- iOS, or no app changes: when a new player first opens the app, your server calls
POST /and stores the click ID it returns.v1/ advertiser/ match-install - If you use an attribution tool such as AppsFlyer or Adjust, set your store link to its link and read
afos_click_idfrom the install data.
Website campaigns read
afos_click_idfrom the landing page’s URL and keep it until sign-up.Mint API key, then send a test event for each event
Choose Mint API key. The key starts with
ak_and is shown once; keep it on your server. Then send each event from your server with"test": true, or press Send test next to it. A test event is never charged. Each one turns Verified.Two events verified, one to go. Submit for approval works once every required event is Verified and the balance is $50 or more. Add funds
Submitting needs a balance of at least $50. Choose Add funds, or Contact us to add funds if that is what your account shows. Live events draw on the balance at each event’s price.
Submit for approval
When every required event is Verified and the balance is $50 or more, choose Submit for approval. The campaign moves from Setting up to In review. Once our team approves it, it goes Live and publishers can run it.
Check it worked
Open Event logs on the campaign: it shows each event and its status.
approvedon a live event means it matched a tap and was charged its price.missing_attributionmeans it came without a click ID, or with one that matches no tap of ours: it is logged and never charged.
- Test events.
- Live events without a click ID, or with one that matches no tap of ours (
missing_attribution). - The same event twice: send a stable
eventId, and a retry comes back asduplicate. - Events with a
timestampthat isn’t within 48 hours of when we receive it, or past the event’s attribution window (outside_window). Send events as they happen.
The full request, every field and every status are in the advertiser events reference.