コンテンツにスキップ

Axon Campaign Management API

このコンテンツはまだ日本語訳がありません。

The Axon Campaign Management API is for advertisers who use Axon’s Ads Manager to promote their apps.

You can create and update both campaigns and creative sets, and can upload new assets, by sending requests to the Axon Campaign Management API.

Campaigns

The /campaign/list endpoint

Make a GET request to this endpoint to retrieve a list of up to 100 campaigns on your account. This list is a JSON array of Campaign objects.

This endpoint returns an empty array if there are no campaigns on the selected page.

Campaign Management API: Campaigns List

Target URL

https://api.ads.axon.ai/manage/v1/campaign/list?account_id=«account-ID»

Query parameters

NameDescriptionDefault
idsA comma-separated list of campaign IDs. Use this to filter the results to only those that have the specified IDs. You can specify a maximum of 100 IDs this way. Do not include this alongside hashed_ids.null
hashed_idsA comma-separated list of external campaign IDs. Use this to filter the results to only those with the specified IDs. You can specify a maximum of 100 IDs this way. Do not include this alongside ids.null
pageThe page number of the results to retrieve. The first page is page 1.1
sizeThe number of results to return per page. Maximum 100.100

Examples

Request paginated
Terminal window
curl --location 'https://api.ads.axon.ai/manage/v1/campaign/list?account_id=«account-ID»&size=50&page=10' \
--header 'Authorization: «campaign-API-key»'
Request filtered
Terminal window
curl --location 'https://api.ads.axon.ai/manage/v1/campaign/list?account_id=«account-ID»&ids=12345' \
--header 'Authorization: «campaign-API-key»'
Response
[
{
"id": "12345",
"name": "test campaign",
"status": "LIVE",
"platform": "IOS",
"budget": {
"daily_budget_for_all_countries": "5000",
"country_code_to_daily_budget": {}
},
"goal": {
"goal_value_for_all_countries": "10",
"goal_type": "CPI",
"country_code_to_goal_value": {}
},
"tracking": {
"tracking_method": "APPSFLYER",
"impression_url": "https://impression.appsflyer.com/id1234567890?pid=applovin_int&af_siteid={APP_ID}&c={CAMPAIGN_NAME}&af_ad={AD_NAME}&af_ad_type={AD_SIZE}&af_channel={AD_TYPE}&af_c_id={CAMPAIGN_ID}&af_adset=_DEFAULT&af_ad_id={AD_ID}&af_viewthrough_lookback=24h&clickid={DID}&idfa={IDFA}&af_ip={IP}&af_lang={LOCALE}&af_ua={USER_AGENT}",
"click_url": "https://app.appsflyer.com/id1234567890?pid=applovin_int&af_siteid={APP_ID}&c={CAMPAIGN_NAME}&af_ad={AD_NAME}&af_ad_type={AD_SIZE}&af_channel={AD_TYPE}&af_c_id={CAMPAIGN_ID}&af_adset=_DEFAULT&af_ad_id={AD_ID}&af_click_lookback=7d&clickid={DID}&idfa={IDFA}&af_ip={IP}&af_lang={LOCALE}&af_ua={USER_AGENT}"
},
"targeting": [
{
"country_code": "HR"
},
{
"country_code": "MF"
},
{
"country_code": "RW"
},
{
"country_code": "CO"
}
],
"type": "APP",
"created_at": "2025-05-22T21:51:01",
"package_name": "com.package.name",
"itunes_id": "1234567890",
"bidding_strategy": "TARGET_GOAL_WITH_CPI_BILLING",
"start_date": "2025-05-23T00:00:00",
"end_date": "2025-05-30T00:00:00"
}
]

The /campaign/create endpoint

Make a POST request to this endpoint to create a new campaign. The request body is a Campaign object. Review the Create column of the Campaign object table to determine which fields you should include in your request.

This endpoint returns a JSON object that contains the Campaign ID (id) of the campaign this endpoint creates.

Campaign Management API: Campaign Create

Target URL

https://api.ads.axon.ai/manage/v1/campaign/create?account_id=«account-ID»

Examples

Request
Terminal window
curl --location 'https://api.ads.axon.ai/manage/v1/campaign/create?account_id=«account-ID»' \
--header 'Content-Type: application/json' \
--header 'Authorization: «campaign-API-key»' \
--data '
{
"name": "test",
"type": "APP",
"start_date": "2025-07-20T00:00:00",
"end_date": "2025-07-31T00:00:00",
"targeting": [
{
"country_code": "US"
},
{
"country_code": "CA"
}
],
"budget": {
"daily_budget_for_all_countries": "6000"
},
"goal": {
"goal_value_for_all_countries": "0.3",
"goal_type": "CHK_ROAS",
"roas_day_target": "DAY28"
},
"bidding_strategy": "TARGET_GOAL_WITH_CPI_BILLING",
"platform": "ANDROID",
"package_name": "com.AppLovin.MaxDemoUnity",
"tracking": {
"tracking_method": "ADJUST",
"impression_url": "https://view.adjust.com/impression/123abc?campaign={CAMPAIGN_NAME}%20({CAMPAIGN_ID})&adgroup={APP_ID}&creative={AD_NAME}&idfa={IDFA}&country={CC}&gps_adid={IDFA}&adgroup_id={PLACEMENT_ID}&ip_address={DEVICE_IP}&campaign_id={CAMPAIGN_ID}&device_type={DEVICE_TYPE}&publisher_id={APP_ID}&tracker_limit=100000&applovin_click_id={DID}&applovin_event_id={EVENT_ID}&external_tracker_ids=1&android_id_lower_sha1={HADID}",
"click_url": "https://app.adjust.com/123abc?campaign={CAMPAIGN_NAME}%20({CAMPAIGN_ID})&adgroup={APP_ID}&creative={AD_NAME}&idfa={IDFA}&country={CC}&gps_adid={IDFA}&adgroup_id={PLACEMENT_ID}&ip_address={DEVICE_IP}&campaign_id={CAMPAIGN_ID}&device_type={DEVICE_TYPE}&publisher_id={APP_ID}&tracker_limit=100000&applovin_click_id={DID}&applovin_event_id={EVENT_ID}&external_tracker_ids=1&android_id_lower_sha1={HADID}"
}
}'
Response
{
"id": "12345"
}

The /campaign/update endpoint

Make a POST request to this endpoint to update an existing campaign. The request body is a Campaign object. Review the Update column of the Campaign object table to determine which fields you should include in your request.

This endpoint returns a JSON object that contains the Campaign ID (id) of the campaign this endpoint updates.

Campaign Management API: Campaign Update

Target URL

https://api.ads.axon.ai/manage/v1/campaign/update?account_id=«account-ID»

Examples

Request
Terminal window
curl --location 'https://api.ads.axon.ai/manage/v1/campaign/update?account_id=«account-ID»' \
--header 'Content-Type: application/json' \
--header 'Authorization: «campaign-API-key»' \
--data '
{
"id": "12345",
"name": "test",
"status": "LIVE",
"type": "APP",
"budget": {
"country_code_to_daily_budget": {
"CA": "5000",
"US": "1000"
}
},
"goal": {
"goal_value_for_all_countries": "0.98"
},
"tracking": {
"tracking_method": "ADJUST",
"impression_url": "https://view.adjust.com/impression/123abc?campaign={CAMPAIGN_NAME}%20({CAMPAIGN_ID})&adgroup={APP_ID}&creative={AD_NAME}&idfa={IDFA}&country={CC}&gps_adid={IDFA}&adgroup_id={PLACEMENT_ID}&ip_address={DEVICE_IP}&campaign_id={CAMPAIGN_ID}&device_type={DEVICE_TYPE}&publisher_id={APP_ID}&tracker_limit=100000&applovin_click_id={DID}&applovin_event_id={EVENT_ID}&external_tracker_ids=1&android_id_lower_sha1={HADID}",
"click_url": "https://app.adjust.com/123abc?campaign={CAMPAIGN_NAME}%20({CAMPAIGN_ID})&adgroup={APP_ID}&creative={AD_NAME}&idfa={IDFA}&country={CC}&gps_adid={IDFA}&adgroup_id={PLACEMENT_ID}&ip_address={DEVICE_IP}&campaign_id={CAMPAIGN_ID}&device_type={DEVICE_TYPE}&publisher_id={APP_ID}&tracker_limit=100000&applovin_click_id={DID}&applovin_event_id={EVENT_ID}&external_tracker_ids=1&android_id_lower_sha1={HADID}"
},
"targeting": [
{
"country_code": "CA"
},
{
"country_code": "US"
}
],
"created_at": "2025-07-18T10:26:32",
"package_name": "com.AppLovin.MaxDemoUnity",
"end_date": "2025-07-31T05:00:00"
}'
Response
{
"id": "12345"
}

Campaign object

NameTypeDescriptionCreateUpdate
bidding_strategyStringBidding strategy for the campaign. Valid values include: target_goal_with_cpi_billing: AppLovin aims to control the cost per result around your target goal. You are charged on each app install.
auto_bidding_with_cpm_billing: AppLovin aims to fully use your budget while maximizing results at the lowest possible cost per result. You are charged on every ad impression.
RequiredForbidden
budgetBudgetBudget settings of the campaign. See Budget.RequiredOptional
created_atStringThe creation time of the campaign, in ISO 8601 format (UTC).IgnoredIgnored
end_dateStringThe end date of the campaign in ISO 8601 format (UTC).RequiredOptional
goalGoalGoal settings of the campaign. See Goal.RequiredOptional
hashed_id.StringThe external ID of the campaign. It is the same value as the campaign_id_external in the Reporting API, the {CAMPAIGN_ID} Tracking URL macro.ForbiddenIgnored
idLongThe ID of the campaign.ForbiddenRequired
is_composite_banner_enabledBoolWhether the auto-generated banner based on App Icon and App name is enabled. Default: trueOptionalOptional
itunes_idIntegerThe iTunes ID associated with the campaign.Required (iOS only)Optional
nameStringThe name of the campaign.RequiredOptional
package_nameStringThe package name associated with the campaign.RequiredOptional
platformStringThe platform for the campaign.RequiredForbidden
start_dateStringThe start date of the campaign in ISO 8601 format (UTC). Cannot be earlier than today’s date.RequiredForbidden
statusStringThe current state of the campaign. Valid values: LIVE, PAUSED.IgnoredOptional
targetingTargeting[ ]The country targets for the campaign. See Targeting.RequiredOptional
trackingTrackingThe tracking settings for the campaign. See Tracking.RequiredOptional
typeStringThe type of the campaign. Must be APPRequiredRequired

Targeting object

NameTypeDescription
country_codeStringThe ISO 3166-1 alpha-2 code represents the target country. For example, US for the United States, FR for France, or JP for Japan. See Table of country codes below for the full list.
region_codesString[ ]An array of region codes that specify target regions in the specified country. These are optional and only apply when the country_code is US. This array should contain valid U.S. state abbreviations (e.g. CA for California, NY for New York). See Table of region codes below for the full list.
metro_namesString[ ]An array of Metropolitan Statistical Areas. These are optional and only apply when the country_code is US. Cannot be combined with region_codes. See Table of Metropolitan Statistical Areas below for the full list of possible values.
"targeting": [
{
"country_code": "US"
},
{
"country_code": "CA"
}
]

Budget object

You can set either a global budget or country-level budgets. This is required when you create a campaign.

NameTypeDescription
daily_budget_for_all_countriesdecimalSpecifies a uniform daily budget that you want to apply across all targeted countries.
"budget": {
"daily_budget_for_all_countries": "6000"
}

Goal object

Goal value

The goal value depends on the goal type. For CPE / CPP it represents a cost per event / purchase; for CHK_ROAS it represents the percentage return on the targeted day.

You can set either a global goal or country-level goals.

NameTypeDescription
goal_value_for_all_countriesdecimalSpecifies a uniform goal value that you want to apply across all targeted countries.
"goal": {
"goal_value_for_all_countries": "0.5",
}

Goal object

Goal value

The meaning and the allowable value of the goal depends on the goal type:

Goal typeGoal value meaningLimitations
AD_ROASpercentage return on the targeted day (1=100%)must be above 10% (.1)
BLD_ROAS (Blended ROAS)percentage return on the targeted day (1=100%)must be above 5% (.05)
CHK_ROAS (IAP ROAS)percentage return on the targeted day (1=100%)must be above 1% (.01)
CPEdollars per eventmust be below $500 (500)
CPIdollars per installmust be below $200 (200)
CPPdollars per purchasemust be below $500 (500)

You can set a goal value either globally, or on a per-country basis:

NameTypeDescription
goal_value_for_all_countriesdecimalSpecifies a uniform goal value that you want to apply across all targeted countries.
"goal": {
"goal_value_for_all_countries": "0.5",
}

Goal type

The goal type defines the optimization goal for the campaign.

Cost per install.
goal_type value: CPI

NameTypeDescription
goal_typeStringDefines the optimization goal for the campaign.
"goal": {
"goal_type": "CPI"
}

Tracking object

This endpoint requires this object and all its values when you create a campaign.

NameTypeDescriptionCreateUpdate
click_urlStringThe URL used for tracking ad clicks.RequiredOptional
impression_urlStringThe URL used for tracking ad impressions.RequiredOptional
tracking_methodStringThe attribution tracking provider used for this campaign. See Table of tracking methods below for a full list.RequiredIgnored
"tracking": {
"tracking_method": "ADJUST",
"impression_url": "https://view.adjust.com/impression/123abc?campaign={CAMPAIGN_NAME}%20({CAMPAIGN_ID})&adgroup={APP_ID}&creative={AD_NAME}&idfa={IDFA}&country={CC}&gps_adid={IDFA}&adgroup_id={PLACEMENT_ID}&ip_address={DEVICE_IP}&campaign_id={CAMPAIGN_ID}&device_type={DEVICE_TYPE}&publisher_id={APP_ID}&tracker_limit=100000&applovin_click_id={DID}&applovin_event_id={EVENT_ID}&external_tracker_ids=1&android_id_lower_sha1={HADID}",
"click_url": "https://app.adjust.com/123abc?campaign={CAMPAIGN_NAME}%20({CAMPAIGN_ID})&adgroup={APP_ID}&creative={AD_NAME}&idfa={IDFA}&country={CC}&gps_adid={IDFA}&adgroup_id={PLACEMENT_ID}&ip_address={DEVICE_IP}&campaign_id={CAMPAIGN_ID}&device_type={DEVICE_TYPE}&publisher_id={APP_ID}&tracker_limit=100000&applovin_click_id={DID}&applovin_event_id={EVENT_ID}&external_tracker_ids=1&android_id_lower_sha1={HADID}"
}

Creative sets

The /creative_set/list endpoint

Make a GET request to this endpoint to retrieve a list of up to 100 creative sets on your account. This list is a JSON array of Creative set objects.

This endpoint returns an empty array if there are no creative sets on the selected page.

Campaign Management API: Creative Set List

Target URL

https://api.ads.axon.ai/manage/v1/creative_set/list?account_id=«account-ID»

Query parameters

NameDescriptionDefault
idsA comma-separated list of creative set IDs. Use this to filter the results to only those with the specified IDs. You can specify a maximum of 100 IDs this way. Do not include this alongside hashed_ids.null
hashed_idsA comma-separated list of external creative set IDs. Use this to filter the results to only those with the specified IDs. You can specify a maximum of 100 IDs this way. Do not include this alongside ids.null
pageThe page number of the results to retrieve. The first page is page 1.1
sizeThe number of results to return per page. Maximum 100.100

Examples

Request paginated
Terminal window
curl --location 'https://api.ads.axon.ai/manage/v1/creative_set/list?account_id=«account-ID»&size=50&page=10' \
--header 'Authorization: «campaign-API-key»'
Request filtered
Terminal window
curl --location 'https://api.ads.axon.ai/manage/v1/creative_set/list?account_id=«account-ID»&ids=56789' \
--header 'Authorization: «campaign-API-key»'
Response
[
{
"id": "56789",
"campaign_id": "12345",
"type": "APP",
"name": "test",
"assets": [
{
"id": "63085821",
"name": "playable.html",
"status": "ACTIVE",
"url": "https://res1.applovin.com/r83948939/playable_raw.html",
"type": "HOSTED_HTML",
"resource_type": "HTML",
},
{
"id": "62453682",
"name": "test1.mp4",
"status": "ACTIVE",
"url": "https://res1.applovin.com/r83948939/test1.mp4",
"asset_type": "VID_LONG_P",
"resource_type": "VIDEO",
}
],
"languages": [
"ENGLISH"
],
"countries": [
"US"
]
}
]

The /creative_set/list_by_campaign_id endpoint

Make a GET request to this endpoint to retrieve information about creative sets that are included in a set of campaign IDs on your account. This endpoint returns up to 100 results at a time.

Campaign Management API: Creative Set List by Campaign

Target URL

https://api.ads.axon.ai/manage/v1/creative_set/list_by_campaign_id?account_id=«account-ID»

Query parameters

NameDescriptionDefault
idsA comma-separated list of campaign IDs. Use this to filter the results to only creative sets with the specified campaign IDs. You can specify a maximum of 100 IDs this way.null
pageThe page number of the results to retrieve. The first page is page 1.1
sizeThe number of results to return per page. Maximum 100.100

Response body parameters

NameDescription
campaign_countThe number of campaigns in the campaigns object.
creative_set_countThe total number of creative sets across returned in this response across all campaigns.
campaignsA dictionary containing information about the returned campaigns. The keys are campaign IDs. The values are arrays of Creative set objects.

Examples

Request paginated
Terminal window
curl --location 'https://api.ads.axon.ai/manage/v1/creative_set/list_by_campaign_id?account_id=«account-ID»&ids=56789,1648980&size=50&page=10' \
--header 'Authorization: «campaign-API-key»'
Request filtered
Terminal window
curl --location 'https://api.ads.axon.ai/manage/v1/creative_set/list_by_campaign_id?account_id=«account-ID»&ids=56789' \
--header 'Authorization: «campaign-API-key»'
Response
{
"campaign_count": 2,
"creative_set_count": 2,
"campaigns": {
"12345": [
{
"id": "56789",
"type": "APP",
"name": "test",
"assets": [
{
"id": "63085821",
"name": "playable.html",
"status": "ACTIVE",
"url": "https://res1.applovin.com/r83948939/playable_raw.html",
"type": "HOSTED_HTML",
"resource_type": "HTML",
},
{
"id": "62453682",
"name": "test1.mp4",
"status": "ACTIVE",
"url": "https://res1.applovin.com/r83948939/test1.mp4",
"asset_type": "VID_LONG_P",
"resource_type": "VIDEO",
}
],
"languages": [
"ENGLISH"
],
"countries": [
"US"
],
"campaign_id": "56789",
"product_page": "",
"created_at": "2025-07-18T10:56:05"
}
],
"1648980": [
{
"id": "27227280",
"type": "APP",
"name": "Test_1",
"assets": [
{
"id": "63085821",
"name": "playable.html",
"status": "ACTIVE",
"url": "https://res1.applovin.com/r83948939/playable_raw.html",
"type": "HOSTED_HTML",
"resource_type": "HTML",
},
{
"id": "62453682",
"name": "test1.mp4",
"status": "ACTIVE",
"url": "https://res1.applovin.com/r83948939/test1.mp4",
"asset_type": "VID_LONG_P",
"resource_type": "VIDEO",
}
],
"status": "PAUSED",
"languages": [
"CHINESE_TRADITIONAL",
"ITALIAN",
"INDONESIAN"
],
"countries": [],
"campaign_id": "1648980",
"product_page": "test.com",
"created_at": "2025-06-03T23:23:12"
}
]
}
}

The /creative_set/create endpoint

Make a POST request to this endpoint to create a new creative set. The request body is a Creative set object. Review the Create column of the Creative set object table to determine which fields you should include in your request.

This endpoint returns a JSON object that contains the Creative set ID (id) of the creative set this endpoint creates.

Campaign Management API: Creative Set Create

Target URL

https://api.ads.axon.ai/manage/v1/creative_set/create?account_id=«account-ID»

Examples

Request

Terminal window
curl --location 'https://api.ads.axon.ai/manage/v1/creative_set/create?account_id=«account-ID»' \
--header 'Content-Type: application/json' \
--header 'Authorization: «campaign-API-key»' \
--data '
{
"campaign_id": "12345",
"type": "APP",
"name": "test",
"assets": [
{
"id": "62453682"
}
],
"languages": [
"ENGLISH"
],
"countries": [
"US"
]
}

Response

{
"id": "56789",
"version": "V2"
}

The /creative_set/update endpoint

Make a POST request to this endpoint to update an existing creative set. The request body is a Creative set object. Review the Update column of the Creative set object table to determine which fields you should include in your request.

This endpoint returns a JSON object that contains the Creative set ID (id) of the creative set this endpoint updates.

Campaign Management API: Creative Set Update

Target URL

https://api.ads.axon.ai/manage/v1/creative_set/update?account_id=«account-ID»

Examples

Request
Terminal window
curl --location 'https://api.ads.axon.ai/manage/v1/creative_set/update?account_id=«account-ID»' \
--header 'Content-Type: application/json' \
--header 'Authorization: «campaign-API-key»' \
--data '
{
"id": "56789",
"campaign_id": "12345",
"type": "APP",
"name": "test",
"assets": [
{
"id": "63085821"
},
{
"id": "62453682"
}
],
"languages": [
"ENGLISH"
],
"countries": [
"US"
]
}
Response
{
"id": "56789",
"version": "V2"
}

Creative set versions

AppLovin supports two different creative set versions:

  • V1: You may upload only a single asset of each asset type.
  • V2: You may upload up to 10 assets for each asset type.

When you create a new creative set, its version is always V2 unless you clone it from an existing creative set that is V1.

Creative set object

NameTypeDescriptionCreateUpdate
assetsCreativeSetAsset[ ]Assets to include in the creative set. See CreativeSetAsset.
May contain the following types: HOSTED_HTML, VID_LONG_P, VID_SHORT_P, IMG_BANNER, IMG_INTER_P
Must contain either a HOSTED_HTML, or an IMG_INTER_P and a video (VID_LONG_P or VID_SHORT_P).
RequiredOptional
campaign_idStringThe ID of the campaign this creative set belongs to.RequiredRequired
countries String[ ]List of the ISO 3166-1 alpha-2 codes in which this creative set is served. For example, US for the United States, FR for France, or JP for Japan. Defaults to all countries. See Table of country codes below for the full list.OptionalOptional
idStringID of the creative set.ForbiddenRequired
hashed_idStringThe external ID of the creative set. It is the same value as the creative_set_id in the Reporting API, the {CREATIVE_SET_ID} Tracking URL macro.ForbiddenIgnored
languagesLanguage[ ]List of languages. Defaults to all languages. Please refer to Table of languages below for the full list.OptionalOptional
nameStringThe name of the creative set.RequiredOptional
product_pageStringiOS Custom Product Page or Android Store Listing associated with the creative set.OptionalOptional
statusStringStatus of the creative set: LIVE or PAUSEDOptionalOptional
typeStringThe type of the campaign. Must be APP.RequiredRequired
versionStringThe creative set version. V1 for older creative sets that only support a single asset per type, V2 for new creative set that support multiple assets per type.IgnoredIgnored

CreativeSetAsset object

NameTypeDescriptionCreate Creative set
idStringID of the asset. You use this ID when you create or update a creative set.Required
nameStringAsset name.Ignored
statusStringAsset status. Possible values are: IN_REVIEW, REJECTED, ACTIVE, PAUSED, UNKNOWN.Ignored
typeStringCreative asset type. Possible values are: VID_LONG_P, VID_SHORT_P, HOSTED_HTML, IMG_BANNER, IMG_INTER_P.Ignored
urlStringThe URL of the asset, for example: https://res1.applovin.com/r83948939/test1.mp4Ignored

The /creative_set/clone endpoint

Make a POST request to this endpoint to clone an existing creative set to a different campaign.

This endpoint returns a JSON object that contains the Creative set ID (id) of the resulting cloned creative set.

Campaign Management API: Creative Set Clone

Target URL

https://api.ads.axon.ai/manage/v1/creative_set/clone?account_id=«account-ID»

Request body parameters

NameTypeDescription
campaign_idIntegerThe ID of the campaign into which you want to clone the creative set.
creative_set_idIntegerID of the creative set you want to clone.
statusStringStatus of the cloned creative set: LIVE or PAUSED.

Examples

Request
Terminal window
curl --location 'https://api.ads.axon.ai/manage/v1/creative_set/clone?account_id=«account-ID»' \
--header 'Content-Type: application/json' \
--header 'Authorization: «campaign-API-key»' \
--data '
{
"campaign_id": "12345",
"creative_set_id": "39823",
"status": "LIVE"
}
Response
{
"id": "56795",
"version": "V1"
}

Assets

The /asset/list endpoint

Make a GET request to this endpoint to retrieve a list of up to 100 assets on your account. This list is a JSON array of Asset objects.

This endpoint returns an empty array if there are no assets on the selected page.

Campaign Management API: Assets List

Target URL

https://api.ads.axon.ai/manage/v1/asset/list?account_id=«account-ID»

Query parameters

NameDescriptionDefault
idsA comma-separated list of asset IDs. Use this to filter the results to only those with the specified IDs. You can specify a maximum of 100 IDs this way.null
pageThe page number of the results to retrieve. The first page is page 1.1
resource_typeAn asset resource type variety. Use this to filter the results to only those with that resource type. Possible values are image, html, videonull
sizeThe number of results to return per page. Maximum 100.100

Asset object

NameTypeDescription
asset_typeStringCreative asset type. Possible values are VID_LONG_P, VID_SHORT_P, HOSTED_HTML, IMG_BANNER, IMG_INTER_P.
idStringID of the asset. Use this when you create or update a creative set.
nameStringAsset name.
resource_typeStringThe resource type of the asset. Possible values are IMAGE, VIDEO, or HTML.
statusStringAsset status. Possible values are IN_REVIEW, REJECTED, ACTIVE, or PAUSED.
upload_timeStringThe uploaded time of the asset, for example: 2025-04-27T23:34:06
urlStringThe URL of the uploaded asset, for example: https://res1.applovin.com/r83948939/test1.mp4

Examples

Request paginated
Terminal window
curl --location 'https://api.ads.axon.ai/manage/v1/asset/list?account_id=«account-ID»&size=50&page=10' \
--header 'Authorization: «campaign-API-key»'
Request filtered
Terminal window
curl --location 'https://api.ads.axon.ai/manage/v1/asset/list?account_id=«account-ID»&ids=12345' \
--header 'Authorization: «campaign-API-key»'
Response
[
{
"id": "65061535",
"name": "playable.html",
"status": "ACTIVE",
"url": "https://res1.applovin.com/r83948939/playable_raw.html",
"asset_type": "HOSTED_HTML",
"resource_type": "HTML",
"upload_time": "2025-07-04T07:25:30"
},
{
"id": "65061052",
"name": "test1.mp4",
"status": "ACTIVE",
"url": "https://res1.applovin.com/r83948939/test1.mp4",
"asset_type": "VID_LONG_P",
"resource_type": "VIDEO",
"upload_time": "2025-07-04T07:24:57"
}
]

The /asset/upload endpoint

Make a POST request to this endpoint to upload new asset files. You can upload up to 40 files at once. The total size must not exceed 10 GB and the size of a single file should not exceed 1 GB. After the upload, AppLovin processes, optimizes, and reviews the assets.

This endpoint returns a JSON object with an upload_id. You can use this ID to query the status of the uploaded assets. See The /asset/upload_result endpoint below.

Campaign Management API: Asset Upload

Target URL

https://api.ads.axon.ai/manage/v1/asset/upload?account_id=«account-ID»

Request form fields

NameTypeDescription
filesFile[ ]Each filename must be unique in the batch and each file must have a Content-Type. Supported Content-Type values are text/html, image/gif, image/jpeg, image/png, video/mp4, and video/quicktime.

Examples

Request
Terminal window
curl --location 'https://api.ads.axon.ai/manage/v1/asset/upload?account_id=«account-ID»' \
--header 'Authorization: «campaign-API-key»' \
--form 'files=@"/path/to/playable.html"' \
--form 'files=@"/path/to/video.mp4"'
Response
{
"upload_id": "c7a3db4226b24bd8bb0b38c46654aa54"
}

The /asset/upload_result endpoint

Make a GET request to this endpoint to check the status of an upload request.

This endpoint returns a JSON object containing information about the given upload_id.

Campaign Management API: Asset Upload Result

Target URL

https://api.ads.axon.ai/manage/v1/asset/upload_result?account_id=«account-ID»&upload_id=«upload-ID»

Request query parameters

NameTypeDescription
upload_idStringThe upload_id returned by the /asset/upload endpoint.

Response body parameters

NameTypeDescription
detailsAssetUploadDetail[ ]Details about each of the uploaded files. See AssetUploadDetail.
summaryAssetUploadSummaryOverview of the status of the uploaded files. See AssetUploadSummary.
upload_statusStringThe status of upload asset request: PENDING if any files are still processing, otherwise FINISHED.

AssetUploadSummary object

NameTypeDescription
failedIntegerCount of failed assets.
pendingIntegerCount of pending assets.
successIntegerCount of successfully processed assets.
totalIntegerCount of all assets in upload request.

AssetUploadDetail object

NameTypeDescription
error_messageStringIf the upload fails, this contains the reason for the failure.
file_statusStringThe upload status of the asset. Possible values are PENDING, FAILURE, or SUCCESS.
idStringThe ID of the asset.
nameStringThe name of the asset.
resource_typeStringThe resource type of the asset. Possible values are IMAGE, VIDEO, or HTML.
uploadTimeStringThe upload time of the asset, for example: 2025-04-27T23:34:06
urlStringThe URL of the uploaded asset, for example: https://res1.applovin.com/r83948939/test1.mp4

Examples

Request
Terminal window
curl --location 'https://api.ads.axon.ai/manage/v1/asset/upload_result?account_id=«account-ID»&upload_id=«upload-ID»' \
--header 'Authorization: «campaign-API-key»' \
Response
{
"summary": {
"total": 2,
"success": 2,
"failed": 0,
"pending": 0
},
"details": [
{
"id": "66218554",
"name": "playable.html",
"uploadTime": "2025-07-19T08:24:29",
"url": "https://res1.applovin.com/r0186867/b30361c076022e02ea3cc1b80a6855f5491a6d70_raw.raw",
"resource_type": "HTML",
"file_status": "SUCCESS"
},
{
"id": "65061052",
"name": "test1.mp4",
"uploadTime": "2025-07-19T08:24:29",
"url": "https://res1.applovin.com/r83948939/test1.mp4",
"resource_type": "VIDEO",
"file_status": "SUCCESS",
}
],
"upload_status": "FINISHED"
}

Table of tracking methods

API nameMMP name
ADJUSTAdjust
APPSFLYERAppsFlyer
APSALARSingular
BRANCHBranch
KOCHAVAKochava
TENJINTenjin

Table of languages

  • ALBANIAN
  • ARABIC
  • BASQUE
  • BENGALI
  • BOSNIAN
  • BULGARIAN
  • CATALAN
  • CHINESE_SIMPLIFIED
  • CHINESE_TRADITIONAL
  • CROATIAN
  • CZECH
  • DANISH
  • DUTCH
  • ENGLISH
  • ESTONIAN
  • FARSI
  • FINNISH
  • FRENCH
  • GEORGIAN
  • GERMAN
  • GREEK
  • HEBREW
  • HINDI
  • HUNGARIAN
  • ICELANDIC
  • INDONESIAN
  • ITALIAN
  • JAPANESE
  • JAVANESE
  • KOREAN
  • LATVIAN
  • LITHUANIAN
  • MACEDONIAN
  • MALAY
  • MARATHI
  • NORWEGIAN
  • POLISH
  • PORTUGESE
  • ROMANIAN
  • RUSSIAN
  • SERBIAN
  • SLOVAK
  • SLOVENIAN
  • SPANISH
  • SUNDANESE
  • SWEDISH
  • THAI
  • TURKISH
  • UIGHUR
  • UKRAINIAN
  • URDU
  • VIETNAMESE

Table of country codes

  • AD
  • AE
  • AF
  • AG
  • AI
  • AL
  • AM
  • AO
  • AR
  • AS
  • AT
  • AU
  • AW
  • AX
  • AZ
  • BA
  • BB
  • BD
  • BE
  • BF
  • BG
  • BH
  • BI
  • BJ
  • BL
  • BM
  • BN
  • BO
  • BQ
  • BR
  • BS
  • BT
  • BW
  • BY
  • BZ
  • CA
  • CD
  • CF
  • CG
  • CH
  • CI
  • CK
  • CL
  • CM
  • CN
  • CO
  • CR
  • CV
  • CW
  • CY
  • CZ
  • DE
  • DJ
  • DK
  • DM
  • DO
  • DZ
  • EC
  • EE
  • EG
  • EH
  • ER
  • ES
  • ET
  • FI
  • FJ
  • FK
  • FM
  • FO
  • FR
  • GA
  • GB
  • GD
  • GE
  • GF
  • GG
  • GH
  • GI
  • GL
  • GM
  • GN
  • GP
  • GQ
  • GR
  • GT
  • GU
  • GW
  • GY
  • HK
  • HN
  • HR
  • HT
  • HU
  • ID
  • IE
  • IL
  • IM
  • IN
  • IQ
  • IS
  • IT
  • JE
  • JM
  • JO
  • JP
  • KE
  • KG
  • KH
  • KI
  • KM
  • KN
  • KR
  • KW
  • KY
  • KZ
  • LA
  • LB
  • LC
  • LI
  • LK
  • LR
  • LS
  • LT
  • LU
  • LV
  • LY
  • MA
  • MC
  • MD
  • ME
  • MF
  • MG
  • MH
  • MK
  • ML
  • MM
  • MN
  • MO
  • MP
  • MQ
  • MR
  • MS
  • MT
  • MU
  • MV
  • MW
  • MX
  • MY
  • MZ
  • NA
  • NC
  • NE
  • NF
  • NG
  • NI
  • NL
  • NO
  • NP
  • NQ
  • NR
  • NU
  • NZ
  • OM
  • PA
  • PE
  • PF
  • PG
  • PH
  • PK
  • PL
  • PM
  • PN
  • PR
  • PS
  • PT
  • PW
  • PY
  • QA
  • RE
  • RO
  • RS
  • RU
  • RW
  • SA
  • SB
  • SC
  • SD
  • SE
  • SG
  • SH
  • SI
  • SJ
  • SK
  • SL
  • SM
  • SN
  • SO
  • SR
  • SS
  • ST
  • SV
  • SX
  • SZ
  • TC
  • TD
  • TG
  • TH
  • TJ
  • TK
  • TL
  • TM
  • TN
  • TO
  • TR
  • TT
  • TV
  • TW
  • TZ
  • UA
  • UG
  • US
  • UY
  • UZ
  • VA
  • VC
  • VE
  • VG
  • VI
  • VN
  • VU
  • WF
  • WS
  • XK
  • YE
  • YT
  • ZA
  • ZM
  • ZW

Table of region codes

  • AK (Alaska)
  • AL (Alabama)
  • AR (Arkansas)
  • AZ (Arizona)
  • CA (California)
  • CO (Colorado)
  • CT (Connecticut)
  • DC (District of Columbia)
  • DE (Delaware)
  • FL (Florida)
  • GA (Georgia)
  • HI (Hawaii)
  • IA (Iowa)
  • ID (Idaho)
  • IL (Illinois)
  • IN (Indiana)
  • KS (Kansas)
  • KY (Kentucky)
  • LA (Louisiana)
  • MA (Massachusetts)
  • MD (Maryland)
  • ME (Maine)
  • MI (Michigan)
  • MN (Minnesota)
  • MO (Missouri)
  • MS (Mississippi)
  • MT (Montana)
  • NC (North Carolina)
  • ND (North Dakota)
  • NE (Nebraska)
  • NH (New Hampshire)
  • NJ (New Jersey)
  • NM (New Mexico)
  • NV (Nevada)
  • NY (New York)
  • OH (Ohio)
  • OK (Oklahoma)
  • OR (Oregon)
  • PA (Pennsylvania)
  • PR (Puerto Rico)
  • RI (Rhode Island)
  • SC (South Carolina)
  • SD (South Dakota)
  • TN (Tennessee)
  • TX (Texas)
  • UT (Utah)
  • VA (Virginia)
  • VT (Vermont)
  • WA (Washington)
  • WI (Wisconsin)
  • WV (West Virginia)
  • WY (Wyoming)

Table of Metropolitan Statistical Areas

Metropolitan Statistical AreaValue
Abilene–Sweetwater, TXABILENE_SWEETWATER
Albany–Schenectady–Troy, NYALBANY_SCHENECTADY_TROY
Albany, GAALBANY_GA
Albuquerque–Santa Fe, NMALBUQUERQUE_SANTA_FE
Alexandria, LAALEXANDRIA_LA
Alpena, MIALPENA
Amarillo, TXAMARILLO
Anchorage, AKANCHORAGE
Atlanta, GAATLANTA
Augusta–Aiken, GAAUGUSTA
Austin, TXAUSTIN
Bakersfield, CABAKERSFIELD
Baltimore, MDBALTIMORE
Bangor, MEBANGOR
Baton Rouge, LABATON_ROUGE
Beaumont–Port Arthur, TXBEAUMONT_PORT_ARTHUR
Bend, ORBEND_OR
Billings, MTBILLINGS
Biloxi–Gulfport, MSBILOXI_GULFPORT
Binghamton, NYBINGHAMTON
Birmingham–Anniston–Tuscaloosa, ALBIRMINGHAM_ANN_TUSC
Bluefield–Beckley–Oak Hill, WVBLUEFIELD_BECKLEY_OAK_HILL
Boise, IDBOISE
Boston (Manchester), MA–NHBOSTON_MANCHESTER
Bowling Green, KYBOWLING_GREEN
Buffalo, NYBUFFALO
Burlington–Plattsburgh, VT–NYBURLINGTON_PLATTSBURGH
Butte–Bozeman, MTBUTTE_BOZEMAN
Casper–Riverton, WYCASPER_RIVERTON
Cedar Rapids–Waterloo–Iowa City–Dubuque, IACEDAR_RAPIDS_WTRLO_IWC_DUB
Champaign–Springfield–Decatur, ILCHAMPAIGN_SPRNGFLD_DECATUR
Charleston–Huntington, WVCHARLESTON_HUNTINGTON
Charleston, SCCHARLESTON_SC
Charlotte, NCCHARLOTTE
Charlottesville, VACHARLOTTESVILLE
Chattanooga, TN–GACHATTANOOGA
Cheyenne–Scottsbluff, WYCHEYENNE_SCOTTSBLUF
Chicago, IL–INCHICAGO
Chico–Redding, CACHICO_REDDING
Cincinnati, OH–KY–INCINCINNATI
Clarksburg–WestonCLARKSBURG_WESTON
Cleveland–Akron (Canton)CLEVELAND_AKRON_CANTON
Colorado Springs–PuebloCOLORADO_SPRINGS_PUEBLO
Columbia–Jefferson CityCOLUMBIA_JEFFERSON_CITY
Columbia, SCCOLUMBIA_SC
Columbus–Tupelo–W Pnt–HstnCOLUMBUS_TUPELO_WEST_POINT
Columbus, GA (Opelika, Al)COLUMBUS_GA
Columbus, OHCOLUMBUS_OH
Corpus Christi, TXCORPUS_CHRISTI
Dallas–Ft. Worth, TXDALLAS_FT_WORTH
Davenport–Rock Island–Moline, IA–ILDAVENPORT_R_ISLAND_MOLINE
Dayton, OHDAYTON
Denver, CODENVER
Des Moines–Ames, IADES_MOINES_AMES
Detroit, MIDETROIT
Dothan, ALDOTHAN
Duluth–Superior, MN–WIDULUTH_SUPERIOR
El Paso–Las Cruces, TXEL_PASO_LAS_CRUCES
Elmira–Corning, NYELMIRA_CORNING
Erie, PAERIE
Eugene, OREUGENE
Eureka, CAEUREKA
Evansville, INEVANSVILLE
Fairbanks, AKFAIRBANKS
Fargo–Valley City, ND—MNFARGO_VALLEY_CITY
Flint–Saginaw–Bay City, MIFLINT_SAGINAW_BAY_CITY
Fresno–Visalia, CAFRESNO_VISALIA
Ft. Myers–Naples, FLFT_MYERS_NAPLES
Ft. Smith–Fay–Springdale–Rogers, ARFT_SMITH_FAY_SPRNGDL_RGRS
Ft. Wayne, INFT_WAYNE
Gainesville, FLGAINESVILLE
Glendive, MTGLENDIVE
Grand Junction–Montrose, COGRAND_JUNCTION_MONTROSE
Grand Rapids–Kalamazoo–Battle Creek, MIGRAND_RAPIDS_KALMZOO_B_CRK
Great Falls, MTGREAT_FALLS
Green Bay–Appleton, WIGREEN_BAY_APPLETON
Greensboro–High Point–Winston-Salem, NCGREENSBORO_H_POINT_W_SALEM
Greenville–New Bern–Washington, NCGREENVILLE_N_BERN_WASHNGTN
Greenville–Spartanburg–Asheville–Anderson, SCGREENVLL_SPART_ASHEVLL_AND
Greenwood–Greenville, MSGREENWOOD_GREENVILLE
Harlingen–Weslco–Brownsville–McAllen, TXHARLINGEN_WSLCO_BRNSVL_MCA
Harrisburg–Lancaster–Lebanon–York, PAHARRISBURG_LNCSTR_LEB_YORK
Harrisonburg, VAHARRISONBURG
Hartford–New Haven, CTHARTFORD_NEW_HAVEN
Hattiesburg–Laurel, MSHATTIESBURG_LAUREL
Helena, MTHELENA
Honolulu, HIHONOLULU
Houston, TXHOUSTON
Huntsville–Decatur–Florence, AL–TNHUNTSVILLE_DECATUR_FLOR
Idaho Falls–Pocatello–Jackson, ID–WYIDAHO_FALLS_POCATELLO
Indianapolis, ININDIANAPOLIS
Jackson, MSJACKSON_MS
Jackson, TNJACKSON_TN
Jacksonville, FLJACKSONVILLE
Johnstown–Altoona–Stata College, PAJOHNSTOWN_ALTOONA
Jonesboro, ARJONESBORO
Joplin–Pittsburg, MO–KSJOPLIN_PITTSBURG
Juneau, AKJUNEAU
Kansas City, MO–KSKANSAS_CITY
Knoxville, TNKNOXVILLE
La Crosse–Eau Claire, MN–WILA_CROSSE_EAU_CLAIRE
Lafayette, INLAFAYETTE_IN
Lafayette, LALAFAYETTE_LA
Lake Charles, LALAKE_CHARLES
Lansing, MILANSING
Laredo, TXLAREDO
Las Vegas, NVLAS_VEGAS
Lexington, KYLEXINGTON
Lima, OHLIMA
Lincoln–Hastings–Kearney, NELINCOLN_HSTNGS_KRNY
Little Rock–Pine Bluff, ARLITTLE_ROCK_PINE_BLUFF
Los Angeles, CALOS_ANGELES
Louisville, KYLOUISVILLE
Lubbock, TXLUBBOCK
Macon, GAMACON
Madison, WIMADISON
Mankato, MNMANKATO
Marquette, MIMARQUETTE
Medford–Klamath Falls, ORMEDFORD_KLAMATH_FALLS
Memphis, TNMEMPHIS
Meridian, IDMERIDIAN
Miami–Ft. Lauderdale, FLMIAMI_FT_LAUDERDALE
Milwaukee, WIMILWAUKEE
Minneapolis–St. Paul, MN–WIMINNEAPOLIS_ST_PAUL
Minot–Bismarck–Dickinson–Williston, NDMINOT_BISMARCK_DICKINSON
Missoula, MTMISSOULA
Mobile–Pensacola–Ft. Walton, AL–FLMOBILE_PENSACOLA_FT_WALT
Monroe–El Dorado, MIMONROE_EL_DORADO
Monterey–Salinas, CAMONTEREY_SALINAS
Montgomery–Selma, ALMONTGOMERY_SELMA
Myrtle Beach–Florence, SCMYRTLE_BEACH_FLORENCE
Nashville, TNNASHVILLE
New Orleans, LANEW_ORLEANS
New York, NYNEW_YORK
Norfolk–Portsmouth–Newport News, VA–NCNORFOLK_PORTSMTH_NEWPT_NWS
North Platte, NENORTH_PLATTE
Odessa–Midland, TXODESSA_MIDLAND
Oklahoma City, OKOKLAHOMA_CITY
Omaha, NE–IAOMAHA
Orlando–Daytona Beach–Melbourne, FLORLANDO_DAYTONA_BCH_MELBRN
Ottumwa–Kirksville, IAOTTUMWA_KIRKSVILLE
Paducah–Cape Girard–Harrisburg, KY–ILPADUCAH_CAPE_GIRAR_D_HARSBG
Palm Springs, CAPALM_SPRINGS
Panama City, FLPANAMA_CITY
Parkersburg, WVPARKERSBURG
Peoria–Bloomington, ILPEORIA_BLOOMINGTON
Philadelphia, PAPHILADELPHIA
Phoenix–Prescott, AZPHOENIX_PRESCOTT
Pittsburgh, PAPITTSBURGH
Portland–Auburn, MEPORTLAND_AUBURN
Portland, ORPORTLAND_OR
Presque Isle, PAPRESQUE_ISLE
Providence–New Bedford, RI–MAPROVIDENCE_NEW_BEDFORD
Quincy–Hannibal–Keokuk, IL/MO/IAQUINCY_HANNIBAL_KEOKUK
Raleigh–Durham–Fayetville, NCRALEIGH_DURHAM_FAYETVLLE
Rapid City, SDRAPID_CITY
Reno, NVRENO
Richmond–Petersburg, VARICHMOND_PETERSBURG
Roanoke–Lynchburg, VAROANOKE_LYNCHBURG
Rochester–Mason City–Austin, MN–IAROCHESTR_MASON_CITY_AUSTIN
Rochester, NYROCHESTER_NY
Rockford, ILROCKFORD
Sacramento–Stockton–Modesto, CASACRAMNTO_STKTN_MODESTO
Salisbury, MDSALISBURY
Salt Lake City, UTSALT_LAKE_CITY
San Angelo, TXSAN_ANGELO
San Antonio, TXSAN_ANTONIO
San Diego, CASAN_DIEGO
San Francisco–Oakland–San Jose, CASAN_FRANCISCO_OAK_SAN_JOSE
Santa Barbara–Santa Maria–San Luis Obispo, CASANTABARBRA_SANMAR_SANLUOB
Savannah, GASAVANNAH
Seattle–Tacoma, WASEATTLE_TACOMA
Sherman–Denison, TXSHERMAN_ADA
Shreveport, LASHREVEPORT
Sioux City, IASIOUX_CITY
Sioux Falls–Mitchell, SD–MNSIOUX_FALLS_MITCHELL
South Bend–Elkhart, IN–MISOUTH_BEND_ELKHART
Spokane, WASPOKANE
Springfield–Holyoke, MASPRINGFIELD_HOLYOKE
Springfield, MOSPRINGFIELD_MO
St. Joseph, MO–KSST_JOSEPH
St. Louis, MO–ILST_LOUIS
Syracuse, NYSYRACUSE
Tallahassee–Thomasville, FLTALLAHASSEE_THOMASVILLE
Tampa–St. Petersburg–Sarasota, FLTAMPA_ST_PETE_SARASOTA
Terre Haute, INTERRE_HAUTE
Toledo, OHTOLEDO
Topeka, KSTOPEKA
Traverse City–Cadillac, MITRAVERSE_CITY_CADILLAC
Tri-Cities, TN–VATRI_CITIES_TN_VA
Tucson–Sierra Vista, AZTUCSON_SIERRA_VISTA
Tulsa, OKTULSA
Twin Falls, IDTWIN_FALLS
Tyler–Longview–Lufkin–Nacogdoches, TXTYLER_LONGVIEW_LFKN_NCGD
Utica, NYUTICA
Victoria, TXVICTORIA
Waco–Temple–Bryan, TXWACO_TEMPLE_BRYAN
Washington DC–Hagerstown, MDWASHINGTON_DC_HAGRSTWN
Watertown, NYWATERTOWN
Wausau–Rhinelander, WIWAUSAU_RHINELANDER
West Palm Beach–Ft. Pierce, FLWEST_PALM_BEACH_FT_PIERCE
Wheeling–Steubenville, WV–OHWHEELING_STEUBENVILLE
Wichita Falls–Lawton, TXWICHITA_FALLS_LAWTON
Wichita–Hutchinson Plus, KSWICHITA_HUTCHINSON_PLUS
Wilkes Barre–Scranton–Hazelton, PAWILKES_BARRE_SCRANTON
Wilmington, NCWILMINGTON
Yakima–Pasco–Richland–Kennewick, WAYAKIMA_PASCO_RCHLND_KNNWCK
Youngstown, OHYOUNGSTOWN
Yuma–El Centro, AZYUMA_EL_CENTRO
Zanesville, OHZANESVILLE