IntegrationsAttributionAdjust

Adjust

Datafly Signal sends in-app events from the Datafly mobile SDKs to Adjust’s S2S events API (s2s.adjust.com/event) for mobile attribution, with the platform’s device identifiers, revenue and each event’s Adjust event token.

Prerequisites

Enable S2S for your app

Ask Adjust (or your Adjust representative) to enable S2S session measurement for the app, and turn on S2S Security to generate the token Signal sends as Authorization: Bearer.

Create event tokens

In the Adjust dashboard, create an event for each app event you want to count and copy its event token. Adjust counts every request against the token it carries, so give each event its own token.

Send the device identifiers from the app

The Datafly iOS and Android SDKs send the advertising ID (IDFA or Google advertising ID) once the app passes it with setAdvertisingId, and the IDFV on iOS. If your app uses the Adjust SDK, pass its adid with setCollectedId("adjust_adid", ...).

Configure in Signal

Configuration Fields

FieldRequiredDescription
app_tokenYesYour Adjust app token, found in the Adjust dashboard under App Settings.
event_tokenYesAdjust event token used for any event that has no token of its own below (Adjust dashboard > your app > Events). Adjust counts every request against the token it carries, so set a token per event for separate event counts.
s2s_secretYesThe server-to-server (S2S) security secret for authenticating server-side API calls.
environmentYesThe Adjust environment to send events to. Use sandbox for testing.
sign_up_event_tokenNoAdjust event token for sign_up events (Adjust dashboard > your app > Events). Leave blank to use the Event token.
login_event_tokenNoAdjust event token for login events (Adjust dashboard > your app > Events). Leave blank to use the Event token.
view_item_event_tokenNoAdjust event token for view_item events (Adjust dashboard > your app > Events). Leave blank to use the Event token.
view_item_list_event_tokenNoAdjust event token for view_item_list events (Adjust dashboard > your app > Events). Leave blank to use the Event token.
search_event_tokenNoAdjust event token for search events (Adjust dashboard > your app > Events). Leave blank to use the Event token.
add_to_cart_event_tokenNoAdjust event token for add_to_cart events (Adjust dashboard > your app > Events). Leave blank to use the Event token.
add_to_wishlist_event_tokenNoAdjust event token for add_to_wishlist events (Adjust dashboard > your app > Events). Leave blank to use the Event token.
begin_checkout_event_tokenNoAdjust event token for begin_checkout events (Adjust dashboard > your app > Events). Leave blank to use the Event token.
add_payment_info_event_tokenNoAdjust event token for add_payment_info events (Adjust dashboard > your app > Events). Leave blank to use the Event token.
purchase_event_tokenNoAdjust event token for purchase events (Adjust dashboard > your app > Events). Leave blank to use the Event token.
generate_lead_event_tokenNoAdjust event token for generate_lead events (Adjust dashboard > your app > Events). Leave blank to use the Event token.
trial_started_event_tokenNoAdjust event token for trial_started events (Adjust dashboard > your app > Events). Leave blank to use the Event token.
subscription_started_event_tokenNoAdjust event token for subscription_started events (Adjust dashboard > your app > Events). Leave blank to use the Event token.
quote_completed_event_tokenNoAdjust event token for quote_completed events (Adjust dashboard > your app > Events). Leave blank to use the Event token.
content_viewed_event_tokenNoAdjust event token for content_viewed events (Adjust dashboard > your app > Events). Leave blank to use the Event token.

Management UI Setup

  1. Go to Integrations > Add Integration > Adjust.
  2. Choose a preset: Default (default), Retail (ecommerce), Travel (travel), Media (media), Insurance (insurance).
  3. Fill in the fields above and click Save.

Request format

A purchase from an iOS app:

POST https://s2s.adjust.com/event
adid=a1b2c3d4e5f60718293a4b5c6d7e8f90&app_token=4w565xzmb54d&att_status=3&callback_params=%7B%22transaction_id%22%3A%22ORD-1001%22%7D&created_at_unix=1758500000&currency=GBP&device_name=iPhone16%2C2&device_type=mobile&environment=sandbox&event_token=p9rch5&idfa=29DDE430-CE81-4F00-A50C-689595AAD142&idfv=59E27F41-A86B-4560-B585-63161F871C4B&ip_address=203.0.113.9&os_name=ios&os_version=17.5.1&partner_params=%7B%22item_id%22%3A%22%5B%5C%22SKU_1%5C%22%2C%5C%22SKU_2%5C%22%5D%22%7D&revenue=259.99&s2s=1&user_agent=ShopApp%2F5.2+%28iPhone%3B+iOS+17.5.1%29

On Android the advertising ID goes to gps_adid with tracking_enabled; idfa, idfv and att_status are iOS only.

Event Mapping

Signal eventVendor eventPresets
sign_upsign_upDefault, Retail, Travel, Media, Insurance
loginloginDefault, Retail, Travel, Media, Insurance
view_itemview_itemDefault, Retail, Travel, Insurance
searchsearchDefault, Retail, Travel, Media
add_to_cartadd_to_cartDefault, Retail
begin_checkoutbegin_checkoutDefault, Retail, Travel, Insurance
purchasepurchaseDefault, Retail, Travel, Insurance
generate_leadgenerate_leadDefault, Insurance
trial_startedtrial_startedDefault, Media
subscription_startedsubscription_startedDefault, Media
view_item_listview_item_listRetail
add_to_wishlistadd_to_wishlistRetail
add_payment_infoadd_payment_infoRetail
booking_completedbooking_completedTravel
content_viewedcontent_viewedMedia
quote_completedquote_completedInsurance

Identity

Adjust requires a device identifier on every request. Signal sends idfa and idfv (upper-cased) on iOS, gps_adid (lower-cased) on Android, and adid when the app set the Adjust device ID. os_name (ios or android) comes from the SDK’s device context. Events with no device identifier, including every web event, are not sent. No personal data is sent.

Adjust has no per-event consent parameter (third-party sharing is a separate Adjust API). Assign a consent category to the integration in Signal to gate delivery. The tracking status is sent as att_status 3 on iOS when the app reported the advertising ID with tracking enabled, and tracking_enabled on Android; the full ATT status is planned.

Troubleshooting

ProblemSolution
Every event counts as the same Adjust eventSet a token per event (for example Purchase event token); events without one use the default Event token.
No events arriveCheck the app sends context.device.advertising_id or idfv: events without a device identifier are dropped.
401 or 403The S2S Security token is missing or wrong.

Blueprint

The Adjust blueprint version is 0.5.1. It was last reviewed against the vendor’s documentation on 2026-09-23.

See also