Skip to content
AdCrunch
Esc
↑↓navigate↵open⌘Jpreview
On this page

meta_create_creative

Build a Meta ad creative from an asset that you uploaded to AdCrunch. Image and video both work.

Ask for a creative from an asset that you uploaded to AdCrunch, with its text, its link and its button. The agent builds the creative on Meta, and meta_create_ad then puts it in an ad set.

Make a creative from the spring trail image, from the Northwind Outdoor Page, with a Shop now button to example.com/spring.

The agent calls meta_create_creative, then get_mutation_status, and you see the id of the new creative. Change what runs on Meta walks the whole campaign.

Reference

Available on: Meta

Build a Meta ad creative from media you have uploaded to AdCrunch and registered to this advertiser. Pass the AdCrunch asset ID (ast_<id>) that asset_register used — not a Meta image hash or video ID. Image and video both work, and you do not choose between them: the asset’s kind decides the format. A video uploaded moments ago is fine; the creative waits for Meta to finish processing it. Runs asynchronously: returns a workflowId — call get_mutation_status with it to get the new creative’s id, then pass that to meta_create_ad.

Input

Argument Type Required Description
advertiserId string yes Advertiser account ID (acc_<id>). Must belong to the active organization.
assetId string yes The AdCrunch asset (ast_<id>) to build from. It must already be registered to this advertiser — call asset_register first if it is not.
callToAction one of LEARN_MORE, SHOP_NOW, SIGN_UP, BOOK_TRAVEL, DOWNLOAD, GET_OFFER, GET_QUOTE, CONTACT_US, SUBSCRIBE, APPLY_NOW, NO_BUTTON yes The button on the ad, e.g. SHOP_NOW. Use NO_BUTTON for none.
description string no Supporting line under the headline. Not always shown, depending on placement.
headline string, at least 1 character yes The bold headline, usually beside the button.
link string (uri) yes The destination URL the ad sends people to.
message string, at least 1 character yes The primary text — the body copy above the media.
name string, at least 1 character yes Creative name, as it appears in Ads Manager. Internal only; users never see it.
pageId string yes The Facebook Page the ad speaks from. Find one with meta_list_pages.

Output

A successful call returns this object in structuredContent.

Field Type Always present Description
workflowId string yes The id of the change. The change has not reached Meta yet. Give this id to get_mutation_status to find out how the change ended.

Failure codes

A failed call has isError set, and structuredContent.error holds one of these codes. Errors describes the shape of a failed call.

  • not_found
  • missing_write_access
  • forbidden
  • invalid_request
  • internal_error

Scope

The token must hold mutation:write. Auth & scopes lists each scope.

Annotations

A client reads these hints. A hint that the tool does not declare has the default value of the MCP specification.

  • Writes. The tool can change data.
  • Destructive. The tool can make a change that you cannot undo. A client can ask you to confirm before it calls the tool.
  • Not idempotent. A second call with the same arguments can change more.
  • Open world. The tool reaches a system outside AdCrunch, such as an ad platform.

Example

The arguments:

{
  "advertiserId": "acc_1485443900032333",
  "assetId": "ast_k7m2x9q4w1e8r5t3y6u0i2o4",
  "callToAction": "SHOP_NOW",
  "headline": "Trail shoes for spring",
  "link": "https://www.example.com/spring",
  "message": "Light, grippy, and ready for wet trails.",
  "name": "Spring trail shoes, image 1",
  "pageId": "104857392018274"
}

The result, in structuredContent:

{
  "workflowId": "3f9c2b7e-8a41-4d6e-9b05-c1e7a2d4f860"
}

Was this page helpful?