Axon

šŸ“˜

This integration is currently in beta. Contact your MetaRouter support team to get started.

What Is Axon?

Axon is AppLovin’s AI-powered advertising engine that powers its performance marketing solutions. It uses large-scale machine learning models to match advertiser demand with publisher supply in real time. By analyzing extensive in-app behavioral, device, and engagement data, Axon predicts which users are most likely to install, engage with, or make purchases within an app. The system continuously trains and optimizes to improve return on ad spend (ROAS) and campaign efficiency across AppLovin’s advertising ecosystem.


Product Type: Advertising

Integration Type: Starter Kit & Sync

Event Source Type: Web, Mobile Web, & Mobile App

Event Scope: Full-Funnel Events


Capabilities

  • Sends standard funnel events (browse, search, product, cart, checkout, purchase) to Axon.
  • Supports both web and app event contexts through a single server-side integration.
  • Passes Axon-supported user identifiers to improve attribution and matching.
  • Supports event batching to reduce request volume.

Considerations

  • Axon requires at least one stable user identifier on each event. For web integrations, client_id should be used as the primary identifier. For mobile app integrations, alart may be used in place of client_id when present via URL parameter sync. Events without a valid user identifier may not be accepted or properly attributed.
  • Axon supports batching up to 100 events per request; if any event in a batch is invalid, Axon drops the entire batch.
  • Axon requires ā€œPixel Setupā€ to view the Events dashboard. For setup, at least purchase, add_to_cart, begin_checkout, page_view, and view_item must be sent. These events can be sent via the API.
  • The Authorization header includes a default value. Axon expects MetaRouter customers to use a shared API key, but this parameter remains configurable in the UI.
  • Axon expects data.items.price to reflect the discounted per-unit price, with any discount provided separately in a discount field. This Starter Kit maps price directly and does not send a separate discount value.
  • Axon may generate warnings when data.items.item_category is sent as a string. Some implementations expect predefined numeric category_id values instead of custom category strings.

Identity Sync

  • Sync Available: Yes
  • Required for Starter Kit: Yes
  • Prerequisites: None
  • Documentation: See Additional Axon Sync Documentation

Sync Details

  • Capture the click identifiers used for attribution (aleid, alart).
  • Required for conversion attribution.
  • Without this sync, conversions may not be attributed to Axon/AppLovin campaigns.

Starter Kit Setup Guide

1. Deploy the Axon Sync

  • To collect the sync values (e.g., aleid, alart), you must implement a Axon ID sync. Refer to the following documentation to complete the setup: Axon - ID Sync Guide.

2. Gather Credentials

  • PIXEL_ID – Available in the Events dashboard within the Axon UI. If you cannot locate your Pixel ID, contact your Axon representative for assistance.

3. Add a Axon Integration

  • From the integration library, add a Axon integration. Then, fill out the Connection Parameters:
Connection ParameterDescription
PIXEL_IDString: Axon pixel identifier sent as the pixel_id query parameter.
AUTH_KEYString: API Access Token used in the Authorization request header. This is fixed and should not be changed unless advised by your Axon rep.

4. Configure Event Mapping

  • MetaRouter provides all of the event mappings that Axon integrations typically require. You may add custom events, parameters, or mappings in accordance with Axon’s API documentation.

5. Deploy to Pipeline

  • In the Pipelines tab, add your Axon integration.
  • Select the correct integration revision
  • Click Add Integration to finalize deployment.

Event Mappings

Global

Global mappings will be applied to all events. If your parameter names do not match the Expected Inputs provided, you will need to overwrite the Inputs provided with your own.

Output KeyDescriptionExpected Input
event_time RequiredInteger: Unix epoch time in milliseconds.Expression – convert RFC3339 timestamp to Unix epoch (ms)
event_source_url RequiredString: Full URL where the event occurred.context.page.url
user_data.aleid RequiredString: Axon click identifier from the aleid URL parameter/cookie.context.providers.axon.aleid
user_data.alart Required*See noteString: Axon identifier from the alart URL query parameter (app contexts).context.providers.axon.alart
user_data.client_id Required*See noteString: Stable first-party user identifier.anonymousId
user_data.client_ip_address RequiredString: Client IP address associated with the event.context.ip
user_data.client_user_agent RequiredString: Client user agent associated with the event.context.userAgent
user_data.esi RequiredString: Event source indicator (web or app).Expression – set web unless context.device.type is present, then app
user_data.ifaString: Advertising identifier (IDFA/GAID).context.device.advertisingId
user_data.idfvString: iOS vendor identifier when available.Expression – use context.device.id when device type is ios
user_data.osString: Operating system (ios, android, or desktop_os).Expression – map from context.device.type
user_data.zipString: Billing ZIP/postal code (first 5 digits for US ZIPs).traits.address.postalCode

*For web integrations, client_id should be used as the primary identifier. For mobile app integrations, alart may be used in place of client_id when present via URL parameter sync.


Event Specific

Application Open

Output KeyDescriptionExpected Input
name RequiredString: Axon event name.Enrichment – hardcoded value 'app_open'

Identify

Output KeyDescriptionExpected Input
name RequiredString: Axon event name.Enrichment – hardcoded value 'login'

Page

Output KeyDescriptionExpected Input
name RequiredString: Axon event name.Enrichment – hardcoded value 'page_view'

Products Searched

Output KeyDescriptionExpected Input
name RequiredString: Axon event name.Enrichment – hardcoded value 'search'
data.search_termString: Search query text.properties.query

Product Viewed

Output KeyDescriptionExpected Input
name RequiredString: Axon event name.Enrichment – hardcoded value 'view_item'
data.currencyString: Currency code (ISO 4217).properties.currency
data.valueNumber: Total value associated with the product view.Expression – calculate total from properties
data.itemsArray: Single-item array derived from product properties.Expression – map from properties to item fields

Product Added

Output KeyDescriptionExpected Input
name RequiredString: Axon event name.Enrichment – hardcoded value 'add_to_cart'
data.currencyString: Currency code (ISO 4217).properties.currency
data.valueNumber: Total value associated with the add to cart.Expression – calculate total from properties
data.itemsArray: Single-item array derived from product properties.Expression – map from properties to item fields

Product Removed

Output KeyDescriptionExpected Input
name RequiredString: Axon event name.Enrichment – hardcoded value 'remove_from_cart'
data.currencyString: Currency code (ISO 4217).properties.currency
data.valueNumber: Total value associated with the remove from cart.Expression – calculate total from properties
data.itemsArray: Single-item array derived from product properties.Expression – map from properties to item fields

Cart Viewed

Output KeyDescriptionExpected Input
name RequiredString: Axon event name.Enrichment – hardcoded value 'view_cart'
data.currencyString: Currency code (ISO 4217).properties.currency
data.valueNumber: Total cart value.Expression – sum from properties.products
data.itemsArray: Line items derived from cart products.Expression – map from properties.products to item fields

Checkout Started

Output KeyDescriptionExpected Input
name RequiredString: Axon event name.Enrichment – hardcoded value 'begin_checkout'
data.currencyString: Currency code (ISO 4217).properties.currency
data.valueNumber: Total checkout value.Expression – sum from properties.products
data.itemsArray: Line items derived from checkout products.Expression – map from properties.products to item fields

Payment Info Entered

Output KeyDescriptionExpected Input
name RequiredString: Axon event name.Enrichment – hardcoded value 'add_payment_info'
data.currencyString: Currency code (ISO 4217).properties.currency

Order Completed

Output KeyDescriptionExpected Input
name RequiredString: Axon event name.Enrichment – hardcoded value 'purchase'
data.user_idString: Your internal user identifier.userId
data.transaction_idString: Order/transaction identifier.properties.order_id
data.shippingNumber: Shipping amount for the order.properties.shipping
data.taxNumber: Tax amount for the order.properties.tax
data.currencyString: Currency code (ISO 4217).properties.currency
data.valueNumber: Total order value.Expression – sum from properties.products
data.itemsArray: Line items derived from order products.Expression – map from properties.products to item fields

Required & Recommended Identifiers

These identifiers must be mapped to Axon in order for successful user matching to occur. Without these IDs, any events sent to Axon may not be accurately reflected in reporting.

AttributeExampleSync Injector Required?
aleid Requiredaleid_01HZX9K2Q7Yes
alart Required*alart_01HZX9K2Q7Yes
client_id Required*c1b2a3f4e5d6a7b8No
ifa Recommended38400000-8cf0-11bd-b23e-10b96e40000dNo
idfv RecommendedA1B2C3D4-E5F6-47A8-9B0C-1D2E3F4A5B6CNo
client_ip_address Recommended203.0.113.10No
client_user_agent RecommendedMozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7)No

*For web integrations, client_id should be used as the primary identifier. For mobile app integrations, alart may be used in place of client_id when present via URL parameter sync.


Integration Validation

After deployment, monitor the Events dashboard in the Axon UI to confirm events are being received. In addition to your own validation, ask your Axon representative to review the events on their end and confirm that identifiers (e.g., client_id, aleid, alart) are being received and processed as expected.