The Marketing API is an HTTP-based API that you can use to programmatically query data, create and manage ads, and perform a wide variety of other tasks. This section covers general information on the Marketing APIs, access, versioning, and more.

Since the API is HTTP-based, it works with any language or software that supports HTTP, including cURL and almost all modern web browsers. The Marketing API is build on top of Meta's Graph API, so almost all requests should be passed to the graph.facebook.com host URL.

Basic Concepts

Concepts you should understand to better use the Marketing API:

Ad Campaign Structure

Meta organizes ads in a structure with three levels: campaign, ad set and ad. In the API, developers have access to a fourth level called creative.


To access Marketing API endpoints, your app must clear multiple layers of Graph API authorization.


Learn how to get and store the access token you need for your API calls.

Rate Limiting

The Marketing API has it is own rate limiting logic and is excluded from all the Graph API rate limitations.


Meta's platform has a core and extended versioning model. Learn more about upcoming changes and deprecations using our versioning and migration systems. See Version Schedules, Migrations, and Changelog.

App Review

To use the Marketing API, your app must undergo App Review, with a few exceptions for Server-Side API and Offline Conversions.


There are two main ads permissions: ads_management and ads_read. Permissions should be granted to the app you are using to make your calls. Permissions can be requested during the app review process. See list of available permissions for Business Apps.

Error Codes

You may see error codes while using the API. Use this as a reference to learn more about each error code.


Understand the post processing phase after a request is received by Meta.