Skip to main content
Glama

Adbloop Meta Ads

create_structured

Create ONE campaign with MULTIPLE ad sets and MULTIPLE ads each (1 campaign -> N ad sets -> M ads), image or video, including DPA/Catalog dynamic product ads. Created PAUSED. Honors spend guardrails. Pro feature. WRITES live.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
campaignsYesOne or more structured campaigns (usually one).
meta_account_idNoAd account (defaults to primary).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • addedInput schema / properties / campaigns / items / properties / adSets / items / properties / budgetType
      Added value: +{
      +  "description": "ABO only. LIFETIME needs lifetimeBudget and scheduleEnd.",
      +  "enum": [
      +    "DAILY",
      +    "LIFETIME"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / campaigns / items / properties / adSets / items / properties / lifetimeBudget
      Added value: +{
      +  "description": "Lifetime budget MAJOR units (ABO, budgetType LIFETIME).",
      +  "type": "number"
      +}
    • addedInput schema / properties / campaigns / items / properties / adSets / items / properties / scheduleEnd
      Added value: +{
      +  "description": "Ad set end, ISO 8601. Required (more than 24h after start) with a lifetime budget.",
      +  "type": "string"
      +}
    • addedInput schema / properties / campaigns / items / properties / adSets / items / properties / scheduleStart
      Added value: +{
      +  "description": "Ad set start, ISO 8601.",
      +  "type": "string"
      +}
  2. Changed2 schema fields changed
    • addedInput schema / properties / campaigns / items / properties / adSets / items / properties / geoLocations
      Added value: +{
      +  "additionalProperties": true,
      +  "description": "OPTIONAL specific places instead of whole countries (replaces countries when set). Get keys from search_locations. cities: [{ key, radius (km, 17-80; omit for the city only), country_code }], regions: [{ key, country_code }] (states), zips: [{ key e.g. \"IN:380015\", country_code }] (PIN/ZIP codes). Meta rejects overlapping places (e.g. a PIN inside a city radius). With a Special Ad Category: no zips, and cities need a radius of at least 25 km.",
      +  "properties": {
      +    "cities": {
      +      "items": {
      +        "properties": {
      +          "country_code": {
      +            "type": "string"
      +          },
      +          "key": {
      +            "type": "string"
      +          },
      +          "radius": {
      +            "type": "number"
      +          }
      +        },
      +        "required": [
      +          "key"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "regions": {
      +      "items": {
      +        "properties": {
      +          "country_code": {
      +            "type": "string"
      +          },
      +          "key": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "key"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "zips": {
      +      "items": {
      +        "properties": {
      +          "country_code": {
      +            "type": "string"
      +          },
      +          "key": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "key"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "type": "object"
      +}
    • addedInput schema / properties / campaigns / items / properties / geoLocations
      Added value: +{
      +  "additionalProperties": true,
      +  "description": "OPTIONAL specific places instead of whole countries (replaces countries when set). Get keys from search_locations. cities: [{ key, radius (km, 17-80; omit for the city only), country_code }], regions: [{ key, country_code }] (states), zips: [{ key e.g. \"IN:380015\", country_code }] (PIN/ZIP codes). Meta rejects overlapping places (e.g. a PIN inside a city radius). With a Special Ad Category: no zips, and cities need a radius of at least 25 km.",
      +  "properties": {
      +    "cities": {
      +      "items": {
      +        "properties": {
      +          "country_code": {
      +            "type": "string"
      +          },
      +          "key": {
      +            "type": "string"
      +          },
      +          "radius": {
      +            "type": "number"
      +          }
      +        },
      +        "required": [
      +          "key"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "regions": {
      +      "items": {
      +        "properties": {
      +          "country_code": {
      +            "type": "string"
      +          },
      +          "key": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "key"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "zips": {
      +      "items": {
      +        "properties": {
      +          "country_code": {
      +            "type": "string"
      +          },
      +          "key": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "key"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "type": "object"
      +}
  3. Added

TDQS

Score is being calculated.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources