Skip to main content

FAQ

Common questions about Adtrace server-to-server integration.

What should I do if gps_adid is null, empty, or invalid?

Do not block S2S event sending only because gps_adid is missing. Send adtrace_adid instead.

Common reasons gps_adid is unavailable:

  • The user disabled ad personalization.
  • The device has no Google Play Services.
  • SDK/device implementation did not return Advertising ID correctly.

Recommended fallback order on Android:

  1. Use adtrace_adid (recommended primary identifier).
  2. Use gps_adid only when it is available and valid.

If both are missing, first verify install tracking and SDK logs, then resend after you have a valid identifier.

Can we send S2S events with only googleAdId and no Adtrace SDK integration?

No. S2S does not replace SDK integration.

Before any S2S event is accepted, Adtrace must already have a successful install for that device. In practice, reliable install/session tracking requires SDK integration in the app or web page.

Use this model:

  • Send install/session and routine events from SDK.
  • Send sensitive or server-validated events (for example purchases) via S2S.

This gives lower backend load and keeps client-side retry/queue guarantees from SDK.

Should I use adtrace_adid or platform IDs like gps_adid/idfa/web_uuid?

Use adtrace_adid whenever possible.

Why adtrace_adid is preferred:

  • It is generated by Adtrace per device after successful install.
  • It works consistently across platforms.
  • It avoids platform-specific availability issues.

Use platform IDs as fallback when needed:

  • Android: gps_adid
  • iOS: idfa
  • Web: web_uuid

I called S2S successfully. What does the response mean?

S2S responses confirm request processing status (accepted/rejected). They are not a full event report endpoint.

  • Success indicates Adtrace accepted and processed the payload.
  • Errors indicate what must be fixed (auth, allowlist, missing install, missing IDs, etc.).

For event validation, use:

  1. SDK logs (install/session/event)
  2. Testing Console in the panel
  3. Dashboard reporting after processing

I get Authorization failed. What should I check?

Check these in order:

  1. Confirm header format is exactly: Authorization: Token YOUR_S2S_API_KEY
  2. Confirm you copied the correct API key from panel Settings.
  3. Confirm no extra spaces/newlines were introduced while copying.
  4. Confirm your server outbound IP is on the panel IP allowlist.
  5. Re-test with the exact curl example from Server-to-server events.

If it still fails, share the exact curl request (with secrets masked) and response details with your Adtrace support contact.

Can Adtrace trace my failing S2S request?

Support can help, but they need a reproducible request sample.

Share:

  • Full curl command (mask API key/token values)
  • Full response body and status code
  • Timestamp and timezone of request
  • Source server public IP

Without that input, root-cause analysis is usually guesswork.

Can iOS integrations be implemented with REST APIs only (without SDK)?

Technically you can send many event types through S2S, but full SDK replacement is not recommended.

Reason: Adtrace identifies devices based on successful install/session data first. If you skip SDK, you must rebuild install/session collection logic yourself (device/network context, lifecycle timing, retries, etc.), which increases mobile and backend complexity.

Recommended approach:

  1. Use iOS SDK for install/session and base measurement.
  2. Use S2S for selected sensitive/business-critical events.