Analytics

Retrieve click analytics

Clicks on one link (`linkId`, or `domain` + `slug`), one domain (`domain`) or the whole workspace over the last `interval`, counted as `groupBy` says. A click is a person's or an AI agent's; other bots never count. The window is cut to the plan's history. 20 requests per minute per workspace, counted in the general allowance too.

GET
/v1/analytics

Clicks on one link (linkId, or domain + slug), one domain (domain) or the whole workspace over the last interval, counted as groupBy says. A click is a person's or an AI agent's; other bots never count. The window is cut to the plan's history. 20 requests per minute per workspace, counted in the general allowance too.

Authorization

apiKey
headerAuthorizationBearer <token>

Query Parameters

groupBy?string

count: one total · timeseries: per hour (24h) or day, UTC · everything else: a breakdown, most clicks first

Default"count"
Value in"count""timeseries""countries""regions""cities""devices""browsers""os""referers""top_links""utm_sources""utm_mediums""utm_campaigns""utm_terms""utm_contents"
interval?string

The window, ending now; all = as far back as the plan’s history goes

Default"24h"
Value in"24h""7d""30d""90d""1y""all"
linkId?string

Only this link

domain?string

Only links on this host

slug?string

Only the link with this slug, on domain (the workspace subdomain when left out)

folderId?string

Only links in this folder

tagIds?|array<string>

Only links with these tag ids; comma-separated: any of them

country?|array<string>

ISO 3166-1 alpha-2 country codes, e.g. DE; comma-separated: any of them

device?|array<string>

desktop, mobile, tablet, tv, console, other; comma-separated: any of them

browser?|array<string>

Browser names, e.g. Chrome; comma-separated: any of them

os?|array<string>

Operating systems, e.g. iOS; comma-separated: any of them

referer?|array<string>

Referring hosts, e.g. google.com; comma-separated: any of them

utmSource?|array<string>

utm_source values; comma-separated: any of them

utmMedium?|array<string>

utm_medium values; comma-separated: any of them

utmCampaign?|array<string>

utm_campaign values; comma-separated: any of them

audience?string

Only people’s clicks, or only AI agents’; both when left out

Value in"people""agents"
limit?integer

Breakdown rows to return

Range1 <= value <= 1000
Default100

Response Body

Response for status 200

application/json
  1. response
start*string

Where the window starts: never before the plan’s history

end*string

Now

data*|array<>

count: the counts; otherwise rows

curl -X GET 'https://api.tinbo.co/v1/analytics'
{  "start": "string",  "end": "string",  "data": {    "clicks": -9007199254740991,    "people": -9007199254740991,    "agents": -9007199254740991  }}