openapi: 3.1.0 info: title: Facebook Business Manager Facebook Marketing Ad Accounts Ad Creatives API description: Create and manage ad campaigns, analyze performance, and automate advertising workflows across Meta platforms. The Marketing API provides programmatic access to Facebook's advertising system, enabling businesses to create campaigns, ad sets, and ads, manage budgets and bidding strategies, define targeting audiences, and retrieve performance metrics. version: '25.0' contact: name: Meta Developer Support url: https://developers.facebook.com/support termsOfService: https://developers.facebook.com/terms servers: - url: https://graph.facebook.com/v25.0 description: Facebook Graph API Production Server security: - bearerAuth: [] tags: - name: Ad Creatives description: Manage ad creative content including images, videos, copy, and call-to-action configurations. paths: /act_{ad_account_id}/adcreatives: get: operationId: listAdCreatives summary: Facebook Business Manager List ad creatives description: Retrieves all ad creatives for the specified ad account. tags: - Ad Creatives parameters: - $ref: '#/components/parameters/adAccountId' - $ref: '#/components/parameters/fields' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/after' responses: '200': description: Successfully retrieved list of ad creatives content: application/json: schema: $ref: '#/components/schemas/AdCreativeList' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' post: operationId: createAdCreative summary: Facebook Business Manager Create an ad creative description: Creates a new ad creative with image, video, copy, and call-to-action configurations for use in ads. tags: - Ad Creatives parameters: - $ref: '#/components/parameters/adAccountId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/AdCreativeCreate' responses: '200': description: Ad creative created successfully content: application/json: schema: $ref: '#/components/schemas/CreateResponse' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' components: schemas: PagingCursors: type: object properties: before: type: string description: Cursor pointing to the start of the current page after: type: string description: Cursor pointing to the end of the current page AdCreativeCreate: type: object required: - name - object_story_spec properties: name: type: string object_story_spec: type: object description: Story specification including page, link, and media data title: type: string body: type: string call_to_action_type: type: string enum: - LEARN_MORE - SHOP_NOW - SIGN_UP - BOOK_NOW - DOWNLOAD - GET_OFFER - CONTACT_US - SUBSCRIBE url_tags: type: string AdCreative: type: object properties: id: type: string description: The ID of the ad creative name: type: string description: The name of the ad creative object_story_spec: type: object description: Specification for the story that will appear in the ad, including page ID, link data, and media. title: type: string description: The title of the ad body: type: string description: The body text of the ad image_url: type: string format: uri description: URL of the ad image call_to_action_type: type: string description: The call-to-action button type enum: - LEARN_MORE - SHOP_NOW - SIGN_UP - BOOK_NOW - DOWNLOAD - GET_OFFER - CONTACT_US - SUBSCRIBE link_url: type: string format: uri description: Destination URL for the ad url_tags: type: string description: URL tags for tracking parameters Error: type: object properties: error: type: object properties: message: type: string description: Human-readable error message type: type: string description: Error type classification code: type: integer description: Numeric error code error_subcode: type: integer description: Numeric error subcode for more specific categorization fbtrace_id: type: string description: Unique trace ID for debugging with Facebook support Paging: type: object properties: cursors: $ref: '#/components/schemas/PagingCursors' next: type: string description: URL for the next page of results previous: type: string description: URL for the previous page of results CreateResponse: type: object properties: id: type: string description: The ID of the newly created object AdCreativeList: type: object properties: data: type: array items: $ref: '#/components/schemas/AdCreative' paging: $ref: '#/components/schemas/Paging' parameters: adAccountId: name: ad_account_id in: path required: true description: The ID of the ad account (numeric, without the act_ prefix) schema: type: string after: name: after in: query required: false description: Cursor for pagination to retrieve the next page of results schema: type: string fields: name: fields in: query required: false description: Comma-separated list of fields to include in the response. If omitted, default fields are returned. schema: type: string limit: name: limit in: query required: false description: Maximum number of objects to return per page. Default is 25. schema: type: integer default: 25 maximum: 100 responses: Unauthorized: description: Invalid or expired access token content: application/json: schema: $ref: '#/components/schemas/Error' BadRequest: description: Invalid request parameters or malformed request body content: application/json: schema: $ref: '#/components/schemas/Error' securitySchemes: bearerAuth: type: http scheme: bearer description: OAuth 2.0 access token with ads_management or ads_read permissions. Obtain tokens via the Facebook Login flow. externalDocs: description: Facebook Marketing API Documentation url: https://developers.facebook.com/docs/marketing-api