Skip to main content
The ad is the leaf node of the campaign tree. It holds the creative (image, video, or carousel), copy, CTA, and destination URL. The available fields depend on the campaign objective and ad set conversion location.

Ad formats

FormatDescription
SINGLE_IMAGEOne static image
SINGLE_VIDEOOne video
CAROUSEL2–10 cards, each with its own image/video, headline, and URL
SINGLE_MEDIAFlexible single asset (image or video)
All objectives support all four formats.

Creative fields

FieldFeed LimitStories LimitNotes
primary_text2,200 chars250 charsAlways required
headline40 chars25 charsShown for most objectives
description30 charsOptional
link_description30 charsOptional
final_urlRequired for most website destinations
call_to_action_typeRequired except Awareness without link

CTA options by objective

Destination-specific overrides: PHONE_CALL → CALL_NOW only; WHATSAPP → WHATSAPP_MESSAGE only; MESSENGER → MESSAGE_PAGE only.
LEARN_MORE, SHOP_NOW, SIGN_UP, DOWNLOAD, APPLY_NOW, BOOK_TRAVEL, CONTACT_US, GET_QUOTE, SUBSCRIBE, WATCH_MORE, EXPLORE_MORE

Conditional fields

FieldShown when
final_urlMost objectives + website/app destinations; hidden for messaging/call destinations and Awareness with NO_LINK
lead_form_idLeads objective + Instant Forms, Messenger, or combined destinations
pixel_idDestination is Website
phone_numberDestination is Phone Call or CTA is CALL_NOW

Media specs

PlacementTypeAspect RatioMax File SizeMax DurationFormats
FeedImage1:130 MBjpg, png
FeedVideo1:14 GB240 smp4, mov
StoriesImage9:1630 MBjpg, png
StoriesVideo9:164 GB15 smp4, mov
ReelsVideo9:164 GB90 smp4, mov

Editable vs protected fields

All fields: name, label, status, creative_id, creative, adcreatives, adset_id, id, ad_format.

Ad payload shape

{
  "name": "My Ad",
  "adset_id": "123",
  "status": "PAUSED",
  "creative": {
    "object_story_spec": {
      "link_data": {
        "primary_text": "Headline and body copy.",
        "headline": "Headline",
        "description": "Optional description",
        "call_to_action_type": "LEARN_MORE",
        "link": "https://example.com",
        "image_hash": "..."
      }
    }
  }
}