Mark Creatives Launched
Report the creatives a platform put live, by Kumquat id or by canonical name: each gets its
launched_at stamped, its ad_id recorded if the call carries one, and, if nobody has tested
it yet, its test started.
Never a 404 — a batch is reported as a whole, so a creative Kumquat does not know is
not_found in its own row while the rest are recorded. Replays are safe: a creative that
already carries a launched_at keeps it and comes back already_launched, its ad_id set to
the reported one if the call carries one.
POST
/api/v1/integrations/creative-tests/creatives/launchedAuthorization
AuthorizationBearer token · headerrequiredStatic token issued to an integrating platform (INTEGRATIONS__TOKENS)
Request body
requiredapplication/jsoncreativesLaunchedCreative[]requiredmin items 1 · max items 500
Show propertiesHide properties
Array of
LaunchedCreativeidstring | anyShow propertiesHide properties
Any of:
string
stringany
anynamestring | anyShow propertiesHide properties
Any of:
string
stringany
anylaunched_atstring<date-time> | anywhen it went live; defaults to the time this call is served
Show propertiesHide properties
Any of:
string<date-time>
string<date-time>any
anyad_idstring | anythe ad account's id for the campaign this creative went live in. Recorded once: a creative that already carries one keeps it, and a creative reported without one takes it from a later report.
Show propertiesHide properties
Any of:
string
stringany
anyResponses
200Successful Response
Array of
LaunchedResultidstring | anyShow propertiesHide properties
Any of:
string
stringany
anynamestring | anyShow propertiesHide properties
Any of:
string
stringany
anystatusLaunchOutcomerequiredWhat `mark_launched` did — the launching platform gets one of these per creative it named.
Allowed:
launchedalready_launchednot_foundlaunched_atstring<date-time> | anyShow propertiesHide properties
Any of:
string<date-time>
string<date-time>any
anytest_statusTestStatus | anyShow propertiesHide properties
Any of:
TestStatus
stringany
anyad_idstring | anyShow propertiesHide properties
Any of:
string
stringany
any422Validation Error
detailValidationError[]Show propertiesHide properties
Array of
ValidationErrorlocstring | integer[]requiredShow propertiesHide properties
Array of
string | integerAny of:
string
stringinteger
integermsgstringrequiredtypestringrequiredinputanyctxobjectRequest
curl -X POST "/api/v1/integrations/creative-tests/creatives/launched" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"creatives": [
{
"id": "string",
"name": "string",
"launched_at": "2019-08-24T14:15:22Z",
"ad_id": "string"
}
]
}'const response = await fetch("/api/v1/integrations/creative-tests/creatives/launched", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_TOKEN",
"Content-Type": "application/json"
},
body: JSON.stringify({
"creatives": [
{
"id": "string",
"name": "string",
"launched_at": "2019-08-24T14:15:22Z",
"ad_id": "string"
}
]
})
});import requests
response = requests.post(
"/api/v1/integrations/creative-tests/creatives/launched",
headers={
"Authorization": "Bearer YOUR_TOKEN",
"Content-Type": "application/json"
},
json={
"creatives": [
{
"id": "string",
"name": "string",
"launched_at": "2019-08-24T14:15:22Z",
"ad_id": "string"
}
]
},
)Response
[
{
"id": "string",
"name": "string",
"status": "launched",
"launched_at": "2019-08-24T14:15:22Z",
"test_status": "not_tested",
"ad_id": "string"
}
]{
"detail": [
{
"loc": [
"string"
],
"msg": "string",
"type": "string",
"input": null,
"ctx": {}
}
]
}