Ads Unified Platform Advertiser Public API
Ads Unified Platform - Public API for advertisers
Download OpenAPI specification:
Get creatives by organization and application
Returns a paginated list of creatives for the specified organization and application
Code samples for "Get creatives by organization and application":
Request example
curl -X GET \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/creatives"
Response example
{ "items": [ { "id": "abc123def456ghi789jkl012", "name": "Spring Campaign Video", "language": "en", "type": "end_card_pair", "status": "uploaded", "files": [ { "name": "H264_high.mp4", "url": "https://example.com/assets/H264_high.mp4" } ], "createdAt": "2026-04-21T12:34:56.000Z", "updatedAt": "2026-04-21T13:00:00.000Z" } ], "meta": { "total": 100, "limit": 100, "offset": 0 }}
Create creative
Creates a new creative by uploading files and associated metadata. Accepts multipart/form-data with a JSON field and one or more file fields. must be the first field in the request body.
creativeInfocreativeInfoCode samples for "Create creative":
Request example
curl -X POST \ -H "Content-Type: multipart/form-data" \ -d '{"creativeInfo":{"name":"Spring Campaign Creative","language":"en","squareEndCard":{"fileName":"my-creative.jpg"}},"squareEndCardFile":"string"}' \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/creatives"
Response example
{ "id": "abc123def456ghi789jkl012", "name": "Spring Campaign Video", "language": "en", "type": "end_card_pair", "status": "uploaded", "files": [ { "name": "H264_high.mp4", "url": "https://example.com/assets/H264_high.mp4" } ], "createdAt": "2026-04-21T12:34:56.000Z", "updatedAt": "2026-04-21T13:00:00.000Z"}
Get creative by ID
Returns a single creative for the specified organization and application
Code samples for "Get creative by ID":
Request example
curl -X GET \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/creatives/{creativeId}"
Response example
{ "id": "abc123def456ghi789jkl012", "name": "Spring Campaign Video", "language": "en", "type": "end_card_pair", "status": "uploaded", "files": [ { "name": "H264_high.mp4", "url": "https://example.com/assets/H264_high.mp4" } ], "createdAt": "2026-04-21T12:34:56.000Z", "updatedAt": "2026-04-21T13:00:00.000Z"}
Update creative by ID
Updates the name of a creative for the specified organization and application
Code samples for "Update creative by ID":
Request example
curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "name": "Spring Campaign Video"}' \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/creatives/{creativeId}"
Response example
{ "id": "abc123def456ghi789jkl012", "name": "Spring Campaign Video", "language": "en", "type": "end_card_pair", "status": "uploaded", "files": [ { "name": "H264_high.mp4", "url": "https://example.com/assets/H264_high.mp4" } ], "createdAt": "2026-04-21T12:34:56.000Z", "updatedAt": "2026-04-21T13:00:00.000Z"}
Create a campaign
Creates a new campaign for the specified application
Code samples for "Create a campaign":
Request example
curl -X POST \ -H "Content-Type: application/json" \ -d '{ "name": "Clash of Clans Campaign", "optimizationType": "appEventConversion", "cpiType": "manual", "postInstallWindow": "D7", "appEventType": "purchase", "roasType": "iap", "isCreativeTesting": true, "start": "2026-01-28T10:00:00.000Z", "sdkEventNames": [ "purchase", "level_complete" ]}' \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/campaigns"
Response example
{ "id": "abc123def456ghi789jkl012", "applicationId": "550e8400-e29b-41d4-a716-446655440000", "name": "Clash of Clans Campaign", "billingType": "cpi", "postInstallWindow": "D7", "optimizationType": "appEventConversion", "roasType": "iap", "appEventType": "purchase", "autoFilling": false, "sdkEventNames": [ "purchase", "level_complete" ], "blocklistSources": [ "string" ], "allowlistSources": [ "string" ], "bidConfigurationMethod": "manual", "budgetPacingType": "DISCOUNTED", "forcePausedEnabled": true, "forcePauseReason": "manual", "apptopiaSourceCategoriesAllowlist": [ "string" ], "apptopiaSourceCategoriesBlocklist": [ "string" ], "sensorTowerSourceCategoriesAllowlist": [ "string" ], "sensorTowerSourceCategoriesBlocklist": [ "string" ], "allowlistCountrySubdivisions": [ { "country": "US", "subdivisions": [ 1, 2, 3 ] } ], "isCreativeTesting": false, "isNonCoppaOnly": false, "paused": true, "start": "2024-01-01T00:00:00.000Z", "end": "2025-01-01T00:00:00.000Z", "autoStart": "ENABLED", "isAutoEligible": true, "createdAt": "2024-01-01T00:00:00.000Z", "updatedAt": "2024-01-15T00:00:00.000Z", "lastStartedAt": "2025-01-01T00:00:00.000Z", "editorId": "editor-123", "correlationId": "corr-456", "attribution": { "clickUrl": "https://app.adjust.com/abc123", "startUrl": "https://app.adjust.com/start/abc123", "viewUrl": "https://app.adjust.com/view/abc123", "partner": "adjust", "type": "userLevel", "isMMPAttributionDisabled": false }, "deviceTargeting": { "apple": { "deviceBlocklist": [ "iPhone6,1", "iPhone6,2" ], "osMinVersion": "14.0" }, "android": { "manufacturerAllowlist": [ "Samsung", "Google" ], "manufacturerBlocklist": [ "Huawei" ], "modelBlocklist": [ "SM-G950U" ], "osMinVersion": "10.0" } }, "application": { "id": "app-uuid", "name": "My Game", "advertiserGameId": 1234567890, "storeId": "com.example.game", "store": "AppleAppStore", "platform": "iOS", "iconUrl": "https://example.com/icon.png" }, "manualBids": [ { "country": "US", "bid": "1000000" } ], "manualSourceBids": [ { "bid": "1000000", "country": "US", "sourceAppId": "a1b2c3d4e5f6" } ], "appEventBids": [ { "country": "US", "bid": "1000000" } ], "roasBids": [ { "country": "US", "maxBid": "2000000", "target": 1.5 } ], "retentionBids": [ { "country": "US", "bid": "1000000", "maxBid": "2000000" } ], "budget": { "campaignLimitType": "total", "pacingType": "THROTTLED", "dailyLimitType": "daily", "total": "1000000000", "daily": "100000000", "countryGroupDailyLimits": [ { "countries": [ "US", "CA" ], "limit": "10000", "name": "North America" } ] }, "creativePackIds": [ "abc123def456ghi789jkl012" ]}
Get a campaign by ID
Returns a single campaign for the specified application. The , , , and fields are included in the response only when listed in the query parameter; any not listed are omitted from the response entirely.
applicationbudgetbidscreativePacksincludeFieldsCode samples for "Get a campaign by ID":
Request example
curl -X GET \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/campaigns/{campaignId}"
Response example
{ "id": "abc123def456ghi789jkl012", "applicationId": "550e8400-e29b-41d4-a716-446655440000", "name": "Clash of Clans Campaign", "billingType": "cpi", "postInstallWindow": "D7", "optimizationType": "appEventConversion", "roasType": "iap", "appEventType": "purchase", "autoFilling": false, "sdkEventNames": [ "purchase", "level_complete" ], "blocklistSources": [ "string" ], "allowlistSources": [ "string" ], "bidConfigurationMethod": "manual", "budgetPacingType": "DISCOUNTED", "forcePausedEnabled": true, "forcePauseReason": "manual", "apptopiaSourceCategoriesAllowlist": [ "string" ], "apptopiaSourceCategoriesBlocklist": [ "string" ], "sensorTowerSourceCategoriesAllowlist": [ "string" ], "sensorTowerSourceCategoriesBlocklist": [ "string" ], "allowlistCountrySubdivisions": [ { "country": "US", "subdivisions": [ 1, 2, 3 ] } ], "isCreativeTesting": false, "isNonCoppaOnly": false, "paused": true, "start": "2024-01-01T00:00:00.000Z", "end": "2025-01-01T00:00:00.000Z", "autoStart": "ENABLED", "isAutoEligible": true, "createdAt": "2024-01-01T00:00:00.000Z", "updatedAt": "2024-01-15T00:00:00.000Z", "lastStartedAt": "2025-01-01T00:00:00.000Z", "editorId": "editor-123", "correlationId": "corr-456", "attribution": { "clickUrl": "https://app.adjust.com/abc123", "startUrl": "https://app.adjust.com/start/abc123", "viewUrl": "https://app.adjust.com/view/abc123", "partner": "adjust", "type": "userLevel", "isMMPAttributionDisabled": false }, "deviceTargeting": { "apple": { "deviceBlocklist": [ "iPhone6,1", "iPhone6,2" ], "osMinVersion": "14.0" }, "android": { "manufacturerAllowlist": [ "Samsung", "Google" ], "manufacturerBlocklist": [ "Huawei" ], "modelBlocklist": [ "SM-G950U" ], "osMinVersion": "10.0" } }, "application": { "id": "app-uuid", "name": "My Game", "advertiserGameId": 1234567890, "storeId": "com.example.game", "store": "AppleAppStore", "platform": "iOS", "iconUrl": "https://example.com/icon.png" }, "manualBids": [ { "country": "US", "bid": "1000000" } ], "manualSourceBids": [ { "bid": "1000000", "country": "US", "sourceAppId": "a1b2c3d4e5f6" } ], "appEventBids": [ { "country": "US", "bid": "1000000" } ], "roasBids": [ { "country": "US", "maxBid": "2000000", "target": 1.5 } ], "retentionBids": [ { "country": "US", "bid": "1000000", "maxBid": "2000000" } ], "budget": { "campaignLimitType": "total", "pacingType": "THROTTLED", "dailyLimitType": "daily", "total": "1000000000", "daily": "100000000", "countryGroupDailyLimits": [ { "countries": [ "US", "CA" ], "limit": "10000", "name": "North America" } ] }, "creativePackIds": [ "abc123def456ghi789jkl012" ]}
Update a campaign by ID
Updates the campaign details (name, scheduling, auto-start), liveness (paused) and attribution links.
Code samples for "Update a campaign by ID":
Request example
curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "name": "Clash of Clans Campaign", "start": "2026-01-28T10:00:00.000Z", "end": "2026-12-31T23:59:59.000Z", "autoStart": "ENABLED", "paused": false, "attributionLinks": { "clickUrl": "https://app.adjust.com/abc123", "startUrl": "https://app.adjust.com/start/abc123", "viewUrl": "https://app.adjust.com/view/abc123" }}' \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/campaigns/{campaignId}"
Response example
{ "id": "abc123def456ghi789jkl012", "name": "Clash of Clans Campaign", "start": "2024-01-01T00:00:00.000Z", "end": "2025-01-01T00:00:00.000Z", "autoStart": "ENABLED", "paused": true, "attributionLinks": { "clickUrl": "https://app.adjust.com/abc123", "startUrl": "https://app.adjust.com/start/abc123", "viewUrl": "https://app.adjust.com/view/abc123" }}
Update a campaign budget cap
Creates or updates the budget cap for the specified campaign.
Code samples for "Update a campaign budget cap":
Request example
curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "total": "1000000000", "daily": "100000000", "countryGroupDailyLimits": [ { "countries": [ "US", "CA" ], "limit": "1000000", "name": "North America" } ]}' \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/campaigns/{campaignId}/budget-cap"
Response example
{ "id": "abc123def456ghi789jkl012", "campaignLimitType": "total", "dailyLimitType": "daily", "total": "1000000000", "daily": "100000000", "countryGroupDailyLimits": [ { "countries": [ "US", "CA" ], "limit": "10000", "name": "North America" } ]}
Update campaign bids
Updates the bid configuration for the specified campaign. Provide the bid type in the request body; the bid type must match the campaign optimization type. Exactly one bid type may be sent, except that and may be sent together.
manualBidsmanualSourceBidsCode samples for "Update campaign bids":
Request example
curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "roasBids": [ { "country": "US", "target": 1.5, "maxBid": 1000000 } ], "manualSourceBids": [ { "country": "US", "bid": 1000000, "sourceAppId": "a1b2c3d4e5f6" } ], "manualBids": [ { "country": "US", "bid": 1000000 } ], "appEventBids": [ { "country": "US", "bid": 1000000 } ]}' \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/campaigns/{campaignId}/bids"
Response example
{ "id": "abc123def456ghi789jkl012", "roasBids": [ { "country": "US", "maxBid": "2000000", "target": 1.5 } ], "manualBids": [ { "country": "US", "bid": "1000000" } ], "manualSourceBids": [ { "bid": "1000000", "country": "US", "sourceAppId": "a1b2c3d4e5f6" } ], "appEventBids": [ { "country": "US", "bid": "1000000" } ]}
Update campaign targeting
Modifies the targeting configuration of the specified campaign.
Code samples for "Update campaign targeting":
Request example
curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "appleDevice": { "deviceBlocklist": [ "iPhone6,1", "iPhone6,2" ], "osMinVersion": "14.0" }, "androidDevice": { "manufacturerAllowlist": [ "Samsung", "Google" ], "manufacturerBlocklist": [ "Huawei" ], "modelBlocklist": [ "SM-G950U" ], "osMinVersion": "10.0" }, "allowlistCountrySubdivisions": [ { "country": "US", "subdivisions": [ 1, 2, 3 ] } ], "apptopiaSourceCategoriesAllowlist": [ "games", "entertainment" ], "apptopiaSourceCategoriesBlocklist": [ "gambling" ], "sensorTowerSourceCategoriesAllowlist": [ "action", "casual" ], "sensorTowerSourceCategoriesBlocklist": [ "simulation" ], "blocklistSources": [ "source-a", "source-b" ], "allowlistSources": [ "source-x", "source-y" ]}' \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/campaigns/{campaignId}/targeting"
Response example
{ "id": "abc123def456ghi789jkl012", "appleDevice": { "deviceBlocklist": [ "iPhone6,1", "iPhone6,2" ], "osMinVersion": "14.0" }, "androidDevice": { "manufacturerAllowlist": [ "Samsung", "Google" ], "manufacturerBlocklist": [ "Huawei" ], "modelBlocklist": [ "SM-G950U" ], "osMinVersion": "10.0" }, "allowlistCountrySubdivisions": [ { "country": "US", "subdivisions": [ 1, 2, 3 ] }, { "country": "CA", "subdivisions": [ 10, 20 ] } ], "apptopiaSourceCategoriesAllowlist": [ "games", "entertainment" ], "apptopiaSourceCategoriesBlocklist": [ "gambling" ], "sensorTowerSourceCategoriesAllowlist": [ "action", "casual" ], "sensorTowerSourceCategoriesBlocklist": [ "simulation" ], "blocklistSources": [ "source-a", "source-b" ], "allowlistSources": [ "source-x", "source-y" ]}
Assign creative packs to a campaign
Replaces the campaign creative packs with the provided list. Duplicate IDs are removed. Returns the full list of assigned creative pack IDs.
Code samples for "Assign creative packs to a campaign":
Request example
curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "creativePackIds": [ "697cd528d6befff74e809084", "697cd528d6befff74e809085" ]}' \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/campaigns/{campaignId}/assign-creative-pack"
Response example
{ "creativePackIds": [ "697cd528d6befff74e809084", "697cd528d6befff74e809085" ]}
Unassign creative packs from a campaign
Removes the provided creative packs from the campaign. IDs that are not currently assigned are ignored. Returns the full list of creative pack IDs that remain assigned.
Code samples for "Unassign creative packs from a campaign":
Request example
curl -X DELETE \ -H "Content-Type: application/json" \ -d '{ "creativePackIds": [ "697cd528d6befff74e809084", "697cd528d6befff74e809085" ]}' \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/campaigns/{campaignId}/unassign-creative-pack"
Response example
{ "creativePackIds": [ "697cd528d6befff74e809084" ]}
Get campaigns for an organization
Returns a paginated list of campaigns for the specified organization. The , , , and fields are included for each campaign only when listed in the query parameter; any not listed are omitted from the response entirely.
applicationbudgetbidscreativePacksincludeFieldsCode samples for "Get campaigns for an organization":
Request example
curl -X GET \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/campaigns"
Response example
{ "items": [ { "id": "abc123def456ghi789jkl012", "applicationId": "550e8400-e29b-41d4-a716-446655440000", "name": "Clash of Clans Campaign", "billingType": "cpi", "postInstallWindow": "D7", "optimizationType": "appEventConversion", "roasType": "iap", "appEventType": "purchase", "autoFilling": false, "sdkEventNames": [ "purchase", "level_complete" ], "blocklistSources": [ "string" ], "allowlistSources": [ "string" ], "bidConfigurationMethod": "manual", "budgetPacingType": "DISCOUNTED", "forcePausedEnabled": true, "forcePauseReason": "manual", "apptopiaSourceCategoriesAllowlist": [ "string" ], "apptopiaSourceCategoriesBlocklist": [ "string" ], "sensorTowerSourceCategoriesAllowlist": [ "string" ], "sensorTowerSourceCategoriesBlocklist": [ "string" ], "allowlistCountrySubdivisions": [ { "country": "US", "subdivisions": [ 1, 2, 3 ] } ], "isCreativeTesting": false, "isNonCoppaOnly": false, "paused": true, "start": "2024-01-01T00:00:00.000Z", "end": "2025-01-01T00:00:00.000Z", "autoStart": "ENABLED", "isAutoEligible": true, "createdAt": "2024-01-01T00:00:00.000Z", "updatedAt": "2024-01-15T00:00:00.000Z", "lastStartedAt": "2025-01-01T00:00:00.000Z", "editorId": "editor-123", "correlationId": "corr-456", "attribution": { "clickUrl": "https://app.adjust.com/abc123", "startUrl": "https://app.adjust.com/start/abc123", "viewUrl": "https://app.adjust.com/view/abc123", "partner": "adjust", "type": "userLevel", "isMMPAttributionDisabled": false }, "deviceTargeting": { "apple": { "deviceBlocklist": [ "iPhone6,1", "iPhone6,2" ], "osMinVersion": "14.0" }, "android": { "manufacturerAllowlist": [ "Samsung", "Google" ], "manufacturerBlocklist": [ "Huawei" ], "modelBlocklist": [ "SM-G950U" ], "osMinVersion": "10.0" } }, "application": { "id": "app-uuid", "name": "My Game", "advertiserGameId": 1234567890, "storeId": "com.example.game", "store": "AppleAppStore", "platform": "iOS", "iconUrl": "https://example.com/icon.png" }, "manualBids": [ { "country": "US", "bid": "1000000" } ], "manualSourceBids": [ { "bid": "1000000", "country": "US", "sourceAppId": "a1b2c3d4e5f6" } ], "appEventBids": [ { "country": "US", "bid": "1000000" } ], "roasBids": [ { "country": "US", "maxBid": "2000000", "target": 1.5 } ], "retentionBids": [ { "country": "US", "bid": "1000000", "maxBid": "2000000" } ], "budget": { "campaignLimitType": "total", "pacingType": "THROTTLED", "dailyLimitType": "daily", "total": "1000000000", "daily": "100000000", "countryGroupDailyLimits": [ { "countries": null, "limit": null, "name": null } ] }, "creativePackIds": [ "abc123def456ghi789jkl012" ] } ], "meta": { "total": 100, "limit": 100, "offset": 0 }}
Get app event eligibility for an organization
Returns eligible app events and their post-install windows for the specified organization
Code samples for "Get app event eligibility for an organization":
Request example
curl -X GET \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/eligibility"
Response example
{ "total": 2, "results": [ { "eventOptimizationType": "level_complete", "countries": [ "US", "GB" ] } ]}
Get SDK event names for applications
Returns available SDK event names for specified application
Code samples for "Get SDK event names for applications":
Request example
curl -X GET \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/sdk-event-names"
Response example
{ "total": 1, "results": [ { "eventOptimizationType": "levelComplete", "sdkEventNames": [ "level_complete_01", "level_complete_02" ] } ]}
Get creative packs
Returns a paginated list of creative packs for the specified application
Code samples for "Get creative packs":
Request example
curl -X GET \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/creative-packs"
Response example
{ "total": 42, "offset": 0, "limit": 700, "results": [ { "id": "abc123def456ghi789jkl012", "applicationId": "12345678-1234-1234-1234-123456789012", "name": "Summer Campaign Creatives", "type": "video", "appleProductPageId": "12345678-1234-1234-1234-123456789012", "androidStoreListing": "summer-listing", "moderationStatus": "approved", "ageRating": 18, "creativeIds": [ "crt_abc123xyz456def7890ghij" ], "createdAt": "2024-01-01T00:00:00.000Z", "updatedAt": "2024-01-01T00:00:00.000Z", "assignedCampaignIds": [ "abc123def456ghi789jkl012", "abc123def456ghi789jkl013" ] } ]}
Create a creative pack
Creates a new creative pack for the specified application. Each pack type requires a specific combination of creatives:
- : 1-2 video creatives and exactly 1 end card creative
video - : 1-2 playable creatives
playable - : 1-2 video creatives and exactly 1 responsive playable creative
video+playable - : 1-10 banner creatives
banner
When a pack includes 2 video or 2 playable creatives, one must be landscape and one portrait.
Code samples for "Create a creative pack":
Request example
curl -X POST \ -H "Content-Type: application/json" \ -d '{ "name": "Summer Campaign Creatives", "appleProductPageId": "12345678-1234-1234-1234-123456789012", "androidStoreListing": "summer-listing", "type": "video", "creativeIds": [ "crt_abc123xyz456def7890ghij", "crt_endcard123xyz456def7890g" ]}' \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/creative-packs"
Response example
{ "id": "abc123def456ghi789jkl012", "applicationId": "12345678-1234-1234-1234-123456789012", "name": "Summer Campaign Creatives", "type": "video", "appleProductPageId": "12345678-1234-1234-1234-123456789012", "androidStoreListing": "summer-listing", "moderationStatus": "approved", "ageRating": 18, "creativeIds": [ "crt_abc123xyz456def7890ghij" ], "createdAt": "2024-01-01T00:00:00.000Z", "updatedAt": "2024-01-01T00:00:00.000Z", "assignedCampaignIds": [ "abc123def456ghi789jkl012", "abc123def456ghi789jkl013" ]}
Get a creative pack by ID
Returns detailed information about a specific creative pack
Code samples for "Get a creative pack by ID":
Request example
curl -X GET \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/creative-packs/{creativePackId}"
Response example
{ "id": "abc123def456ghi789jkl012", "applicationId": "12345678-1234-1234-1234-123456789012", "name": "Summer Campaign Creatives", "type": "video", "appleProductPageId": "12345678-1234-1234-1234-123456789012", "androidStoreListing": "summer-listing", "moderationStatus": "approved", "ageRating": 18, "creativeIds": [ "crt_abc123xyz456def7890ghij" ], "createdAt": "2024-01-01T00:00:00.000Z", "updatedAt": "2024-01-01T00:00:00.000Z", "assignedCampaignIds": [ "abc123def456ghi789jkl012", "abc123def456ghi789jkl013" ]}
Update a creative pack
Updates the name and store page info for the specified creative pack
Code samples for "Update a creative pack":
Request example
curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "name": "Summer Campaign Creatives", "appleProductPageId": "12345678-1234-1234-1234-123456789012", "androidStoreListing": "summer-listing"}' \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/creative-packs/{creativePackId}"
Response example
{ "id": "abc123def456ghi789jkl012", "applicationId": "12345678-1234-1234-1234-123456789012", "name": "Summer Campaign Creatives", "type": "video", "appleProductPageId": "12345678-1234-1234-1234-123456789012", "androidStoreListing": "summer-listing", "moderationStatus": "approved", "ageRating": 18, "creativeIds": [ "crt_abc123xyz456def7890ghij" ], "createdAt": "2024-01-01T00:00:00.000Z", "updatedAt": "2024-01-01T00:00:00.000Z", "assignedCampaignIds": [ "abc123def456ghi789jkl012", "abc123def456ghi789jkl013" ]}
Get application attribution
Returns the attribution configuration for the specified application
Code samples for "Get application attribution":
Request example
curl -X GET \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/attribution"
Response example
{ "id": "550e8400-e29b-41d4-a716-446655440000", "startUrl": "https://app.adjust.com/start/abc123", "clickUrl": "https://app.adjust.com/abc123", "viewUrl": "https://app.adjust.com/view/abc123", "partner": "adjust", "type": "userLevel", "createdAt": "2026-04-21T12:34:56.000Z", "updatedAt": "2026-04-21T13:00:00.000Z"}
Update application attribution
Updates the attribution URLs for the specified application
Code samples for "Update application attribution":
Request example
curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "startUrl": "https://app.adjust.com/start/abc123", "clickUrl": "https://app.adjust.com/abc123", "viewUrl": "https://app.adjust.com/view/abc123"}' \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}/attribution"
Response example
{ "id": "550e8400-e29b-41d4-a716-446655440000", "startUrl": "https://app.adjust.com/start/abc123", "clickUrl": "https://app.adjust.com/abc123", "viewUrl": "https://app.adjust.com/view/abc123", "partner": "adjust", "type": "userLevel", "createdAt": "2026-04-21T12:34:56.000Z", "updatedAt": "2026-04-21T13:00:00.000Z"}
Get applications for an organization
Returns all applications associated with a specific organization
Code samples for "Get applications for an organization":
Request example
curl -X GET \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications"
Response example
[ { "id": "550e8400-e29b-41d4-a716-446655440000", "name": "My Game App", "gameId": 12345, "platform": "iOS", "iconUrl": "https://example.com/icon.png", "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8", "storeId": "com.example.app", "store": "AppleAppStore", "testMode": "forceAll", "kidsSettings": false, "coppa": false, "mixedAudience": false }]
Create an application
Creates a new application for a specific organization
Query parameters for "Create an application"
Dry-run mode. When , the request is fully validated but no changes are persisted (DB writes are rolled back and external calls are skipped). The response echoes the would-be result with an header. For application create/update, dry-run validates the request and business rules only — it does not reserve names or guarantee downstream acceptance.
truex-dry-run: trueCode samples for "Create an application":
Request example
curl -X POST \ -H "Content-Type: application/json" \ -d '{ "name": "string", "platform": "string", "iconUrl": "https://example.com", "storeId": "string", "store": "string", "privacy": { "coppa": true, "mixedAudience": true }, "projectId": "string", "projectName": "string"}' \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications"
Response example
{ "id": "550e8400-e29b-41d4-a716-446655440000", "name": "My Game App", "gameId": 12345, "platform": "iOS", "iconUrl": "https://example.com/icon.png", "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8", "storeId": "com.example.app", "store": "AppleAppStore", "testMode": "forceAll", "kidsSettings": false, "coppa": false, "mixedAudience": false}
Get an application by ID
Returns application metadata for a specific application within an organization
Code samples for "Get an application by ID":
Request example
curl -X GET \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}"
Response example
{ "id": "550e8400-e29b-41d4-a716-446655440000", "name": "My Game App", "gameId": 12345, "platform": "iOS", "iconUrl": "https://example.com/icon.png", "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8", "storeId": "com.example.app", "store": "AppleAppStore", "testMode": "forceAll", "kidsSettings": false, "coppa": false, "mixedAudience": false}
Update an application
Updates an existing application for a specific organization (partial update)
Query parameters for "Update an application"
Dry-run mode. When , the request is fully validated but no changes are persisted (DB writes are rolled back and external calls are skipped). The response echoes the would-be result with an header. For application create/update, dry-run validates the request and business rules only — it does not reserve names or guarantee downstream acceptance.
truex-dry-run: trueCode samples for "Update an application":
Request example
curl -X PATCH \ -H "Content-Type: application/json" \ -d '{ "name": "string", "storeId": "string", "store": "string", "privacy": { "coppa": true, "mixedAudience": true }, "kidsSettings": true}' \ "https://services.api.unity.com/ads/advertiser/public/v1/organizations/{organizationId}/applications/{applicationId}"
Response example
{ "id": "550e8400-e29b-41d4-a716-446655440000", "name": "My Game App", "gameId": 12345, "platform": "iOS", "iconUrl": "https://example.com/icon.png", "projectId": "5a8591dd-4039-49df-9202-96385ba3eff8", "storeId": "com.example.app", "store": "AppleAppStore", "testMode": "forceAll", "kidsSettings": false, "coppa": false, "mixedAudience": false}