Tapper
Search docs...
⌘K
SupportDashboard

Adjust integration

Connect Adjust to Tapper Block to detect invalid installs and in-app events and reject invalid installs in Adjust.


Connecting Adjust to Tapper Block takes two steps: create the integration in Tapper, then add Tapper's URL as a global server callback in Adjust. No SDK changes are needed.

With your Adjust API Token, Tapper also rejects the invalid installs it finds in Adjust. While Monitoring-only mode is on for a rule set that judges the app, Tapper records what it detects and rejects nothing: see What happens to an invalid install.

What you need from Adjust

CredentialWhere to find it
Adjust App TokenAdjust Suite → AppView → All apps → your app → App settings. A 12-character token that identifies the app.
Adjust API TokenAdjust Suite → Account Settings → My account → API token. Tapper uses it to reject invalid installs in Adjust. Treat it like a password.

Create the integration in Tapper

1
Open the setup

For your first app, open Setup > Ad accounts, click Add ad account, then click Add mobile app on the Mobile app row.

For an app already listed under Setup > Mobile app, select it in the Apps list, open its second tab after Details, and turn on the switch at the top. That dialog asks only for the Adjust API Token and the webhook secret, because the app already holds its name and Adjust App Token.

2
Enter the details

For a first app, in the Create MMP integration dialog, give it a Name, choose Adjust as the MMP type, and enter your Adjust App Token and Adjust API Token. Both are required.

3
Choose a webhook secret (optional)

Tapper uses the webhook secret to verify that each callback comes from your Adjust account. Leave Webhook secret empty and Tapper generates one. A secret you choose needs at least 32 characters.

4
Copy the Webhook URL

Click Create. The Integration created screen shows the Webhook URL, with the secret hidden until you click the eye icon. Click the copy icon next to it. You paste this URL into Adjust next.

The URL carries your webhook secret and every Adjust placeholder Tapper reads, so paste it as it is. It is shown with the secret only on this screen.


Configure the callback in Adjust

1
Open Server callbacks

In Adjust, go to AppView → All apps, select your app, then open Server callbacks.

2
Start a global callback

Click Add callback, then Guided setup. Select Global as the callback trigger.

3
Paste the URL

Paste your Tapper Webhook URL and set the method to GET.

4
Leave Add a condition empty

Leave Add a condition empty, so the global callback keeps firing for every trigger Adjust measures, organic included.

A condition on {network_name} narrows the callback to that network. Until campaigns attributed to Tapper exist, Tapper then receives zero events and the integration looks broken while it is only filtered.

If the integration shows no events but test callbacks succeed, check this first.

5
Create the callback

Click Create callback URL.

Back in Tapper, the app's second tab shows Waiting for first install until Adjust sends its first callback, then Receiving events or Receiving installs.

Wiring Branch, AppsFlyer or Kochava as well? Each of those needs its own all-events setting: see Send all events, not only attributed. Adjust needs only the empty condition above.


Tapper Lift and Adjust

This integration sends no numbers to Tapper Lift. To compare your Adjust numbers in Lift, switch on Counting (Lift) for the same app under Setup > Mobile app. The Counting (Lift) tab appears when your workspace has Lift. Counting has its own switch and its own access to Adjust. See Lift Adjust integration.


What data is captured

On every callback, Tapper receives these fields from Adjust:

  • Attribution: network, campaign, ad group, creative, tracker and match type.
  • Activity type: install, reinstall, session, reattribution or in-app event, with the event name and token.
  • Click identifiers: Adjust click_id, gbraid, wbraid, fbclid, fb_fingerprint_id, label and reftag, used to match the event back to its click.
  • Device: IDFA, IDFV, GAID, Android ID, OAID, device name and type, OS, OS version, language and store.
  • Location: IP address, country, region and city.
  • Timing: click time, install begin time, install time and the time Adjust created the event.
  • Revenue and cost: revenue and currency, cost type, amount and currency.
  • Rejection data: Adjust's rejection reason and its source.

Tapper does not offer click tracking links for Google Ads, Meta, TikTok or Snapchat. Their installs reach Tapper through your Adjust global callback, like every other network's.


Callback security

Tapper checks the webhook secret on every callback and refuses a callback without the right one.

The secret travels in the callback URL, as the secret parameter right after the ?. The Callback address on the app's second tab is the same URL without the secret. If you ever build the callback in Adjust from that address, add secret= and your secret, followed by &, right after the ?. A secret with characters other than letters and digits must be URL-encoded there.

Lost the secret? On the app's second tab, click Replace next to Secret. Type a new one of at least 32 characters or click Generate, then click Replace. The old secret stops working at once and the new one is shown once. In Adjust, replace the value after secret= in the callback URL with the new secret. Until you do, Tapper refuses Adjust's callbacks.