PilotFoxDocs

Analyze an unsaved funnel

POST
/api/v1/sites/{siteId}/funnels/analyze

The report of the funnel in the body without saving it: the same answer as a saved funnel's report.

Requires funnels:read on the site (an API key, or a signed-in member's role). Share links: 401.

Authorization

headerx-api-key<token>

An organization API key (ak_…), with the permissions and the sites it was created with. For servers and scripts: no cookie and no Origin check. Also accepted as Authorization: Bearer ak_… (apiKeyBearer). A request carries one credential: a key sent with a share token or a live session cookie is 400 (details.reason: ambiguous_credentials).

Scope: funnels:read

Path Parameters

siteId*string

Query Parameters

start?string
end?string
last?string
all?"true"
Value in"true"
tz?string
bucket?string
Value in"minute""5m""15m""hour""day""week""month""year"
filters?string
Lengthlength <= 64000
segment?string
Match^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
Formatuuid

Request Body

application/json
  1. body
steps*array<||>
Items2 <= items <= 10
windowSeconds?|null

Response Body

OK

application/json
  1. response
data*
meta*
Example Request
curl -X POST 'https://pilotfox.app/api/v1/sites/string/funnels/analyze' \  -H 'Content-Type: application/json' \  -d '{  "steps": [    {      "kind": "page",      "path": "string"    },    {      "kind": "page",      "path": "string"    }  ]}'
Example Response200
{  "data": {    "unit": "sessions",    "windowSeconds": 0,    "steps": [      {        "step": 0,        "label": "string",        "condition": {          "kind": "page",          "path": "string",          "hostname": "string",          "props": [            {              "key": "string",              "op": "eq",              "value": "string"            }          ]        },        "count": 0,        "conversion": 0,        "dropoff": 0,        "median_seconds": 0      }    ]  },  "meta": {    "window": {      "from": "string",      "to": "string",      "tz": "string",      "bucket": "minute"    },    "compare": {      "from": "string",      "to": "string"    },    "totalCount": -9007199254740991,    "nextCursor": "string",    "truncated": true,    "cache": "hit"  }}