Best analytics tool I've used in 14 years

Get page analytics

GET https://datafa.st/api/v1/analytics/pages

Retrieve analytics data broken down by page. Requires Bearer Token authentication.

Query Parameters

Optional Parameters

  • fields (string): Comma-separated list of fields to return. Valid fields: hostname, path, 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 with startAt if 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

  • page or entry_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:

http
GET /api/v1/analytics/pages?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": [
    {
      "hostname": "example.com",
      "path": "/",
      "visitors": 8920,
      "revenue": 12450
    },
    {
      "hostname": "example.com",
      "path": "/pricing",
      "visitors": 2150,
      "revenue": 8934
    },
    {
      "hostname": "example.com",
      "path": "/about",
      "visitors": 1840,
      "revenue": 0
    },
    {
      "hostname": "example.com",
      "path": "/blog",
      "visitors": 1230,
      "revenue": 0
    }
  ],
  "pagination": {
    "limit": 100,
    "offset": 0,
    "total": 243
  }
}
Something missing? Suggest features ✍️