Get campaign analytics
GET https://datafa.st/api/v1/analytics/campaigns
Query Parameters
Optional Parameters
-
fields(string): Comma-separated list of fields to return. Valid fields:utm_source,utm_medium,utm_campaign,utm_term,utm_content,ref,source,via,visitors,revenue. If not specified, all fields are returned. -
startAt(string): Start date/time in ISO 8601 format (e.g., 2024-01-01T00:00:00Z or 2024-01-01). If omitted, returns all-time data -
endAt(string): End date/time in ISO 8601 format. Must be provided together withstartAtif using custom date range -
timezone(string): Timezone for data aggregation (e.g., UTC, America/New_York, Europe/Amsterdam). Defaults to your website's timezone if not specified -
limit(number): Maximum number of results to return (1-1000, default: 100) -
offset(number): Number of results to skip for pagination (default: 0)
You can filter the data using simple, direct query parameters. Just pass the parameter name with comma-separated values:
Available Filters:
Location Filters
country(string): Filter by country name or code (e.g., United States, US)- Example: country=United States,Canada
region(string): Filter by region/state- Example: region=California,New York
city(string): Filter by city name- Example: city=San Francisco,New York
Device & Browser Filters
device(string): Filter by device type (desktop, mobile, tablet)- Example: device=mobile,tablet
browser(string): Filter by browser name (e.g., Chrome, Safari, Firefox, Edge)- Note: Filtering by Safari automatically includes Mobile Safari
- Example: browser=Chrome,Safari
os(string): Filter by operating system (e.g., Mac OS, Windows, iOS, Android)- Example: os=Mac OS,Windows
Traffic Source Filters
referrer(string): Filter by referrer domain or popular referrer name (e.g., google.com, Google, Facebook, Direct/None)- Supports popular referrer names that get automatically normalized to domains
- Example: referrer=google.com,facebook.com
ref(string): Filter by ref URL parameter- Example: ref=twitter,newsletter
source(string): Filter by source URL parameter- Example: source=google,facebook
via(string): Filter by via URL parameter- Example: via=affiliate,partner
UTM Parameter Filters
utm_source(string): Filter by UTM source parameter- Example: utm_source=google,facebook
utm_medium(string): Filter by UTM medium parameter (e.g., cpc, email, social)- Example: utm_medium=cpc,email
utm_campaign(string): Filter by UTM campaign parameter- Example: utm_campaign=summer_sale,product_launch
utm_term(string): Filter by UTM term parameter (typically used for keywords)- Example: utm_term=keyword1,keyword2
utm_content(string): Filter by UTM content parameter- Example: utm_content=ad_variant_a,ad_variant_b
Page & Content Filters
pageorentry_page(string): Filter by page path/URL- Example: page=/pricing,/about
hostname(string): Filter by hostname/domain- Example: hostname=example.com,www.example.com
Multiple Filter Example:
GET /api/v1/analytics/campaigns?country=United States,Canada &device=mobile &utm_source=google &page=/pricing
See DataFast filters documentation for more details on using filters in the dashboard.
Response
Success (200 OK):
{
"status": "success",
"data": [
{
"campaign": {
"utm_source": "",
"utm_medium": "",
"utm_campaign": "",
"utm_term": "",
"utm_content": "",
"ref": "indiepage",
"source": "",
"via": ""
},
"visitors": 2150,
"revenue": 3420
},
{
"campaign": {
"utm_source": "newsletter.example.com",
"utm_medium": "email",
"utm_campaign": "product-launch-2025",
"utm_term": "",
"utm_content": "",
"ref": "",
"source": "",
"via": ""
},
"visitors": 1840,
"revenue": 2890
},
{
"campaign": {
"utm_source": "",
"utm_medium": "",
"utm_campaign": "",
"utm_term": "",
"utm_content": "",
"ref": "",
"source": "",
"via": "partner"
},
"visitors": 920,
"revenue": 1450
}
],
"pagination": {
"limit": 5,
"offset": 0,
"total": 138
}
}