Get comprehensive URL click statistics with flexible filtering, grouping, and aggregation.
Authentication: Optional for public URLs, required for authenticated URLs and aggregate stats
API Key: Optional (if used, requires stats:read, urls:read, or admin:all scope)
Rate Limits:
Anonymous Usage:
scope=anonshort_code parameterAuthenticated Usage:
scope=all for aggregate statisticsAPI key in format: spoo_
Statistics scope: 'all' (authenticated only) or 'anon' (public access)
all, anon URL alias (required when scope=anon)
ISO 8601 datetime or Unix timestamp (default: 7 days ago)
ISO 8601 datetime or Unix timestamp (default: now)
IANA timezone for output formatting (default: UTC)
Comma-separated dimensions: time, browser, os, country, city, referrer, short_code
Comma-separated metrics: clicks, unique_clicks
Method 1: JSON Filters Object
JSON string containing dimension filters. Format: {"dimension": ["value1", "value2"]}
Available filter dimensions:
browser - Filter by browser name (e.g., Chrome, Firefox, Safari, Edge)os - Filter by operating system (e.g., Windows, macOS, Linux, iOS, Android)country - Filter by country code (e.g., US, CA, GB, IN)city - Filter by city name (e.g., New York, London, Mumbai)referrer - Filter by referrer URL (e.g., https://google.com, https://twitter.com)short_code - Filter by URL alias (e.g., mylink, promo2024) - Not allowed with scope=anonValue format: Array of strings for each dimension
Important: Filter values are case-sensitive. Use exact capitalization as stored in the database.
Examples:
{"browser": ["Chrome", "Firefox"]} - Filter for Chrome OR Firefox clicks{"country": ["US", "CA"], "browser": ["Chrome"]} - US/CA clicks from Chrome{"short_code": ["link1", "link2"]} - Stats for specific URLs (scope=all only)Alternative: You can also pass filters as individual query parameters (see browser, os, country, city, referrer, short_code parameters below)
Method 2: Individual Filter Parameter
Comma-separated browser names. Alternative to using the filters JSON parameter.
Format: Comma-separated string (e.g., Chrome,Firefox,Safari)
Important: Values are case-sensitive. Common values include:
Note: Both filters JSON and individual parameters can be combined.
Method 2: Individual Filter Parameter
Comma-separated operating system names. Alternative to using the filters JSON parameter.
Format: Comma-separated string (e.g., Windows,macOS,Linux)
Important: Values are case-sensitive. Common values include:
Note: Both filters JSON and individual parameters can be combined.
Method 2: Individual Filter Parameter
Comma-separated ISO 3166-1 alpha-2 country codes. Alternative to using the filters JSON parameter.
Format: Comma-separated string (e.g., US,CA,GB)
Important: Values are case-sensitive. Use uppercase two-letter codes:
Note: Both filters JSON and individual parameters can be combined.
Method 2: Individual Filter Parameter
Comma-separated city names. Alternative to using the filters JSON parameter.
Format: Comma-separated string (e.g., New York,London,Mumbai)
Important: Values are case-sensitive. Use exact capitalization as stored in the database.
Note: Both filters JSON and individual parameters can be combined.
Method 2: Individual Filter Parameter
Comma-separated referrer URLs. Alternative to using the filters JSON parameter.
Format: Comma-separated string of full URLs (e.g., https://google.com,https://twitter.com)
Important: Values are case-sensitive. Include the full URL including protocol.
Note: Both filters JSON and individual parameters can be combined.