Documentation
Documentation
https://support.applovin.com/en/max/advanced-features/ad-unit-management-api
APIReference
https://support.applovin.com/en/max/advanced-features/ad-unit-management-api
openapi: 3.0.3
info:
title: AppLovin Axon Campaign Management Ad Units API
version: v1
x-generated-from: documentation
x-source-url: https://support.axon.ai/en/app-discovery/api/axon-campaign-management-api/
x-last-validated: '2026-05-05'
description: 'REST endpoints used to programmatically manage AppLovin AppDiscovery
(Axon) campaigns, creative sets, and creative assets. All endpoints
require an `Authorization` header with the Campaign Management API key
and an `account_id` query parameter. Rate limit: 1,000 requests per 60
seconds (HTTP 429 on overflow).
'
contact:
name: AppLovin Support
url: https://support.axon.ai
servers:
- url: https://o.applovin.com/mediation/v1
description: AppLovin MAX mediation management host
security:
- bearerAuth: []
tags:
- name: Ad Units
description: Ad unit lifecycle and configuration
paths:
/ad_units:
get:
operationId: listAdUnits
summary: List Ad Units
description: List active ad unit summaries.
tags:
- Ad Units
parameters:
- name: fields
in: query
required: false
description: Comma-separated optional fields to include.
schema:
type: string
- name: limit
in: query
required: false
schema:
type: integer
minimum: 1
- name: offset
in: query
required: false
schema:
type: integer
minimum: 0
responses:
'200':
description: Array of ad unit summaries.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/AdUnitSummary'
'401':
$ref: '#/components/responses/Unauthorized'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/ad_unit:
post:
operationId: createAdUnit
summary: Create Ad Unit
description: Create a new ad unit for a given app and platform.
tags:
- Ad Units
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- name
- platform
- package_name
- ad_format
properties:
name:
type: string
platform:
type: string
enum:
- ios
- android
package_name:
type: string
description: Bundle identifier (iOS) or package name (Android).
ad_format:
type: string
enum:
- INTER
- BANNER
- REWARD
- MREC
- NATIVE
template_size:
type: string
description: Template size; native ads only.
responses:
'200':
description: Created ad unit.
content:
application/json:
schema:
$ref: '#/components/schemas/AdUnit'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/ad_unit/{ad_unit_id}:
get:
operationId: getAdUnit
summary: Get Ad Unit
description: Retrieve a single ad unit and its requested fields.
tags:
- Ad Units
parameters:
- $ref: '#/components/parameters/AdUnitId'
- name: fields
in: query
required: false
description: 'Comma-delimited list of optional fields. Supported values:
`ad_network_settings`, `disabled_ad_network_settings`,
`frequency_capping_settings`, `bid_floors`, `segments`,
`banner_refresh_settings`, `mrec_refresh_settings`.
'
schema:
type: string
responses:
'200':
description: Ad unit configuration.
content:
application/json:
schema:
$ref: '#/components/schemas/AdUnit'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
post:
operationId: updateAdUnit
summary: Update Ad Unit
description: 'Apply changes to the ad unit. Only fields included in the request
body are updated; omitted fields are left unchanged.
'
tags:
- Ad Units
parameters:
- $ref: '#/components/parameters/AdUnitId'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AdUnit'
responses:
'200':
description: Updated ad unit.
content:
application/json:
schema:
$ref: '#/components/schemas/AdUnit'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
components:
schemas:
FrequencyCappingSetting:
type: object
properties:
type:
type: string
enum:
- time
- session
day_limit:
type: integer
minute_frequency:
type: integer
session_limit:
type: integer
country_targeting_type:
type: string
enum:
- INCLUDE
- EXCLUDE
countries:
type: array
items:
type: string
Segment:
type: object
properties:
id:
type: string
name:
type: string
id_type:
type: string
device_type:
type: string
segment_keys:
type: array
items:
type: string
AdNetworkAdUnit:
type: object
properties:
ad_network_ad_unit_id:
type: string
country_targeting_type:
type: string
enum:
- INCLUDE
- EXCLUDE
countries:
type: array
items:
type: string
cpm:
type: number
AdUnit:
type: object
description: 'MAX ad unit configuration. x-schema-source: documentation
'
properties:
id:
type: string
name:
type: string
platform:
type: string
enum:
- ios
- android
package_name:
type: string
ad_format:
type: string
enum:
- INTER
- BANNER
- REWARD
- MREC
- NATIVE
template_size:
type: string
has_active_experiment:
type: boolean
disabled:
type: boolean
ad_network_settings:
type: array
items:
$ref: '#/components/schemas/AdNetworkSetting'
disabled_ad_network_settings:
type: array
items:
$ref: '#/components/schemas/AdNetworkSetting'
frequency_capping_settings:
type: array
items:
$ref: '#/components/schemas/FrequencyCappingSetting'
bid_floors:
type: array
items:
$ref: '#/components/schemas/BidFloor'
segments:
type: array
items:
$ref: '#/components/schemas/Segment'
banner_refresh_settings:
type: object
additionalProperties: true
mrec_refresh_settings:
type: object
additionalProperties: true
BidFloor:
type: object
properties:
country_group_name:
type: string
cpm:
type: number
countries:
type: object
additionalProperties:
type: number
AdNetworkSetting:
type: object
properties:
ad_network:
type: string
ad_network_ad_units:
type: array
items:
$ref: '#/components/schemas/AdNetworkAdUnit'
cpm:
type: number
country_targeting_type:
type: string
enum:
- INCLUDE
- EXCLUDE
countries:
type: array
items:
type: string
AdUnitSummary:
type: object
properties:
id:
type: string
name:
type: string
platform:
type: string
ad_format:
type: string
package_name:
type: string
disabled:
type: boolean
Error:
type: object
properties:
code:
type: integer
message:
type: string
required:
- code
responses:
Forbidden:
description: Authenticated but not allowed.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
Unauthorized:
description: Missing or invalid Api-Key header.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
BadRequest:
description: Validation error.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
parameters:
AdUnitId:
name: ad_unit_id
in: path
required: true
description: Ad unit identifier.
schema:
type: string
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: Campaign Management API key passed in the `Authorization` header.