Integration · Attribution and ads measurement

Send subscription revenue to Airbridge

RevenueDot sends subscription steps to Airbridge's server-to-server event API using Airbridge's standard events: airbridge.startTrial, airbridge.subscribe, airbridge.ecommerce.order.completed and airbridge.unsubscribe. Other steps use rc_<step>_event names. value is the revenue in US dollars, and externalUserID is your app user ID. Events older than 24 hours are skipped.

What teams do with it

  • Credit trials and subscriptions to the Airbridge campaign behind each install.
  • Use Airbridge's standard airbridge.subscribe event in goals and reports.
  • Send sandbox purchases to a second Airbridge app, apart from production.

What RevenueDot sends

  • Standard events: airbridge.startTrial for trial starts, airbridge.subscribe for purchases, conversions and renewals (isRenewal marks renewals), airbridge.ecommerce.order.completed for one-time purchases, airbridge.unsubscribe for cancellations. Other steps go as rc_expiration_event, rc_billing_issue_event, rc_product_change_event and rc_test_event.
  • POST https://api.airbridge.io/events/v2/apps/{app_name}/mobile-app/9360 with Authorization: Bearer <API token>.
  • value and totalValue: the revenue in US dollars, with one product (productID, price, quantity). Airbridge takes no negative value, so refunds carry none.
  • Identity: the app user ID as user.externalUserID, $email as externalUserEmail, $airbridgeDeviceId as device.deviceUUID, $idfa as ifa, $idfv as ifv, $gpsAdId as gaid, $attConsentStatus as appTrackingTransparency, and $ip in X-Forwarded-For.
  • eventUUID is the event ID when it is a UUID, so Airbridge drops a retried duplicate.

Setup

How to connect Airbridge to RevenueDot

  1. 01

    Copy the app name and API token

    In Airbridge, note the app's name (its subdomain in your workspace) and copy the server-to-server API token from Settings → Tokens.

  2. 02

    Set the device ID in your app

    Set $airbridgeDeviceId to the Airbridge SDK's device ID.

  3. 03

    Open the integration

    In RevenueDot, open Integrations → Airbridge.

  4. 04

    Enter the app and token

    Fill in App name and API token. For sandbox events, add a second app's Sandbox app name and Sandbox API token.

  5. 05

    Connect and test

    Click Connect Airbridge, then send a test event and check the delivery log.

The Airbridge integration page in the RevenueDot dashboard, with its settings form
Captured from the RevenueDot dashboard with demo data.

How Airbridge deliveries are retried, logged and replayed

  • Retries: timeouts, 408, 425, 429 and 5xx answers retry after 5, 10, 20, 40 and 80 minutes. Any other 4xx fails at once, because sending the same request again cannot work. Fix the setting, then replay.
  • Delivery log: each delivery shows the request with every secret replaced by [redacted], the partner's answer, the HTTP status, the time taken and the number of attempts.
  • Skipped, with the reason: when there is nothing to send, such as a missing device ID, the delivery is marked skipped and says why. Retry sends it after your app sets the attribute.
  • Replay: Replay failed resends failed and skipped deliveries in bulk.
  • Sealed credentials: keys and tokens are encrypted with AES-256-GCM on the server and never shown again. The dashboard shows only the last four characters.
  • 24-hour limit: Airbridge drops events whose timestamp is more than 24 hours old, so RevenueDot skips them with that reason. A replay of old events sends nothing.

FAQ

Airbridge and RevenueDot

How do I send in-app purchase events to Airbridge?

Enter your Airbridge App name and API token under Integrations → Airbridge in RevenueDot, set $airbridgeDeviceId in your app and click Connect Airbridge. Each trial, subscription and cancellation then goes out as an Airbridge event with its revenue.

Which Airbridge event names does RevenueDot use?

Airbridge's standard ones: airbridge.startTrial, airbridge.subscribe, airbridge.ecommerce.order.completed and airbridge.unsubscribe. Steps without a standard event use rc_<step>_event. You can rename any of them.

Why was an old event not sent to Airbridge?

Airbridge drops events more than 24 hours old, so RevenueDot skips them and the delivery log says so. Events within 24 hours go through.

Is there a RevenueCat Airbridge integration alternative?

Yes. RevenueDot sends Airbridge's server-to-server in-app events for the same attribution purpose as RevenueCat's attribution integrations (checked October 2026), from an open source backend.

Sources: Airbridge · Airbridge: send in-app events (server to server) · RevenueCat: attribution integrations. Airbridge is a trademark of its owner, used to describe compatibility. RevenueDot is not affiliated with or endorsed by it.

Get started

Send Airbridge every subscription event.

Start free on RevenueDot Cloud, free up to $10,000 a month in tracked revenue. Integrations are included on every plan.

Already have an account? Sign in · Prefer your own servers? Self-host free