Campaign Information

The campaign information data export contains all campaign configuration settings for each supported ad type.

Version Information

If you are already using Bulk Data Export please examine the data storage path to find your version number. The version (v1, v2, or v3) can be found after the name of your platform’s storage bucket.

Format: gs://{bucket}/{version}/...

Example: gs://mcm-export-my-platform-name/v2/... indicates data export version 2.0.

Version 3.0

Version 3.0 Campaign Information

Changes from Version 2.0 to Version 3.0

Schema Updates:
Version 3.0 introduces new schemas for campaign configurations, ad formats, and campaign targeting options.

File Path Structure:
Campaign data paths are separated in version 3.0 by ad format (Sponsored Products, Sponsored Brands, and Sponsored Display) to simplify consumption and streamline integration.

File Name Changes:
The campaign_config_snapshot file replaces the campaign digest file (campaign_digest) provided in Data Export 2.0.

📘

Please reach out to your Moloco team to activate Data Export or migrate to the latest version.

Data Formats and Storage Paths

🚧

The storage path format has changed with the release of data export 3.0.
The {revision} information (r0, r1, r2) is no longer used, please see the examples below.

All data is stored in parquet format, delivered each day using the following path structures.

  • gs://{bucket}/{version}/{data_type}/{date}/{file_name}

Parameters

Description

{bucket}

The name of the MCM bucket for your platform. mcm-export-<your-platform-name>

{version}

The version number (for example, v3) reflects major updates managed by Moloco. The Version number is updated when significant improvements are introduced to the service.

{export_type}

Reflects the data contents, campaign configuration or ad performance. campaign_config_snapshot contains campaign configuration data.
report contains ad performance data.

{date}

YYYY-MM-DD (e.g., 2025-01-01)

{file_name}

Only the parquet file format is supported, data can be exported in multiple files within each storage path. (data-000000000000.parquet, data-000000000001.parquet)



gs://mcm-export-{platform}/v3/campaign_config_snapshot/ad_type/{ad format}/YYYY-MM-DD/data-*

campaign_config_snapshot

  • The campaign_config_snapshot contains all campaign configuration settings for each ad type (Sponsored Products, Sponsored Brands, and Sponsored Display), separated into unique storage paths. These paths replace the campaign_digest used in version 2.0

Campaign Information Schema

🚧

For customers using Data Export version 1.0 please see our v1.1 Guide for more information.

Standard Values

Arrays

ARRAY values are represented natively as lists of structured objects when the data type is RECORD or primitive values for data types such as STRING or INTEGER.

  • An array can be empty [ ] if there are no values

  • An array can contain more than 1 object for fields such as assets in the campaign_config_snapshot, where each element holds the full details for 1 asset.

Nullable

NULLABLE fields may be entirely absent when the data is not relevant to the ad type or does not apply due to campaign settings. For example, when a campaign is created without an end date the field schedule_end will be NULL.

Required

REQUIRED values are always present in the exported data files.

Data Type

Records

RECORD containers (STRUCT with named elements) are nested groups of fields and may contain multiple subfields, for example, an asset's ID, type, dimensions, etc. These nested groups of fields are not single values and should not be treated as JSON. Customers should access these fields natively, extracting or filtering on subfield values as required.

When using analytic tools, reference the subfields using dot notation, for nested structures, use additional dots. For example assets.asset_id

Dates

The DATE data type uses the ISO 8601 standard which is written as (YYYY-MM-DD).

STRINGS which include the date and time, such as created_at or schedule_start, use the full ISO 8601 format written as (YYYY-MM-DDTHH:MM:SSZ)

📘

The fields assets and landing_pages are only available for Sponsored Brands and Sponsored Display campaigns.

Schema campaign_config_snapshot

Field nameSub fieldSub fieldSub fieldTypeModeDescription
ad_account_idSTRINGREQUIREDThe unique ID assigned to the ad account which owns the campaign.
campaign_idSTRINGREQUIREDThe unique identifier of the campaign.
campaign_titleSTRINGREQUIREDThe descriptive name of the campaign.
ad_typeSTRINGNULLABLEDisplays the ad type for the campaign. SPONSORED_PRODUCTS SPONSORED_BRANDS SPONSORED_DISPLAY
assetsRECORDREQUIREDA container for the brand and display asset information for the campaign. The field is only provided for Sponsored Brands and Sponsored Display.
listRECORDARRAYAppears when the PARQUET file is converted into an analytic system. Schema structure is found in the PARQUET metadata.
elementRECORDREQUIREDAppears when the PARQUET file is converted into an analytic system.
asset_idSTRINGREQUIREDUnique ID of the asset.
activeBOOLEANREQUIREDAsset status true (active) or false (inactive)
review_ statusSTRINGNULLABLEAsset review status. APPROVED PENDING IN_REVIEW REJECTED
landing_pagesRECORDREQUIREDA container for landing options associated with the campaign. The field is only provided for Sponsored Brands and Sponsored Display.
listRECORDARRAYAppears when the PARQUET file is converted into an analytic system. Schema structure is found in the PARQUET metadata.
elementRECORDREQUIREDAppears when the PARQUET file is converted into an analytic system.
typeSTRINGREQUIREDLanding option type CUSTOM_URL PRODUCT_DETAIL PRODUCT_LIST
activeBOOLEANREQUIREDStatus of the landing option. true (active) or false (inactive)
settingSTRINGNULLABLEConfiguration values for the landing option type. CUSTOM_URL PRODUCT_DETAIL PRODUCT_LIST
schedule_startSTRINGREQUIREDScheduled start time for the campaign.
schedule_endSTRINGNULLABLEScheduled end time for the campaign.
budgetRECORDNULLABLEBudget for the campaign
periodSTRINGNULLABLEBudget period for the campaign. DAILY WEEKLY
amount_ microINTEGERNULLABLEA monetary amount in micro units using the currency set on the platform
goal_typeSTRINGNULLABLEDescribes which cost-metric goal for a campaign. FIXED_CPC OPTIMIZE_ROAS FIXED_COMMISSION_RATE FIXED_CPM
target_cpcSTRINGNULLABLEA monetary amount in micro units using the currency set on the platform
target_cpmSTRINGNULLABLEA monetary amount in micro units using the currency set on the platform
target_roasSTRINGNULLABLETarget ROAS percentage.
commission_rateSTRINGNULLABLEThe percentage an ad platform or intermediary charges for facilitating a pay-per-order (PPO) advertising campaign.
catalog_item_idsRECORDREQUIREDThe unique item / product IDs found in the catalog. Note: An item can belong to multiple campaigns.
listRECORDARRAYAppears when the PARQUET file is converted into an analytic system.
elementSTRINGREQUIREDAppears when the PARQUET file is converted into an analytic system.
item_selection_typeSTRINGNULLABLEThe item selection type used for a campaign MANUAL_SELECTION SMART_SELECTION
activeBOOLEANREQUIREDThe state of the campaign. true (active) false (inactive)
created_atSTRINGREQUIREDThe timestamp when the campaign was created.
updated_atSTRINGREQUIREDThe timestamp when the campaign was last updated.
enabling_stateSTRINGREQUIREDThe status of the campaign’s ability to serve ads. ENABLED DISABLED

Version 2.0

Version 2.0 Campaign Information

Data Formats and Storage Paths

All data is stored in parquet format, delivered each day into the following path structure.

Storage path format:

  • gs://{bucket}/{version}/{revision}/{data_type}/{date}/{file_name}

gs://mcm-export-platform-name/v2/r0/campaign_digest/2025-09-01/data-000000000000.parquet

Example:

  • gs://mcm-export-platform-name/v2/r0/campaign_digest/2025-09-01/data-000000000000.parquet

Parameters

Description

{bucket}

The name of the MCM bucket for your platform. mcm-export-<your-platform-name>

{version}

The version number can increase when new features are added. For example, an existing schema is changed, a new dataset is added, or any other significant changes or additions are made. (e.g., v2)

{revision}

The revision number reflects major updates managed by Moloco. The Version number is updated when significant improvements are introduced to the service. (e.g. r0)

{export_type}

The type of data exported. (campaign_digest or campaign_summary)

{date}

YYYY-MM-DD (e.g., 2025-01-01)

{file_name}

Only the parquet file format is supported. There may be multiple files per export interval. (e.g., data-000000000001.parquet, data-000000000002.parquet)

Schema campaign_digest

The campaign_digest files contain all campaign configuration settings for all supported ad types. Please see the schema below for field names and descriptions.

📘

Note

All timestamps are provided in RFC3339 format and are based on the platform's timezone. This includes: creative.created_at, creative.updated_at, schedule_start, schedule_end, created_at, updated_at, timestamp

Field nameSub field nameTypeModeDescription
ad_account_idSTRINGREQUIREDThe id of the ad account that owns this campaign. It is platform-specific ad_account_id. Value and format can vary according to each Platform.
campaign_idSTRINGREQUIREDThe unique identifier of the campaign.
campaign_titleSTRINGNULLABLEA descriptive name of the campaign.
creativeSTRINGREPEATEDA container for all the creative asset information associated with the campaign. This field will only be provided when the creative configuration is enabled.
idSTRINGNULLABLEThe unique identifier of the creative.
titleSTRINGNULLABLETitle of the creative. It is often set as the file name of the image.
review_statusSTRINGNULLABLEThe review status of the creative. e.g., APPROVED, IN_REVIEW, REJECTED
created_atSTRINGNULLABLEThe timestamp when the creative was first created.
updated_atSTRINGNULLABLEThe timestamp when the campaign was last updated.
schedule_startSTRINGNULLABLEThe scheduled start time for the campaign.
schedule_endSTRINGNULLABLEThe scheduled end time for the campaign.
daily_budgetINTEGERNULLABLEA monetary amount in a specific currency; the unit is micro at fixed point value for accurate accumulation operation.
goal_typeSTRINGNULLABLECampaignGoal describes which cost-metric goal a campaign aims for. e.g., UNKNOWN_TYPE OPTIMIZE_NONE FIXED_CPC OPTIMIZE_ROAS FIXED_COMMISSION_RATE FIXED_CPM
target_cpcSTRINGNULLABLEA monetary amount in a specific currency; the unit is micro at fixed point value for accurate accumulation operation.
target_cpmSTRINGNULLABLEA monetary amount in a specific currency; the unit is micro at fixed point value for accurate accumulation operation.
target_roasSTRINGNULLABLETarget ROAS in percent.
catalog_item_idsSTRINGREPEATEDList of catalog items belonging to the campaign. A catalog item id can be a product id or deal id in the catalogs. Note that an item can belong to multiple campaigns.
stateBOOLEANNULLABLEThe state of the campaign. true(active) or false(inactive)
created_atSTRINGNULLABLEThe timestamp when the campaign was first created.
updated_atSTRINGNULLABLEThe timestamp when the campaign was last updated.
enabling_stateSTRINGNULLABLEThe status of the campaign's enabling condition, which determines its ability to run. e.g., UNKNOWN_STATE, ENABLED, DISABLED
offsite_setting_budgetINTEGERNULLABLEThe budget allocated for offsite settings within the campaign.
timestampSTRINGNULLABLEThe timestamp when the snapshot of the campaign was taken.

Version 1.0

🚧

For customers using Data Export version 1.0 please see Guide v1.1.

FAQ

Please see the MCM FAQ.