Add ads
Creates 1-100 ads, each under its own adsetNodeId, optionally attaching a creativeId and a copyGenerationId in the same request. Partial success is possible: unknown ad sets are returned in notFound and per-ad errors in failed, while the rest are created.
bearerAuthAuthorizationBearer <token>An organization API key (koast_sk_…) with the API surface enabled, or an OAuth access token issued by Koast (koast_at_…) whose audience covers this API. REST access requires an active Agency plan.
brandId*integerThe brand the request acts on. Every brand-scoped resource lives under its brand.
launchId*stringThe campaign launch (batch) id.
Idempotency-Key?stringRetrying with the same key within 24 hours returns the first response without acting again.
length <= 255application/json- body
ads*array<>Ads to create (1-100). Each entry targets a specific adsetNodeId with optional creativeId and copyGenerationId.
1 <= items <= 100Add ads
application/json- response
[key: string]?unknowncurl -X POST "https://example.com/v1/brands/0/launches/string/ads" \ -H "Authorization: Bearer koast_sk_..." \ -H "Content-Type: application/json" \ -d '{ "ads": [ { "adsetNodeId": "string" } ] }'{ "property1": null, "property2": null}Required scope: write. CLI: koast add-ads, see Launches commands. Authentication, headers, errors and pagination work the same on every operation. See Conventions.