Privacyvoorkeuren

Noodzakelijke functies

Vereist voor beveiliging en de basisfuncties van de website.

Altijd actief

Landing-diagnostiek en gemaskeerde replay

Meet openbare bezoeken, afhaken en interacties met registratielinks met een anonieme ID die alleen voor dit tabblad geldt, zonder accountkoppeling. Alle tekst wordt gemaskeerd en formulieren worden geblokkeerd.

Optionele gebruiksanalyse

PostHog-gebruiksanalyse toestaan? Je kunt je keuze altijd in de voettekst wijzigen.

Ook sessiereplay op deze openbare website toestaan

Replay in de optionele modus voor meerdere sites toont openbare pagina’s en interacties, waarbij invoer en privé-inhoud worden gemaskeerd. App-replay is een afzonderlijke keuze.

Vereist optionele analyse; replay in deze modus voor meerdere sites staat standaard uit. De Landing-modus hierboven werkt apart.

Browseranalyses schakelen accountanalyses niet in.

Zoeken wordt pas geladen wanneer je het gebruikt. Bekijk hieronder alle categorieën.

Adverteren

Advertentieactie afstemmen

Lees de exacte onbekende advertentiebewerking opnieuw zonder deze opnieuw te verzenden. De waarneming van de gewenste status blijft losstaan van de oorspronkelijke platformuitkomst.

POST /advertising-api/actions/reconcile

Contract beoordeeld: · sha256:9aedef8d43dd4514

Overzicht

Lees de exacte onbekende advertentiebewerking opnieuw zonder deze opnieuw te verzenden. De waarneming van de gewenste status blijft losstaan van de oorspronkelijke platformuitkomst.

Een geslaagd HTTP-antwoord kan acceptatie betekenen in plaats van voltooiing. Bewaar bij achtergrondwerk de teruggegeven ID en controleer dezelfde bewerking totdat die klaar is. Een ingepland of geaccepteerd bericht is pas gepubliceerd na platformbevestiging; een client-time-out bepaalt het resultaat niet.

Authenticatie en machtigingen

Toegestane soorten inloggegevens
user_session, delegated_oauth, personal_access_token
Gedelegeerde bevoegdheid
agent:advertising_manage
Minimale werkruimterol
editor
Toegangsbereik
Resources waartoe deze gebruiker toegang heeft
Toestemming voor alle werkruimten vereist
Nee
Wijzigt status
Ja
Wanneer de bewerking voltooid is
synchronous_http_response

Een token kan alleen rechten van de eigenaar gebruiken. Elk verzoek controleert werkruimtelidmaatschap, resource-eigendom, geselecteerde werkruimten en verleende bevoegdheden. De profielen core en full bepalen welke tools zichtbaar zijn; ze verlenen geen toegang.

Verzoekvelden

Verplicht betekent verplicht binnen het bovenliggende object en de gekozen variant. Een verplicht onderliggend veld maakt een optioneel bovenliggend object niet verplicht. Onderstaande regels en veldnamen zijn uit het contract gekopieerd.

Verzoekvelden
Veld / variantType / verplichtBeperkingen
$objectVerplicht in bovenliggend object
  • additionalProperties: false
workspace_idstringVerplicht in bovenliggend object
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
action_idstringVerplicht in bovenliggend object
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
candidate_provider_idstringOptioneel / item
  • pattern: "^[1-9]\\d{1,24}$"
Volledig JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "workspace_id": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "action_id": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "candidate_provider_id": {
      "type": "string",
      "pattern": "^[1-9]\\d{1,24}$"
    }
  },
  "required": [
    "workspace_id",
    "action_id"
  ],
  "additionalProperties": false
}

Antwoord en voltooiing

HTTP-statuscodes bij succes: 200. Wanneer de bewerking voltooid is: synchronous_http_response.

Een geslaagd HTTP-antwoord kan acceptatie betekenen in plaats van voltooiing. Bewaar bij achtergrondwerk de teruggegeven ID en controleer dezelfde bewerking totdat die klaar is. Een ingepland of geaccepteerd bericht is pas gepubliceerd na platformbevestiging; een client-time-out bepaalt het resultaat niet.

Verplicht betekent verplicht binnen het bovenliggende object en de gekozen variant. Een verplicht onderliggend veld maakt een optioneel bovenliggend object niet verplicht. Onderstaande regels en veldnamen zijn uit het contract gekopieerd.

Antwoord en voltooiing
Veld / variantType / verplichtBeperkingen
$objectVerplicht in bovenliggend object—
contract_versionstringVerplicht in bovenliggend object
  • const: "advertising/v1"
actionobjectVerplicht in bovenliggend object—
action.idstringVerplicht in bovenliggend object
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
action.workspace_idstringVerplicht in bovenliggend object
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
action.advertising_account_idstringVerplicht in bovenliggend object
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
action.mutation_idstringVerplicht in bovenliggend object
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
action.statusstringVerplicht in bovenliggend object
  • enum: ["prepared","queued","processing","succeeded","failed","unknown","cancelled"]
action.commandobjectVerplicht in bovenliggend object—
action.commandoneOf 1objectVerplicht in bovenliggend object—
action.command.operationoneOf 1stringVerplicht in bovenliggend object
  • const: "create_campaign"
action.command.nameoneOf 1stringVerplicht in bovenliggend object
  • minLength: 1
  • maxLength: 200
action.command.budgetoneOf 1objectOptioneel / item—
action.command.budget.kindoneOf 1stringVerplicht in bovenliggend object
  • enum: ["daily","lifetime"]
action.command.budget.amount_minoroneOf 1stringVerplicht in bovenliggend object
  • pattern: "^[1-9]\\d{0,11}$"
action.command.objectiveoneOf 1stringVerplicht in bovenliggend object
  • enum: ["OUTCOME_AWARENESS","OUTCOME_ENGAGEMENT","OUTCOME_LEADS","OUTCOME_SALES","OUTCOME_TRAFFIC","OUTCOME_APP_PROMOTION"]
action.command.special_ad_categoriesoneOf 1arrayVerplicht in bovenliggend object
  • maxItems: 4
  • default: []
action.command.special_ad_categories[]oneOf 1stringOptioneel / item
  • enum: ["CREDIT","EMPLOYMENT","HOUSING","ISSUES_ELECTIONS_POLITICS"]
action.command.statusoneOf 1stringVerplicht in bovenliggend object
  • const: "PAUSED"
  • default: "PAUSED"
action.commandoneOf 2objectVerplicht in bovenliggend object—
action.command.operationoneOf 2stringVerplicht in bovenliggend object
  • const: "update_campaign"
action.command.object_idoneOf 2stringVerplicht in bovenliggend object
  • pattern: "^[1-9]\\d{1,24}$"
action.command.nameoneOf 2stringOptioneel / item
  • minLength: 1
  • maxLength: 200
action.command.budgetoneOf 2objectOptioneel / item—
action.command.budget.kindoneOf 2stringVerplicht in bovenliggend object
  • enum: ["daily","lifetime"]
action.command.budget.amount_minoroneOf 2stringVerplicht in bovenliggend object
  • pattern: "^[1-9]\\d{0,11}$"
action.command.statusoneOf 2stringOptioneel / item
  • enum: ["ACTIVE","PAUSED","ARCHIVED"]
action.commandoneOf 3objectVerplicht in bovenliggend object—
action.command.operationoneOf 3stringVerplicht in bovenliggend object
  • const: "create_adset"
action.command.campaign_idoneOf 3stringVerplicht in bovenliggend object
  • pattern: "^[1-9]\\d{1,24}$"
action.command.nameoneOf 3stringVerplicht in bovenliggend object
  • minLength: 1
  • maxLength: 200
action.command.budgetoneOf 3objectOptioneel / item—
action.command.budget.kindoneOf 3stringVerplicht in bovenliggend object
  • enum: ["daily","lifetime"]
action.command.budget.amount_minoroneOf 3stringVerplicht in bovenliggend object
  • pattern: "^[1-9]\\d{0,11}$"
action.command.targetingoneOf 3objectVerplicht in bovenliggend object—
action.command.targeting.geo_locationsoneOf 3objectVerplicht in bovenliggend object—
action.command.targeting.geo_locations.countriesoneOf 3arrayVerplicht in bovenliggend object
  • minItems: 1
  • maxItems: 25
action.command.targeting.geo_locations.countries[]oneOf 3stringOptioneel / item
  • pattern: "^[A-Z]{2}$"
action.command.targeting.age_minoneOf 3integerVerplicht in bovenliggend object
  • minimum: 18
  • maximum: 65
  • default: 18
action.command.targeting.age_maxoneOf 3integerVerplicht in bovenliggend object
  • minimum: 18
  • maximum: 65
  • default: 65
action.command.targeting.gendersoneOf 3arrayOptioneel / item
  • minItems: 1
  • maxItems: 2
action.command.targeting.genders[]oneOf 3numberOptioneel / item—
action.command.targeting.genders[]oneOf 3 / anyOf 1numberOptioneel / item
  • const: 1
action.command.targeting.genders[]oneOf 3 / anyOf 2numberOptioneel / item
  • const: 2
action.command.targeting.localesoneOf 3arrayOptioneel / item
  • maxItems: 25
action.command.targeting.locales[]oneOf 3integerOptioneel / item
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
action.command.targeting.publisher_platformsoneOf 3arrayVerplicht in bovenliggend object
  • minItems: 1
  • maxItems: 3
action.command.targeting.publisher_platforms[]oneOf 3stringOptioneel / item
  • enum: ["facebook","instagram","threads"]
action.command.targeting.facebook_positionsoneOf 3arrayOptioneel / item
  • maxItems: 4
action.command.targeting.facebook_positions[]oneOf 3stringOptioneel / item
  • enum: ["feed","story","facebook_reels","video_feeds"]
action.command.targeting.instagram_positionsoneOf 3arrayOptioneel / item
  • maxItems: 4
action.command.targeting.instagram_positions[]oneOf 3stringOptioneel / item
  • enum: ["stream","story","reels","explore"]
action.command.targeting.threads_positionsoneOf 3arrayOptioneel / item
  • maxItems: 1
action.command.targeting.threads_positions[]oneOf 3stringOptioneel / item
  • const: "threads_stream"
action.command.targeting.custom_audience_idsoneOf 3arrayOptioneel / item
  • maxItems: 4
action.command.targeting.custom_audience_ids[]oneOf 3stringOptioneel / item
  • pattern: "^[1-9]\\d{1,24}$"
action.command.targeting.excluded_custom_audience_idsoneOf 3arrayOptioneel / item
  • maxItems: 4
action.command.targeting.excluded_custom_audience_ids[]oneOf 3stringOptioneel / item
  • pattern: "^[1-9]\\d{1,24}$"
action.command.billing_eventoneOf 3stringVerplicht in bovenliggend object
  • enum: ["IMPRESSIONS","LINK_CLICKS"]
action.command.optimization_goaloneOf 3stringVerplicht in bovenliggend object
  • enum: ["REACH","IMPRESSIONS","LINK_CLICKS","LANDING_PAGE_VIEWS","OFFSITE_CONVERSIONS","LEAD_GENERATION"]
action.command.bid_strategyoneOf 3stringVerplicht in bovenliggend object
  • const: "LOWEST_COST_WITHOUT_CAP"
  • default: "LOWEST_COST_WITHOUT_CAP"
action.command.start_timeoneOf 3stringOptioneel / item
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
action.command.end_timeoneOf 3stringOptioneel / item
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
action.command.promoted_objectoneOf 3objectOptioneel / item—
action.command.promoted_object.page_idoneOf 3stringOptioneel / item
  • pattern: "^[1-9]\\d{1,24}$"
action.command.promoted_object.pixel_idoneOf 3stringOptioneel / item
  • pattern: "^[1-9]\\d{1,24}$"
action.command.promoted_object.custom_event_typeoneOf 3stringOptioneel / item
  • enum: ["PURCHASE","LEAD","COMPLETE_REGISTRATION","ADD_TO_CART"]
action.command.statusoneOf 3stringVerplicht in bovenliggend object
  • const: "PAUSED"
  • default: "PAUSED"
action.commandoneOf 4objectVerplicht in bovenliggend object—
action.command.operationoneOf 4stringVerplicht in bovenliggend object
  • const: "update_adset"
action.command.object_idoneOf 4stringVerplicht in bovenliggend object
  • pattern: "^[1-9]\\d{1,24}$"
action.command.nameoneOf 4stringOptioneel / item
  • minLength: 1
  • maxLength: 200
action.command.budgetoneOf 4objectOptioneel / item—
action.command.budget.kindoneOf 4stringVerplicht in bovenliggend object
  • enum: ["daily","lifetime"]
action.command.budget.amount_minoroneOf 4stringVerplicht in bovenliggend object
  • pattern: "^[1-9]\\d{0,11}$"
action.command.statusoneOf 4stringOptioneel / item
  • enum: ["ACTIVE","PAUSED","ARCHIVED"]
action.command.targetingoneOf 4objectOptioneel / item—
action.command.targeting.geo_locationsoneOf 4objectVerplicht in bovenliggend object—
action.command.targeting.geo_locations.countriesoneOf 4arrayVerplicht in bovenliggend object
  • minItems: 1
  • maxItems: 25
action.command.targeting.geo_locations.countries[]oneOf 4stringOptioneel / item
  • pattern: "^[A-Z]{2}$"
action.command.targeting.age_minoneOf 4integerVerplicht in bovenliggend object
  • minimum: 18
  • maximum: 65
  • default: 18
action.command.targeting.age_maxoneOf 4integerVerplicht in bovenliggend object
  • minimum: 18
  • maximum: 65
  • default: 65
action.command.targeting.gendersoneOf 4arrayOptioneel / item
  • minItems: 1
  • maxItems: 2
action.command.targeting.genders[]oneOf 4numberOptioneel / item—
action.command.targeting.genders[]oneOf 4 / anyOf 1numberOptioneel / item
  • const: 1
action.command.targeting.genders[]oneOf 4 / anyOf 2numberOptioneel / item
  • const: 2
action.command.targeting.localesoneOf 4arrayOptioneel / item
  • maxItems: 25
action.command.targeting.locales[]oneOf 4integerOptioneel / item
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
action.command.targeting.publisher_platformsoneOf 4arrayVerplicht in bovenliggend object
  • minItems: 1
  • maxItems: 3
action.command.targeting.publisher_platforms[]oneOf 4stringOptioneel / item
  • enum: ["facebook","instagram","threads"]
action.command.targeting.facebook_positionsoneOf 4arrayOptioneel / item
  • maxItems: 4
action.command.targeting.facebook_positions[]oneOf 4stringOptioneel / item
  • enum: ["feed","story","facebook_reels","video_feeds"]
action.command.targeting.instagram_positionsoneOf 4arrayOptioneel / item
  • maxItems: 4
action.command.targeting.instagram_positions[]oneOf 4stringOptioneel / item
  • enum: ["stream","story","reels","explore"]
action.command.targeting.threads_positionsoneOf 4arrayOptioneel / item
  • maxItems: 1
action.command.targeting.threads_positions[]oneOf 4stringOptioneel / item
  • const: "threads_stream"
action.command.targeting.custom_audience_idsoneOf 4arrayOptioneel / item
  • maxItems: 4
action.command.targeting.custom_audience_ids[]oneOf 4stringOptioneel / item
  • pattern: "^[1-9]\\d{1,24}$"
action.command.targeting.excluded_custom_audience_idsoneOf 4arrayOptioneel / item
  • maxItems: 4
action.command.targeting.excluded_custom_audience_ids[]oneOf 4stringOptioneel / item
  • pattern: "^[1-9]\\d{1,24}$"
action.command.start_timeoneOf 4stringOptioneel / item
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
action.command.end_timeoneOf 4stringOptioneel / item
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
action.commandoneOf 5objectVerplicht in bovenliggend object—
action.command.operationoneOf 5stringVerplicht in bovenliggend object
  • const: "create_ad"
action.command.nameoneOf 5stringVerplicht in bovenliggend object
  • minLength: 1
  • maxLength: 200
action.command.adset_idoneOf 5stringVerplicht in bovenliggend object
  • pattern: "^[1-9]\\d{1,24}$"
action.command.creative_idoneOf 5stringVerplicht in bovenliggend object
  • pattern: "^[1-9]\\d{1,24}$"
action.command.statusoneOf 5stringVerplicht in bovenliggend object
  • const: "PAUSED"
  • default: "PAUSED"
action.commandoneOf 6objectVerplicht in bovenliggend object—
action.command.operationoneOf 6stringVerplicht in bovenliggend object
  • const: "update_ad"
action.command.object_idoneOf 6stringVerplicht in bovenliggend object
  • pattern: "^[1-9]\\d{1,24}$"
action.command.nameoneOf 6stringOptioneel / item
  • minLength: 1
  • maxLength: 200
action.command.creative_idoneOf 6stringOptioneel / item
  • pattern: "^[1-9]\\d{1,24}$"
action.command.statusoneOf 6stringOptioneel / item
  • enum: ["ACTIVE","PAUSED","ARCHIVED"]
action.commandoneOf 7objectVerplicht in bovenliggend object—
action.command.operationoneOf 7stringVerplicht in bovenliggend object
  • const: "create_creative"
action.command.nameoneOf 7stringVerplicht in bovenliggend object
  • minLength: 1
  • maxLength: 200
action.command.object_story_speconeOf 7objectOptioneel / item—
action.command.object_story_spec.page_idoneOf 7stringVerplicht in bovenliggend object
  • pattern: "^[1-9]\\d{1,24}$"
action.command.object_story_spec.instagram_user_idoneOf 7stringOptioneel / item
  • pattern: "^[1-9]\\d{1,24}$"
action.command.object_story_spec.link_dataoneOf 7objectVerplicht in bovenliggend object—
action.command.object_story_spec.link_data.linkoneOf 7stringVerplicht in bovenliggend object
  • format: "uri"
  • maxLength: 2048
action.command.object_story_spec.link_data.messageoneOf 7stringVerplicht in bovenliggend object
  • maxLength: 5000
action.command.object_story_spec.link_data.nameoneOf 7stringOptioneel / item
  • minLength: 1
  • maxLength: 200
action.command.object_story_spec.link_data.image_hashoneOf 7stringVerplicht in bovenliggend object
  • pattern: "^[a-fA-F0-9]{16,128}$"
action.command.object_story_spec.link_data.call_to_actiononeOf 7stringOptioneel / item
  • enum: ["LEARN_MORE","SHOP_NOW","SIGN_UP","CONTACT_US"]
action.command.object_story_idoneOf 7stringOptioneel / item
  • pattern: "^[1-9]\\d{1,24}_[1-9]\\d{1,24}$"
action.commandoneOf 8objectVerplicht in bovenliggend object—
action.command.operationoneOf 8stringVerplicht in bovenliggend object
  • const: "create_saved_audience"
action.command.nameoneOf 8stringVerplicht in bovenliggend object
  • minLength: 1
  • maxLength: 200
action.command.targetingoneOf 8objectVerplicht in bovenliggend object—
action.command.targeting.geo_locationsoneOf 8objectVerplicht in bovenliggend object—
action.command.targeting.geo_locations.countriesoneOf 8arrayVerplicht in bovenliggend object
  • minItems: 1
  • maxItems: 25
action.command.targeting.geo_locations.countries[]oneOf 8stringOptioneel / item
  • pattern: "^[A-Z]{2}$"
action.command.targeting.age_minoneOf 8integerVerplicht in bovenliggend object
  • minimum: 18
  • maximum: 65
  • default: 18
action.command.targeting.age_maxoneOf 8integerVerplicht in bovenliggend object
  • minimum: 18
  • maximum: 65
  • default: 65
action.command.targeting.gendersoneOf 8arrayOptioneel / item
  • minItems: 1
  • maxItems: 2
action.command.targeting.genders[]oneOf 8numberOptioneel / item—
action.command.targeting.genders[]oneOf 8 / anyOf 1numberOptioneel / item
  • const: 1
action.command.targeting.genders[]oneOf 8 / anyOf 2numberOptioneel / item
  • const: 2
action.command.targeting.localesoneOf 8arrayOptioneel / item
  • maxItems: 25
action.command.targeting.locales[]oneOf 8integerOptioneel / item
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
action.command.targeting.publisher_platformsoneOf 8arrayVerplicht in bovenliggend object
  • minItems: 1
  • maxItems: 3
action.command.targeting.publisher_platforms[]oneOf 8stringOptioneel / item
  • enum: ["facebook","instagram","threads"]
action.command.targeting.facebook_positionsoneOf 8arrayOptioneel / item
  • maxItems: 4
action.command.targeting.facebook_positions[]oneOf 8stringOptioneel / item
  • enum: ["feed","story","facebook_reels","video_feeds"]
action.command.targeting.instagram_positionsoneOf 8arrayOptioneel / item
  • maxItems: 4
action.command.targeting.instagram_positions[]oneOf 8stringOptioneel / item
  • enum: ["stream","story","reels","explore"]
action.command.targeting.threads_positionsoneOf 8arrayOptioneel / item
  • maxItems: 1
action.command.targeting.threads_positions[]oneOf 8stringOptioneel / item
  • const: "threads_stream"
action.command.targeting.custom_audience_idsoneOf 8arrayOptioneel / item
  • maxItems: 4
action.command.targeting.custom_audience_ids[]oneOf 8stringOptioneel / item
  • pattern: "^[1-9]\\d{1,24}$"
action.command.targeting.excluded_custom_audience_idsoneOf 8arrayOptioneel / item
  • maxItems: 4
action.command.targeting.excluded_custom_audience_ids[]oneOf 8stringOptioneel / item
  • pattern: "^[1-9]\\d{1,24}$"
action.commandoneOf 9objectVerplicht in bovenliggend object—
action.command.operationoneOf 9stringVerplicht in bovenliggend object
  • const: "update_saved_audience"
action.command.object_idoneOf 9stringVerplicht in bovenliggend object
  • pattern: "^[1-9]\\d{1,24}$"
action.command.nameoneOf 9stringOptioneel / item
  • minLength: 1
  • maxLength: 200
action.command.targetingoneOf 9objectOptioneel / item—
action.command.targeting.geo_locationsoneOf 9objectVerplicht in bovenliggend object—
action.command.targeting.geo_locations.countriesoneOf 9arrayVerplicht in bovenliggend object
  • minItems: 1
  • maxItems: 25
action.command.targeting.geo_locations.countries[]oneOf 9stringOptioneel / item
  • pattern: "^[A-Z]{2}$"
action.command.targeting.age_minoneOf 9integerVerplicht in bovenliggend object
  • minimum: 18
  • maximum: 65
  • default: 18
action.command.targeting.age_maxoneOf 9integerVerplicht in bovenliggend object
  • minimum: 18
  • maximum: 65
  • default: 65
action.command.targeting.gendersoneOf 9arrayOptioneel / item
  • minItems: 1
  • maxItems: 2
action.command.targeting.genders[]oneOf 9numberOptioneel / item—
action.command.targeting.genders[]oneOf 9 / anyOf 1numberOptioneel / item
  • const: 1
action.command.targeting.genders[]oneOf 9 / anyOf 2numberOptioneel / item
  • const: 2
action.command.targeting.localesoneOf 9arrayOptioneel / item
  • maxItems: 25
action.command.targeting.locales[]oneOf 9integerOptioneel / item
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
action.command.targeting.publisher_platformsoneOf 9arrayVerplicht in bovenliggend object
  • minItems: 1
  • maxItems: 3
action.command.targeting.publisher_platforms[]oneOf 9stringOptioneel / item
  • enum: ["facebook","instagram","threads"]
action.command.targeting.facebook_positionsoneOf 9arrayOptioneel / item
  • maxItems: 4
action.command.targeting.facebook_positions[]oneOf 9stringOptioneel / item
  • enum: ["feed","story","facebook_reels","video_feeds"]
action.command.targeting.instagram_positionsoneOf 9arrayOptioneel / item
  • maxItems: 4
action.command.targeting.instagram_positions[]oneOf 9stringOptioneel / item
  • enum: ["stream","story","reels","explore"]
action.command.targeting.threads_positionsoneOf 9arrayOptioneel / item
  • maxItems: 1
action.command.targeting.threads_positions[]oneOf 9stringOptioneel / item
  • const: "threads_stream"
action.command.targeting.custom_audience_idsoneOf 9arrayOptioneel / item
  • maxItems: 4
action.command.targeting.custom_audience_ids[]oneOf 9stringOptioneel / item
  • pattern: "^[1-9]\\d{1,24}$"
action.command.targeting.excluded_custom_audience_idsoneOf 9arrayOptioneel / item
  • maxItems: 4
action.command.targeting.excluded_custom_audience_ids[]oneOf 9stringOptioneel / item
  • pattern: "^[1-9]\\d{1,24}$"
action.reviewed_digeststringVerplicht in bovenliggend object
  • pattern: "^[a-f0-9]{64}$"
action.effectsobjectVerplicht in bovenliggend object—
action.effects.creates_objectbooleanVerplicht in bovenliggend object—
action.effects.initial_statusstring | nullVerplicht in bovenliggend object—
action.effects.initial_statusanyOf 1stringVerplicht in bovenliggend object
  • const: "PAUSED"
action.effects.initial_statusanyOf 2nullVerplicht in bovenliggend object—
action.effects.activates_deliverybooleanVerplicht in bovenliggend object—
action.effects.changes_budgetbooleanVerplicht in bovenliggend object—
action.effects.changes_audiencebooleanVerplicht in bovenliggend object—
action.effects.changes_creativebooleanVerplicht in bovenliggend object—
action.effects.currencystringVerplicht in bovenliggend object
  • pattern: "^[A-Z]{3}$"
action.effects.timezonestringVerplicht in bovenliggend object
  • minLength: 1
  • maxLength: 100
action.effects.budgetobject | nullVerplicht in bovenliggend object—
action.effects.budgetanyOf 1objectVerplicht in bovenliggend object—
action.effects.budget.kindanyOf 1stringVerplicht in bovenliggend object
  • enum: ["daily","lifetime"]
action.effects.budget.amount_minoranyOf 1stringVerplicht in bovenliggend object
  • pattern: "^[1-9]\\d{0,11}$"
action.effects.budgetanyOf 2nullVerplicht in bovenliggend object—
action.live_approvalobjectVerplicht in bovenliggend object—
action.live_approval.requiredbooleanVerplicht in bovenliggend object—
action.live_approval.statestringVerplicht in bovenliggend object
  • enum: ["not_required","missing","approved","expired","revoked","invalid"]
action.live_approval.reasonstring | nullVerplicht in bovenliggend object—
action.live_approval.reasonanyOf 1stringVerplicht in bovenliggend object
  • maxLength: 100
action.live_approval.reasonanyOf 2nullVerplicht in bovenliggend object—
action.live_approval.expires_atstring | nullVerplicht in bovenliggend object—
action.live_approval.expires_atanyOf 1stringVerplicht in bovenliggend object
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
action.live_approval.expires_atanyOf 2nullVerplicht in bovenliggend object—
action.live_approval.approved_bystring | nullVerplicht in bovenliggend object—
action.live_approval.approved_byanyOf 1stringVerplicht in bovenliggend object
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
action.live_approval.approved_byanyOf 2nullVerplicht in bovenliggend object—
action.provider_object_idstring | nullVerplicht in bovenliggend object—
action.provider_object_idanyOf 1stringVerplicht in bovenliggend object
  • pattern: "^[1-9]\\d{1,24}$"
action.provider_object_idanyOf 2nullVerplicht in bovenliggend object—
action.failure_codestring | nullVerplicht in bovenliggend object—
action.failure_codeanyOf 1stringVerplicht in bovenliggend object
  • maxLength: 100
action.failure_codeanyOf 2nullVerplicht in bovenliggend object—
action.created_atstringVerplicht in bovenliggend object
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
action.completed_atstring | nullVerplicht in bovenliggend object—
action.completed_atanyOf 1stringVerplicht in bovenliggend object
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
action.completed_atanyOf 2nullVerplicht in bovenliggend object—
resultstringVerplicht in bovenliggend object
  • enum: ["desired_state_observed","unresolved"]
provider_object_idstring | nullVerplicht in bovenliggend object—
provider_object_idanyOf 1stringVerplicht in bovenliggend object
  • pattern: "^[1-9]\\d{1,24}$"
provider_object_idanyOf 2nullVerplicht in bovenliggend object—
observed_atstringVerplicht in bovenliggend object
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
Volledig JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "contract_version": {
      "type": "string",
      "const": "advertising/v1"
    },
    "action": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "format": "uuid",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
        },
        "workspace_id": {
          "type": "string",
          "format": "uuid",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
        },
        "advertising_account_id": {
          "type": "string",
          "format": "uuid",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
        },
        "mutation_id": {
          "type": "string",
          "format": "uuid",
          "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
        },
        "status": {
          "type": "string",
          "enum": [
            "prepared",
            "queued",
            "processing",
            "succeeded",
            "failed",
            "unknown",
            "cancelled"
          ]
        },
        "command": {
          "oneOf": [
            {
              "type": "object",
              "properties": {
                "operation": {
                  "type": "string",
                  "const": "create_campaign"
                },
                "name": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                },
                "budget": {
                  "type": "object",
                  "properties": {
                    "kind": {
                      "type": "string",
                      "enum": [
                        "daily",
                        "lifetime"
                      ]
                    },
                    "amount_minor": {
                      "type": "string",
                      "pattern": "^[1-9]\\d{0,11}$"
                    }
                  },
                  "required": [
                    "kind",
                    "amount_minor"
                  ]
                },
                "objective": {
                  "type": "string",
                  "enum": [
                    "OUTCOME_AWARENESS",
                    "OUTCOME_ENGAGEMENT",
                    "OUTCOME_LEADS",
                    "OUTCOME_SALES",
                    "OUTCOME_TRAFFIC",
                    "OUTCOME_APP_PROMOTION"
                  ]
                },
                "special_ad_categories": {
                  "default": [],
                  "maxItems": 4,
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "CREDIT",
                      "EMPLOYMENT",
                      "HOUSING",
                      "ISSUES_ELECTIONS_POLITICS"
                    ]
                  }
                },
                "status": {
                  "default": "PAUSED",
                  "type": "string",
                  "const": "PAUSED"
                }
              },
              "required": [
                "operation",
                "name",
                "objective",
                "special_ad_categories",
                "status"
              ]
            },
            {
              "type": "object",
              "properties": {
                "operation": {
                  "type": "string",
                  "const": "update_campaign"
                },
                "object_id": {
                  "type": "string",
                  "pattern": "^[1-9]\\d{1,24}$"
                },
                "name": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                },
                "budget": {
                  "type": "object",
                  "properties": {
                    "kind": {
                      "type": "string",
                      "enum": [
                        "daily",
                        "lifetime"
                      ]
                    },
                    "amount_minor": {
                      "type": "string",
                      "pattern": "^[1-9]\\d{0,11}$"
                    }
                  },
                  "required": [
                    "kind",
                    "amount_minor"
                  ]
                },
                "status": {
                  "type": "string",
                  "enum": [
                    "ACTIVE",
                    "PAUSED",
                    "ARCHIVED"
                  ]
                }
              },
              "required": [
                "operation",
                "object_id"
              ]
            },
            {
              "type": "object",
              "properties": {
                "operation": {
                  "type": "string",
                  "const": "create_adset"
                },
                "campaign_id": {
                  "type": "string",
                  "pattern": "^[1-9]\\d{1,24}$"
                },
                "name": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                },
                "budget": {
                  "type": "object",
                  "properties": {
                    "kind": {
                      "type": "string",
                      "enum": [
                        "daily",
                        "lifetime"
                      ]
                    },
                    "amount_minor": {
                      "type": "string",
                      "pattern": "^[1-9]\\d{0,11}$"
                    }
                  },
                  "required": [
                    "kind",
                    "amount_minor"
                  ]
                },
                "targeting": {
                  "type": "object",
                  "properties": {
                    "geo_locations": {
                      "type": "object",
                      "properties": {
                        "countries": {
                          "minItems": 1,
                          "maxItems": 25,
                          "type": "array",
                          "items": {
                            "type": "string",
                            "pattern": "^[A-Z]{2}$"
                          }
                        }
                      },
                      "required": [
                        "countries"
                      ]
                    },
                    "age_min": {
                      "default": 18,
                      "type": "integer",
                      "minimum": 18,
                      "maximum": 65
                    },
                    "age_max": {
                      "default": 65,
                      "type": "integer",
                      "minimum": 18,
                      "maximum": 65
                    },
                    "genders": {
                      "minItems": 1,
                      "maxItems": 2,
                      "type": "array",
                      "items": {
                        "anyOf": [
                          {
                            "type": "number",
                            "const": 1
                          },
                          {
                            "type": "number",
                            "const": 2
                          }
                        ]
                      }
                    },
                    "locales": {
                      "maxItems": 25,
                      "type": "array",
                      "items": {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      }
                    },
                    "publisher_platforms": {
                      "minItems": 1,
                      "maxItems": 3,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "facebook",
                          "instagram",
                          "threads"
                        ]
                      }
                    },
                    "facebook_positions": {
                      "maxItems": 4,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "feed",
                          "story",
                          "facebook_reels",
                          "video_feeds"
                        ]
                      }
                    },
                    "instagram_positions": {
                      "maxItems": 4,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "stream",
                          "story",
                          "reels",
                          "explore"
                        ]
                      }
                    },
                    "threads_positions": {
                      "maxItems": 1,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "const": "threads_stream"
                      }
                    },
                    "custom_audience_ids": {
                      "maxItems": 4,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "pattern": "^[1-9]\\d{1,24}$"
                      }
                    },
                    "excluded_custom_audience_ids": {
                      "maxItems": 4,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "pattern": "^[1-9]\\d{1,24}$"
                      }
                    }
                  },
                  "required": [
                    "geo_locations",
                    "age_min",
                    "age_max",
                    "publisher_platforms"
                  ]
                },
                "billing_event": {
                  "type": "string",
                  "enum": [
                    "IMPRESSIONS",
                    "LINK_CLICKS"
                  ]
                },
                "optimization_goal": {
                  "type": "string",
                  "enum": [
                    "REACH",
                    "IMPRESSIONS",
                    "LINK_CLICKS",
                    "LANDING_PAGE_VIEWS",
                    "OFFSITE_CONVERSIONS",
                    "LEAD_GENERATION"
                  ]
                },
                "bid_strategy": {
                  "default": "LOWEST_COST_WITHOUT_CAP",
                  "type": "string",
                  "const": "LOWEST_COST_WITHOUT_CAP"
                },
                "start_time": {
                  "type": "string",
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                },
                "end_time": {
                  "type": "string",
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                },
                "promoted_object": {
                  "type": "object",
                  "properties": {
                    "page_id": {
                      "type": "string",
                      "pattern": "^[1-9]\\d{1,24}$"
                    },
                    "pixel_id": {
                      "type": "string",
                      "pattern": "^[1-9]\\d{1,24}$"
                    },
                    "custom_event_type": {
                      "type": "string",
                      "enum": [
                        "PURCHASE",
                        "LEAD",
                        "COMPLETE_REGISTRATION",
                        "ADD_TO_CART"
                      ]
                    }
                  }
                },
                "status": {
                  "default": "PAUSED",
                  "type": "string",
                  "const": "PAUSED"
                }
              },
              "required": [
                "operation",
                "campaign_id",
                "name",
                "targeting",
                "billing_event",
                "optimization_goal",
                "bid_strategy",
                "status"
              ]
            },
            {
              "type": "object",
              "properties": {
                "operation": {
                  "type": "string",
                  "const": "update_adset"
                },
                "object_id": {
                  "type": "string",
                  "pattern": "^[1-9]\\d{1,24}$"
                },
                "name": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                },
                "budget": {
                  "type": "object",
                  "properties": {
                    "kind": {
                      "type": "string",
                      "enum": [
                        "daily",
                        "lifetime"
                      ]
                    },
                    "amount_minor": {
                      "type": "string",
                      "pattern": "^[1-9]\\d{0,11}$"
                    }
                  },
                  "required": [
                    "kind",
                    "amount_minor"
                  ]
                },
                "status": {
                  "type": "string",
                  "enum": [
                    "ACTIVE",
                    "PAUSED",
                    "ARCHIVED"
                  ]
                },
                "targeting": {
                  "type": "object",
                  "properties": {
                    "geo_locations": {
                      "type": "object",
                      "properties": {
                        "countries": {
                          "minItems": 1,
                          "maxItems": 25,
                          "type": "array",
                          "items": {
                            "type": "string",
                            "pattern": "^[A-Z]{2}$"
                          }
                        }
                      },
                      "required": [
                        "countries"
                      ]
                    },
                    "age_min": {
                      "default": 18,
                      "type": "integer",
                      "minimum": 18,
                      "maximum": 65
                    },
                    "age_max": {
                      "default": 65,
                      "type": "integer",
                      "minimum": 18,
                      "maximum": 65
                    },
                    "genders": {
                      "minItems": 1,
                      "maxItems": 2,
                      "type": "array",
                      "items": {
                        "anyOf": [
                          {
                            "type": "number",
                            "const": 1
                          },
                          {
                            "type": "number",
                            "const": 2
                          }
                        ]
                      }
                    },
                    "locales": {
                      "maxItems": 25,
                      "type": "array",
                      "items": {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      }
                    },
                    "publisher_platforms": {
                      "minItems": 1,
                      "maxItems": 3,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "facebook",
                          "instagram",
                          "threads"
                        ]
                      }
                    },
                    "facebook_positions": {
                      "maxItems": 4,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "feed",
                          "story",
                          "facebook_reels",
                          "video_feeds"
                        ]
                      }
                    },
                    "instagram_positions": {
                      "maxItems": 4,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "stream",
                          "story",
                          "reels",
                          "explore"
                        ]
                      }
                    },
                    "threads_positions": {
                      "maxItems": 1,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "const": "threads_stream"
                      }
                    },
                    "custom_audience_ids": {
                      "maxItems": 4,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "pattern": "^[1-9]\\d{1,24}$"
                      }
                    },
                    "excluded_custom_audience_ids": {
                      "maxItems": 4,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "pattern": "^[1-9]\\d{1,24}$"
                      }
                    }
                  },
                  "required": [
                    "geo_locations",
                    "age_min",
                    "age_max",
                    "publisher_platforms"
                  ]
                },
                "start_time": {
                  "type": "string",
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                },
                "end_time": {
                  "type": "string",
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                }
              },
              "required": [
                "operation",
                "object_id"
              ]
            },
            {
              "type": "object",
              "properties": {
                "operation": {
                  "type": "string",
                  "const": "create_ad"
                },
                "name": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                },
                "adset_id": {
                  "type": "string",
                  "pattern": "^[1-9]\\d{1,24}$"
                },
                "creative_id": {
                  "type": "string",
                  "pattern": "^[1-9]\\d{1,24}$"
                },
                "status": {
                  "default": "PAUSED",
                  "type": "string",
                  "const": "PAUSED"
                }
              },
              "required": [
                "operation",
                "name",
                "adset_id",
                "creative_id",
                "status"
              ]
            },
            {
              "type": "object",
              "properties": {
                "operation": {
                  "type": "string",
                  "const": "update_ad"
                },
                "object_id": {
                  "type": "string",
                  "pattern": "^[1-9]\\d{1,24}$"
                },
                "name": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                },
                "creative_id": {
                  "type": "string",
                  "pattern": "^[1-9]\\d{1,24}$"
                },
                "status": {
                  "type": "string",
                  "enum": [
                    "ACTIVE",
                    "PAUSED",
                    "ARCHIVED"
                  ]
                }
              },
              "required": [
                "operation",
                "object_id"
              ]
            },
            {
              "type": "object",
              "properties": {
                "operation": {
                  "type": "string",
                  "const": "create_creative"
                },
                "name": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                },
                "object_story_spec": {
                  "type": "object",
                  "properties": {
                    "page_id": {
                      "type": "string",
                      "pattern": "^[1-9]\\d{1,24}$"
                    },
                    "instagram_user_id": {
                      "type": "string",
                      "pattern": "^[1-9]\\d{1,24}$"
                    },
                    "link_data": {
                      "type": "object",
                      "properties": {
                        "link": {
                          "type": "string",
                          "maxLength": 2048,
                          "format": "uri"
                        },
                        "message": {
                          "type": "string",
                          "maxLength": 5000
                        },
                        "name": {
                          "type": "string",
                          "minLength": 1,
                          "maxLength": 200
                        },
                        "image_hash": {
                          "type": "string",
                          "pattern": "^[a-fA-F0-9]{16,128}$"
                        },
                        "call_to_action": {
                          "type": "string",
                          "enum": [
                            "LEARN_MORE",
                            "SHOP_NOW",
                            "SIGN_UP",
                            "CONTACT_US"
                          ]
                        }
                      },
                      "required": [
                        "link",
                        "message",
                        "image_hash"
                      ]
                    }
                  },
                  "required": [
                    "page_id",
                    "link_data"
                  ]
                },
                "object_story_id": {
                  "type": "string",
                  "pattern": "^[1-9]\\d{1,24}_[1-9]\\d{1,24}$"
                }
              },
              "required": [
                "operation",
                "name"
              ]
            },
            {
              "type": "object",
              "properties": {
                "operation": {
                  "type": "string",
                  "const": "create_saved_audience"
                },
                "name": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                },
                "targeting": {
                  "type": "object",
                  "properties": {
                    "geo_locations": {
                      "type": "object",
                      "properties": {
                        "countries": {
                          "minItems": 1,
                          "maxItems": 25,
                          "type": "array",
                          "items": {
                            "type": "string",
                            "pattern": "^[A-Z]{2}$"
                          }
                        }
                      },
                      "required": [
                        "countries"
                      ]
                    },
                    "age_min": {
                      "default": 18,
                      "type": "integer",
                      "minimum": 18,
                      "maximum": 65
                    },
                    "age_max": {
                      "default": 65,
                      "type": "integer",
                      "minimum": 18,
                      "maximum": 65
                    },
                    "genders": {
                      "minItems": 1,
                      "maxItems": 2,
                      "type": "array",
                      "items": {
                        "anyOf": [
                          {
                            "type": "number",
                            "const": 1
                          },
                          {
                            "type": "number",
                            "const": 2
                          }
                        ]
                      }
                    },
                    "locales": {
                      "maxItems": 25,
                      "type": "array",
                      "items": {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      }
                    },
                    "publisher_platforms": {
                      "minItems": 1,
                      "maxItems": 3,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "facebook",
                          "instagram",
                          "threads"
                        ]
                      }
                    },
                    "facebook_positions": {
                      "maxItems": 4,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "feed",
                          "story",
                          "facebook_reels",
                          "video_feeds"
                        ]
                      }
                    },
                    "instagram_positions": {
                      "maxItems": 4,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "stream",
                          "story",
                          "reels",
                          "explore"
                        ]
                      }
                    },
                    "threads_positions": {
                      "maxItems": 1,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "const": "threads_stream"
                      }
                    },
                    "custom_audience_ids": {
                      "maxItems": 4,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "pattern": "^[1-9]\\d{1,24}$"
                      }
                    },
                    "excluded_custom_audience_ids": {
                      "maxItems": 4,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "pattern": "^[1-9]\\d{1,24}$"
                      }
                    }
                  },
                  "required": [
                    "geo_locations",
                    "age_min",
                    "age_max",
                    "publisher_platforms"
                  ]
                }
              },
              "required": [
                "operation",
                "name",
                "targeting"
              ]
            },
            {
              "type": "object",
              "properties": {
                "operation": {
                  "type": "string",
                  "const": "update_saved_audience"
                },
                "object_id": {
                  "type": "string",
                  "pattern": "^[1-9]\\d{1,24}$"
                },
                "name": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 200
                },
                "targeting": {
                  "type": "object",
                  "properties": {
                    "geo_locations": {
                      "type": "object",
                      "properties": {
                        "countries": {
                          "minItems": 1,
                          "maxItems": 25,
                          "type": "array",
                          "items": {
                            "type": "string",
                            "pattern": "^[A-Z]{2}$"
                          }
                        }
                      },
                      "required": [
                        "countries"
                      ]
                    },
                    "age_min": {
                      "default": 18,
                      "type": "integer",
                      "minimum": 18,
                      "maximum": 65
                    },
                    "age_max": {
                      "default": 65,
                      "type": "integer",
                      "minimum": 18,
                      "maximum": 65
                    },
                    "genders": {
                      "minItems": 1,
                      "maxItems": 2,
                      "type": "array",
                      "items": {
                        "anyOf": [
                          {
                            "type": "number",
                            "const": 1
                          },
                          {
                            "type": "number",
                            "const": 2
                          }
                        ]
                      }
                    },
                    "locales": {
                      "maxItems": 25,
                      "type": "array",
                      "items": {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      }
                    },
                    "publisher_platforms": {
                      "minItems": 1,
                      "maxItems": 3,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "facebook",
                          "instagram",
                          "threads"
                        ]
                      }
                    },
                    "facebook_positions": {
                      "maxItems": 4,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "feed",
                          "story",
                          "facebook_reels",
                          "video_feeds"
                        ]
                      }
                    },
                    "instagram_positions": {
                      "maxItems": 4,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "enum": [
                          "stream",
                          "story",
                          "reels",
                          "explore"
                        ]
                      }
                    },
                    "threads_positions": {
                      "maxItems": 1,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "const": "threads_stream"
                      }
                    },
                    "custom_audience_ids": {
                      "maxItems": 4,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "pattern": "^[1-9]\\d{1,24}$"
                      }
                    },
                    "excluded_custom_audience_ids": {
                      "maxItems": 4,
                      "type": "array",
                      "items": {
                        "type": "string",
                        "pattern": "^[1-9]\\d{1,24}$"
                      }
                    }
                  },
                  "required": [
                    "geo_locations",
                    "age_min",
                    "age_max",
                    "publisher_platforms"
                  ]
                }
              },
              "required": [
                "operation",
                "object_id"
              ]
            }
          ]
        },
        "reviewed_digest": {
          "type": "string",
          "pattern": "^[a-f0-9]{64}$"
        },
        "effects": {
          "type": "object",
          "properties": {
            "creates_object": {
              "type": "boolean"
            },
            "initial_status": {
              "anyOf": [
                {
                  "type": "string",
                  "const": "PAUSED"
                },
                {
                  "type": "null"
                }
              ]
            },
            "activates_delivery": {
              "type": "boolean"
            },
            "changes_budget": {
              "type": "boolean"
            },
            "changes_audience": {
              "type": "boolean"
            },
            "changes_creative": {
              "type": "boolean"
            },
            "currency": {
              "type": "string",
              "pattern": "^[A-Z]{3}$"
            },
            "timezone": {
              "type": "string",
              "minLength": 1,
              "maxLength": 100
            },
            "budget": {
              "anyOf": [
                {
                  "type": "object",
                  "properties": {
                    "kind": {
                      "type": "string",
                      "enum": [
                        "daily",
                        "lifetime"
                      ]
                    },
                    "amount_minor": {
                      "type": "string",
                      "pattern": "^[1-9]\\d{0,11}$"
                    }
                  },
                  "required": [
                    "kind",
                    "amount_minor"
                  ]
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "required": [
            "creates_object",
            "initial_status",
            "activates_delivery",
            "changes_budget",
            "changes_audience",
            "changes_creative",
            "currency",
            "timezone",
            "budget"
          ]
        },
        "live_approval": {
          "type": "object",
          "properties": {
            "required": {
              "type": "boolean"
            },
            "state": {
              "type": "string",
              "enum": [
                "not_required",
                "missing",
                "approved",
                "expired",
                "revoked",
                "invalid"
              ]
            },
            "reason": {
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 100
                },
                {
                  "type": "null"
                }
              ]
            },
            "expires_at": {
              "anyOf": [
                {
                  "type": "string",
                  "format": "date-time",
                  "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
                },
                {
                  "type": "null"
                }
              ]
            },
            "approved_by": {
              "anyOf": [
                {
                  "type": "string",
                  "format": "uuid",
                  "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "required": [
            "required",
            "state",
            "reason",
            "expires_at",
            "approved_by"
          ]
        },
        "provider_object_id": {
          "anyOf": [
            {
              "type": "string",
              "pattern": "^[1-9]\\d{1,24}$"
            },
            {
              "type": "null"
            }
          ]
        },
        "failure_code": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 100
            },
            {
              "type": "null"
            }
          ]
        },
        "created_at": {
          "type": "string",
          "format": "date-time",
          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
        },
        "completed_at": {
          "anyOf": [
            {
              "type": "string",
              "format": "date-time",
              "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "id",
        "workspace_id",
        "advertising_account_id",
        "mutation_id",
        "status",
        "command",
        "reviewed_digest",
        "effects",
        "live_approval",
        "provider_object_id",
        "failure_code",
        "created_at",
        "completed_at"
      ]
    },
    "result": {
      "type": "string",
      "enum": [
        "desired_state_observed",
        "unresolved"
      ]
    },
    "provider_object_id": {
      "anyOf": [
        {
          "type": "string",
          "pattern": "^[1-9]\\d{1,24}$"
        },
        {
          "type": "null"
        }
      ]
    },
    "observed_at": {
      "type": "string",
      "format": "date-time",
      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
    }
  },
  "required": [
    "contract_version",
    "action",
    "result",
    "provider_object_id",
    "observed_at"
  ]
}

Fouten en veilig opnieuw proberen

Controleer de HTTP-status en antwoordinhoud. Een 400-validatiefout kan een ZodError bevatten; afhandelingsfouten gebruiken de velden error, message en code. Bewaar request_id of x-request-id voor diagnose, zonder inloggegevens. Los 401/403-toegangsfouten op voordat je opnieuw probeert en volg Retry-After bij 429. Lees bij een onzekere schrijfhandeling of 5xx eerst het bestaande resultaat. Hergebruik een idempotentiesleutel alleen waar dit wordt ondersteund; het gedrag bij opnieuw proberen verschilt per bewerking en garandeert geen precies eenmalige aflevering.

Handleiding voor probleemoplossing

Voorbeelden

Deze voorbeelden gebruiken fictieve waarden die tegen de schema's zijn gecontroleerd. Vervang IDs door toegestane IDs, media door gereedstaande bestanden en datums door je bevestigde publicatietijd. Controleer accountgeschiktheid vóór een schrijfhandeling. Deze pagina verstuurt geen API-verzoeken.

Stel SOSOAPI_ACCESS_TOKEN op je server in op inloggegevens die deze bewerking accepteert en houd deze uit browsercode. Gebruik voor een AI-agent sosoapi auth login om via de browser aan te melden en laat de CLI de inloggegevens vernieuwen.

request.json

{
  "workspace_id": "11111111-1111-4111-8111-111111111111",
  "action_id": "11111111-1111-4111-8111-111111111111"
}

cURL

curl --request POST \
  "https://gqeshlawtcexsapabaui.supabase.co/functions/v1/advertising-api/actions/reconcile" \
  -H "Authorization: Bearer $SOSOAPI_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  --data-binary @request.json

JavaScript

// Server-side JavaScript. Do not print tokens or credential-bearing responses.
const token = process.env.SOSOAPI_ACCESS_TOKEN;
if (!token) throw new Error("Set an accepted credential for this operation");
const response = await fetch("https://gqeshlawtcexsapabaui.supabase.co/functions/v1/advertising-api/actions/reconcile", {
  method: "POST",
  headers: { "Content-Type": "application/json", Authorization: "Bearer " + token },
  body: JSON.stringify({
  "workspace_id": "11111111-1111-4111-8111-111111111111",
  "action_id": "11111111-1111-4111-8111-111111111111"
})
});
const result = await response.json();
// Check response.ok, the operation-specific body and completion state before continuing.

CLI

npx sosoapi api post /advertising-api/actions/reconcile < request.json

Voorbeeld van een synthetisch antwoord

{
  "contract_version": "advertising/v1",
  "action": {
    "id": "11111111-1111-4111-8111-111111111111",
    "workspace_id": "11111111-1111-4111-8111-111111111111",
    "advertising_account_id": "11111111-1111-4111-8111-111111111111",
    "mutation_id": "11111111-1111-4111-8111-111111111111",
    "status": "prepared",
    "command": {
      "operation": "create_campaign",
      "name": "example",
      "objective": "OUTCOME_AWARENESS",
      "special_ad_categories": [],
      "status": "PAUSED"
    },
    "reviewed_digest": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
    "effects": {
      "creates_object": false,
      "initial_status": null,
      "activates_delivery": false,
      "changes_budget": false,
      "changes_audience": false,
      "changes_creative": false,
      "currency": "USD",
      "timezone": "UTC",
      "budget": null
    },
    "live_approval": {
      "required": false,
      "state": "not_required",
      "reason": null,
      "expires_at": null,
      "approved_by": null
    },
    "provider_object_id": null,
    "failure_code": null,
    "created_at": "2099-01-15T09:00:00Z",
    "completed_at": null
  },
  "result": "desired_state_observed",
  "provider_object_id": null,
  "observed_at": "2099-01-15T09:00:00Z"
}

MCP: sosoapi_ads_actions_reconcile