Browse developer documentation
Funnels
attriboo reports funnels
Read independent standard stages, list saved definitions, or inspect an ordered saved funnel.
Access: OAuth analytics:read or workspace key
Options
| Field | Type | Description |
|---|---|---|
--site | string | Website ID or domain. Required when the workspace has more than one website. |
--period | string | UTC date selection. from and to override period. Values: realtime, today, yesterday, 7d, 30d, 90d, 12m, wtd, mtd, qtd, ytd, all. Default: |
--from | string | Inclusive start date. Supply to as well. |
--to | string | Inclusive end date. Supply from as well. |
--compare | string | Comparison range. Values: previous_period, mom, qoq, yoy, none. Default: |
--model | string | How recorded sources share revenue credit. Values: first_touch, last_touch, linear, time_decay. Default: |
--filters | string | JSON array string of up to twenty visitor filters, for example [{"dim":"country","op":"is","value":"US"}]. Dimensions: source, channel, campaign, entry_page, page, hostname, country, device, browser, os, goal. Operators: is, is_not. Values are exact strings up to 500 characters. All filters must match the visitor across available history; report dates then select activity for that cohort. Unmatched payments are excluded. Crawler counts remain website-wide; spend requires every filter to be source/channel/campaign. Preserve filters when paging. |
--limit | integer | Maximum rows where supported. Default: |
--cursor | string | A returned next_cursor. Keep the same website, report, dates, model, visitor filters and funnel selection. |
--funnel | string | Omit for standard stages; saved lists definitions; a saved funnel UUID reads its exact ordered results. |
--json | boolean | Compact JSON instead of formatted JSON. |
--csv | boolean | CSV for the main row collection; nested values remain JSON cells. Cannot be combined with --json. |
Read funnels
Replace example websites, dates and cursor values with your own. Running these commands makes real requests or changes the local session.
attriboo reports funnels --site shop.example.com --from 2026-10-01 --to 2026-10-07 --compare none --jsonExample output
{"site":{"id":"site_example","domain":"shop.example.com","currency":"USD"},"period":{"from":"2026-10-01T00:00:00.000Z","to":"2026-10-08T00:00:00.000Z","label":"Custom","compare":"none","attribution_model":"first_touch"},"funnels":[{"name":"All traffic","visitors":100,"buyers":4,"revenue":20000,"conversion_rate":4,"steps":[{"step":"Visited the site","visitors":100,"pct_of_entry":100,"drop_off_pct":0},{"step":"Viewed 2+ pages","visitors":60,"pct_of_entry":60,"drop_off_pct":40},{"step":"Completed a goal","visitors":15,"pct_of_entry":15,"drop_off_pct":75},{"step":"Purchased","visitors":4,"pct_of_entry":4,"drop_off_pct":73.3}]}]}List saved definitions
Replace example websites, dates and cursor values with your own. Running these commands makes real requests or changes the local session.
attriboo reports funnels --site shop.example.com --from 2026-10-01 --to 2026-10-07 --compare none --funnel saved --jsonExample output
{"site":{"id":"site_example","domain":"shop.example.com","currency":"USD"},"kind":"saved_definitions","funnels":[],"next_cursor":null,"coverage":{"complete":true,"total_rows":0,"returned_rows":0}}Read an ordered saved funnel
Replace example websites, dates and cursor values with your own. Running these commands makes real requests or changes the local session.
attriboo reports funnels --site shop.example.com --from 2026-10-01 --to 2026-10-07 --compare none --funnel YOUR_SAVED_FUNNEL_UUID --jsonExample output
{"site":{"id":"site_example","domain":"shop.example.com","currency":"USD"},"kind":"saved","period":{"from":"2026-10-01T00:00:00.000Z","to":"2026-10-08T00:00:00.000Z","label":"Custom","compare":"none","attribution_model":"first_touch"},"definition":{"id":"11111111-1111-4111-8111-111111111111","name":"Checkout","steps":[{"kind":"page","match":"equals","value":"/pricing"},{"kind":"purchase"}]},"rows":[{"label":"Visited /pricing","visitors":100,"pctOfFirst":100,"pctOfPrevious":100,"revCents":20000,"topSource":"Google Organic"},{"label":"Purchased","visitors":4,"pctOfFirst":4,"pctOfPrevious":4,"revCents":20000,"topSource":"Google Organic"}],"coverage":{"complete":true,"total_rows":2,"returned_rows":2}}Output fields
| Field | Type | Description |
|---|---|---|
site | object | Website ID, domain and currency. |
period | object | Resolved UTC boundaries; to is the exclusive timestamp after the selected end date. |
steps_definition | array | Standard stage labels, when no saved funnel is selected. |
kind | string | saved_definitions or saved for a selected saved-funnel request. |
definition | object | Exact saved funnel definition when funnel=ID. |
rows | array | Ordered saved-funnel results when funnel=ID; label, visitors, pctOfFirst, pctOfPrevious, revCents and topSource. |
funnels | array | Standard cohorts, or saved definitions when funnel=saved. For funnel=ID use definition and rows instead. |
next_cursor | string | null | When provided, pass this value to continue; null means the last page. Some small-site reports omit this field. |
coverage | object | When provided, describes completeness, snapshot time and row coverage. Row limits apply to this page, not to headline totals. |
site fields
| Field | Type | Description |
|---|---|---|
id | string | Website ID. |
domain | string | Website domain. |
currency | string | Three-letter currency. |
period fields
| Field | Type | Description |
|---|---|---|
from | string | Inclusive UTC start. |
to | string | Exclusive UTC end. |
label | string | Human-readable date selection. |
compare | string | Comparison selection. |
attribution_model | string | Revenue-credit model. |
funnels[] fields
| Field | Type | Description |
|---|---|---|
name | string | Cohort name. |
visitors | integer | Entry cohort visitors. |
buyers | integer | Buyers in the cohort. |
revenue | integer | Cohort revenue in cents. |
conversion_rate | number | Buyer percentage. |
steps | array | Independent stage counts, with step, visitors, pct_of_entry and drop_off_pct. |
The data follows the funnels API contract. CLI JSON omits the REST envelope.
Behavior and limits
Money is integer cents in site.currency. Percentages use a 0–100 scale.
Standard stages independently count entry-cohort members; they do not require the stages to happen in order.
funnel=saved returns kind: saved_definitions, funnels, next_cursor and coverage. Each definition includes id, name and steps.
funnel=ID returns kind: saved, period, definition, rows and coverage. Each ordered row has label, visitors, pctOfFirst, pctOfPrevious, revCents and topSource. Saved funnels have two to eight steps; a selected funnel has no cursor.
Definitions are read-only through the public API. Create and edit them in the dashboard.
CLI JSON output is the API data object directly, without the REST status/data envelope. Default output is formatted JSON; --json is compact JSON.
CSV contains only the returned page's main row collection. Continue using returned next_cursor values rather than assuming a single CSV is a complete export.