Managing Export Schedules & Manifests
Once you've created a pipeline and a destination, you need to define what data to export (Manifest) and when to export it (Schedule). This article covers both.
Manifests — Defining What to Export
A manifest contains one or more extracts. Each extract defines a specific slice of data to export.
Extract Fields
Field | Required | Description |
Extract ID | Yes | A unique identifier for this extract (alphanumeric, underscores, dashes). Used in file paths. |
Metrics | At least one metric or dimension | The metrics to include (e.g., Impressions, Clicks, Spend) |
Dimensions | At least one metric or dimension | The dimensions to group by (e.g., Campaign, Ad Group) |
Filters | No | Optional filters to restrict the exported data |
The available metrics and dimensions are determined by the pipeline's data sources and can be browsed via the Valid Metrics and Valid Dimensions endpoints.
Time dimensions (Date, Week, Month, Quarter, Year, Day of Week, Day of Month, Hour) are automatically available and do not need to be explicitly added. Time dimensions cannot be used in filters.
Filters
Filters use an OR-of-AND structure: groups of conditions joined by AND, with groups joined by OR.
Available operators:
Operator | Value Type | Description |
| Array of strings | Matches any of the specified values |
| Array of strings | Excludes the specified values |
| String | Contains substring (case-sensitive) |
| String | Contains substring (case-insensitive) |
| String | Does not contain substring |
| String | Starts with prefix (case-sensitive) |
| String | Starts with prefix (case-insensitive) |
Example: Export only Google Ads campaigns containing "Brand" or "Search":
filters: [ [ { "dimension": "campaign", "operator": "$i_contains", "value": "Brand" }, { "dimension": "data_source", "operator": "$in", "value": ["adwords"] } ], [ { "dimension": "campaign", "operator": "$i_contains", "value": "Search" }, { "dimension": "data_source", "operator": "$in", "value": ["adwords"] } ] ]
Manifest Versioning
Manifests are immutable after creation — you cannot edit an existing manifest's extracts
To change what's exported, create a new manifest
The old manifest enters a 30-day grace period before expiring, so downstream consumers have time to adapt
Schedules — Defining When to Export
A schedule links a pipeline (with its manifest) to a destination and defines the timing.
Schedule Fields
Field | Required | Description |
Cron Expression | Yes | Standard 5-field cron (e.g., |
Duration | Yes | The date range to export (preset or explicit dates) |
Destination | Yes | Which destination to upload to |
Timezone | No | IANA timezone (e.g., |
Compression | No |
|
Duration Presets
Preset | Description |
| Current day (in the schedule's timezone) |
| Previous day |
| Last 7 days (excluding today) |
| Last 30 days (excluding today) |
| Today plus N-1 previous days (e.g., |
You can also use explicit dates: {"start_date": "2026-04-01", "end_date": "2026-04-17"}
Cron Examples
Expression | Meaning |
| Every day at 12:00 PM |
| Twice daily at midnight and noon |
| Every Monday at 8:00 AM |
| First day of every month at 6:00 AM |
Pausing & Resuming
Both pipelines and individual schedules can be independently paused:
Pausing a pipeline stops all its schedules from firing
Pausing a schedule stops only that schedule, even if the pipeline is active
Resume either by setting status back to active
Deleting Pipelines & Schedules
Deletion is soft — the resource is marked as deleted but retained for 30 days
After 30 days, it is permanently removed along with associated export runs
Deleted resources do not appear in list views
Monitoring Export Runs
Each schedule execution creates an Export Run with:
Status:
running,succeeded, orfailedStats: File URLs, byte counts, and date range for each extract
Error message: If the run failed, the error is captured for debugging
Export runs are automatically cleaned up after 30 days.
In case of any queries, feel free to reach out to us from the messenger support on the platform.