Visitors and revenue over time
get_timeseriesVisitors, page views and revenue per hour, day, week or month for a time range. Use it for trends, peaks and 'when did it change?'. The last bucket can be partial.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "get_timeseries"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Last day, inclusive (YYYY-MM-DD). | |
| from | No | First day (YYYY-MM-DD, site time zone). Use with to instead of period. | |
| site | No | Site domain (example.com), id or public id (tb_…). Optional with a site key, or when the account has one site. | |
| period | No | Time range. Default 30d. today, yesterday, 24h, 7d, 30d, 90d, 12m, wtd, mtd, ytd, all. | |
| filters | No | Only visits that match every filter. A value is "is": {"country": "US"}; a list is "is any of": {"country": ["PT", "ES"]}; an object picks the operator: {"page": {"contains": "/blog"}}, {"channel": {"is_not": ["Direct", "Email"]}}, {"page": {"not_contains": "/admin"}}. Operators: is, is_not, contains, not_contains (case-insensitive). "visitor" is "new" or "returning". "ad" is an ad campaign as "google:<campaign id>" or "meta:<campaign id>" (the visits that the Ads page counts for it). Use "(none)" for empty values; countries take ISO codes or English names. | |
| granularity | No | Bucket size. Default depends on the range length. |