Skip to main content

Meta Ads

info

API Documentation: Meta Ads Insights API documentation

High-Level Information:

The Meta Ads Insights and Graph API allow you to access detailed data related to your advertising campaigns on the Meta platform (Facebook, Instagram, and other Meta properties)

Source Setup Guide

Step 1

connect in the Edit Source form to the left.

Step 2

Follow the authentication flow (OAuth) in Facebook to grant Extract the required permissions.

Step 3

Ensure that your email and profile picture are visible, and verify that the source status is Connected.

Step 4 (optional) Add Custom reports

When creating a custom report, you can configure the following options:

  1. Report Name
  2. Breakdowns: Define how the results will be broken down. Certain combinations are available when using more than one breakdown. For details, refer to the Combining Breakdowns section.
  3. Action Breakdowns: Specify how to break down action results. Multiple breakdowns are supported, with the default value being ["action_type"].
  4. Fields: Choose the metrics to include in your report.
  5. Time Breakdown
  6. Action Report Time: Sets the time frame for action statistics in the report.
  7. Action Attribution Windows: Define the attribution window for actions.

For more information, visit the Meta Ads Insights API documentation.

Connection Setup Guide

Once you conneted Meta Ads to a destination, you will also need to configure:

  • Connection Pull Schedule: Determines how frequently data is extracted from the source.
  • Backfill (Days): Specifies the duration for which historical data will be retrieved during each connection run.
  • Accounts Whitelist: Select specific ad accounts to sync, or all of them.
  • Destination specific settings: different settings such as "Dataset Name" or "Target Schema" (depanding on your destination)
  • Schema Migration Policy: Controls how Extract will handle schema changes from the sourcee source.

Connector Information

Schema ERD

Explore the interactive entity relationship diagram for Meta Ads.

Open page

Data Streams

Metadata

ad_account

Loading ....
Loading ....

ad_campaign_frequency_control

Loading ....

ad_campaign_issues_info

Loading ....

ad_conversion_specs

Loading ....

ad_creative

Loading ....

ad_creative_labels

Loading ....

ad_image

Loading ....

ad_labels

Loading ....

ad_recommendation

Loading ....

ad_study

Loading ....

ad_tracking_specs

Loading ....

ad_video

Loading ....

adgroup_issues_info

Loading ....

adset

Loading ....

adset_labels

Loading ....

adset_targeting_optimization_types

Loading ....

campaign

Loading ....

campaign_labels

Loading ....

custom_audience

Loading ....

custom_conversion

Loading ....

label

Loading ....

reservation

Loading ....

video_thumbnail

Loading ....

Pre Build Reports

action_canvas_component

Loading ....
Loading ....

action_product_id

Loading ....

action_reactions

Loading ....

action_video_sound

Loading ....

action_video_view_type

Loading ....

ad_insights

Loading ....

basic_ad

Loading ....

basic_ad_set

Loading ....

basic_all_levels

Loading ....

basic_campaign

Loading ....

delivery_device

Loading ....

delivery_platform

Loading ....

delivery_platform_and_device

Loading ....

delivery_purchase_roas

Loading ....

demographics_age

Loading ....

demographics_age_and_gender

Loading ....

demographics_country

Loading ....

demographics_dma_region

Loading ....

demographics_dma_region

Loading ....

demographics_region

Loading ....

ad_activity

Loading ....

Notes

  • Events with an event_time older than 7 days are skipped and not sent to Meta Conversions API.
  • You must provide at least one user_data.* field. user_data.* fields with null values are ignored; if all provided user_data.* fields are null, the event is rejected.
  • user_data.fbclid is automatically converted into Meta’s fbc format before sending.
  • Any null fields are stripped from the final payload before it is sent.
  • For Purchase events, additional validation is applied to ensure required purchase fields are present before the event is sent.

Troubleshooting

Events are skipped because they are older than 7 days

If an event’s event_time is more than 7 days in the past, the connector skips it and does not send it to Meta.

Fix: Ensure event_time is an RFC3339 timestamp and is within the last 7 days.


Invalid event, you must provide at least one user_data.* fields

This error occurs when the event does not include any user_data.* fields.

Fix: Include at least one user_data.* field (for example, user_data.em, user_data.ph, user_data.client_ip_address, etc.).


Invalid event, you must provide at least one non-null user_data.* field

This error occurs when user_data.* fields are present, but all of them are null. The connector ignores null user_data.* values, and then fails validation if no non-null user data remains.

Fix: Provide at least one user_data.* field with a non-null value.


Purchase events fail validation

For event_name: "Purchase", Meta requires specific purchase fields. The connector validates purchase events and will fail the run if required purchase fields are missing.

Fix: Ensure your Purchase events include the required purchase fields in custom_data (for example, custom_data.currency and custom_data.value) and that they are not null.