---
title: "POST /v1/funnels/{id} | Documentation - Vemetric"
description: "Get funnel results"
url: https://vemetric.com/docs/api/endpoints/post-v1-funnels-id
---

# Get funnel results

Returns results for a funnel in the given date range and with optional filters.

* * *

Method

POST

Path

/v1/funnels/{id}

This endpoint returns funnel results for a specific funnel in your project.

You can use the [list endpoint](https://vemetric.com/docs/api/endpoints/get-v1-funnels) to get available funnels and pick the funnel `id` you want to query.

## Examples

Copy the JSON body of any of these examples, and use it in a `POST` request to `https://api.vemetric.com/v1/funnels/{id}` (replace `{id}` with your funnel id) with your API key.

Further down this page, you can find a [detailed reference](#request-body) of all the available options you can pass.

```json
{
  "dateRange": "30days"
}
```

```json
{
  "dateRange": "30days",
  "filters": [
    {
      "type": "location",
      "country": {
        "operator": "oneOf",
        "value": ["US", "DE"]
      }
    }
  ]
}
```

```json
{
  "dateRange": ["2026-01-01", "2026-01-31"],
  "filters": [
    {
      "type": "utmTags",
      "utmSource": {
        "operator": "eq",
        "value": "google"
      }
    }
  ]
}
```

Be sure to also check out the [filter values endpoint](https://vemetric.com/docs/api/endpoints/post-v1-filters-values) to see which values you can use in the `filters` field.

## Headers

Authorization

required

Project API key (starts with `vem_`), created in the project settings on the API tab. Requests only return data of that key's project.

Example: `Bearer vem_xxxxxxxxxxxx`

## Path Parameters

id

string

Unique funnel id.

Example: `550e8400-e29b-41d4-a716-446655440000`

## Request Body (required)

application/json object

`dateRange`

\* required

Description

Can be either one of the preset strings below, or an array with two date strings \[start, end\]. Date strings can be either in YYYY-MM-DD format or UTC ISO-8601 format with second precision.

Type

"live" | "1hr" | "24hrs" | "7days" | "30days" | "3months" | "6months" | "1year" | array<string, string>

Example

\["2026-01-01T12:00:00Z","2026-01-31T12:00:00Z"\]

* * *

`filters`

Description

Optional filters applied before funnel step evaluation.

Type

array<object>

Show nested properties (12)

`type: page`

Description

Filter based on specific page view properties, like the full URL (origin + path + hash) or its individual parts.

Type

object

Default

"page"

Example

{"type":"page","origin":{"value":"https://example.com","operator":"eq"},"path":{"value":"/blog","operator":"startsWith"}}

Show nested properties (3)

`origin`

Description

Filter based on the page origin (protocol + host). For example, "https://example.com".

Type

object

Show nested properties (2)

`value`

\* required

Description

Value to filter by

Type

string

* * *

`operator`

\* required

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

`path`

Description

Filter based on the page path. For example, "/blog".

Type

object

Show nested properties (2)

`value`

\* required

Description

Value to filter by

Type

string

* * *

`operator`

\* required

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

`hash`

Description

Filter based on the page hash. For example, "#section1".

Type

object

Show nested properties (2)

`value`

\* required

Description

Value to filter by

Type

string

* * *

`operator`

\* required

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

* * *

`type: event`

Description

Filter by event name and/or event property values.

Type

object

Default

"event"

Example

{"type":"event","name":{"operator":"eq","value":"signup"},"properties":\[{"property":"plan","operator":"eq","value":"pro"}\]}

Show nested properties (2)

`name`

Description

Filter by event name.

Type

object

Show nested properties (2)

`value`

\* required

Description

Value to filter by

Type

string

* * *

`operator`

\* required

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

`properties`

Description

Filter by one or more custom event properties.

Type

array<object>

Show nested properties (3)

`property`

\* required

Description

Event property key inside custom event data.

Type

string

Example

"provider"

* * *

`value`

\* required

Description

Event property value to compare against.

Type

string

Example

"github"

* * *

`operator`

\* required

Description

String matching operator for `value`.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

Example

"eq"

* * *

* * *

* * *

`type: user`

Description

Ability to filter for either anonymous or identified users. This is useful when you want to include only known users (for example, for a retention analysis) or only anonymous users (for example, to analyze new visitor behavior).

Type

object

Default

"user"

Example

{"type":"user","anonymous":true}

Show nested properties (1)

`anonymous`

\* required

Description

Filter for anonymous (`true`) or identified (`false`) users.

Type

boolean

Example

true

* * *

* * *

`type: location`

Description

Filter by geographic location fields.

Type

object

Default

"location"

Example

{"type":"location","country":{"operator":"oneOf","value":\["US","DE"\]},"city":{"operator":"oneOf","value":\["Berlin"\]}}

Show nested properties (2)

`country`

Description

Filter by one or more country codes (ISO-3166 alpha-2, e.g. "US").

Type

object

Show nested properties (2)

`value`

\* required

Description

List of values to filter by

Type

array<string>

* * *

`operator`

\* required

Description

Operator to apply for the list filter. The "any" operator means that any value is accepted and effectively disables the filter.

Type

"any" | "oneOf" | "noneOf"

* * *

* * *

`city`

Description

Filter by one or more city names.

Type

object

Example

{"value":\["Berlin","New York"\],"operator":"oneOf"}

Show nested properties (2)

`value`

\* required

Description

List of values to filter by

Type

array<string>

* * *

`operator`

\* required

Description

Operator to apply for the list filter. The "any" operator means that any value is accepted and effectively disables the filter.

Type

"any" | "oneOf" | "noneOf"

* * *

* * *

* * *

`type: referrer`

Description

Filter by referrer name.

Type

object

Default

"referrer"

Example

{"type":"referrer","operator":"eq","value":"Google"}

Show nested properties (2)

`value`

\* required

Description

Referrer value to match. Empty string represents direct/none referrer.

Type

string

Example

"Google"

* * *

`operator`

\* required

Description

String matching operator for `value`.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

Example

"eq"

* * *

* * *

`type: referrerUrl`

Description

Filter by referrer URL.

Type

object

Default

"referrerUrl"

Example

{"type":"referrerUrl","operator":"contains","value":"google.com"}

Show nested properties (2)

`value`

\* required

Description

Referrer URL value to match.

Type

string

Example

"https://google.com"

* * *

`operator`

\* required

Description

String matching operator for `value`.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

Example

"contains"

* * *

* * *

`type: referrerType`

Description

Filter by referrer category/type.

Type

object

Default

"referrerType"

Example

{"type":"referrerType","operator":"oneOf","value":\["search"\]}

Show nested properties (2)

`value`

\* required

Description

List of referrer types to match (for example: `search`, `social`, `email`, `direct`).

Type

array<string>

Example

\["search","social"\]

* * *

`operator`

\* required

Description

List matching operator for `value`.

Type

"any" | "oneOf" | "noneOf"

Example

"oneOf"

* * *

* * *

`type: utmTags`

Description

Filter by one or more UTM parameters.

Type

object

Default

"utmTags"

Example

{"type":"utmTags","utmSource":{"operator":"eq","value":"google"},"utmMedium":{"operator":"eq","value":"cpc"}}

Show nested properties (5)

`utmCampaign`

Description

Filter by UTM campaign.

Type

object

Show nested properties (2)

`value`

\* required

Description

Value to filter by

Type

string

* * *

`operator`

\* required

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

`utmContent`

Description

Filter by UTM content.

Type

object

Show nested properties (2)

`value`

\* required

Description

Value to filter by

Type

string

* * *

`operator`

\* required

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

`utmMedium`

Description

Filter by UTM medium.

Type

object

Show nested properties (2)

`value`

\* required

Description

Value to filter by

Type

string

* * *

`operator`

\* required

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

`utmSource`

Description

Filter by UTM source.

Type

object

Show nested properties (2)

`value`

\* required

Description

Value to filter by

Type

string

* * *

`operator`

\* required

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

`utmTerm`

Description

Filter by UTM term.

Type

object

Show nested properties (2)

`value`

\* required

Description

Value to filter by

Type

string

* * *

`operator`

\* required

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

* * *

`type: browser`

Description

Filter by browser.

Type

object

Default

"browser"

Example

{"type":"browser","operator":"oneOf","value":\["Chrome"\]}

Show nested properties (2)

`value`

\* required

Description

List of browser names to match.

Type

array<string>

Example

\["Chrome","Safari"\]

* * *

`operator`

\* required

Description

List matching operator for `value`.

Type

"any" | "oneOf" | "noneOf"

Example

"oneOf"

* * *

* * *

`type: device`

Description

Filter by device type.

Type

object

Default

"device"

Example

{"type":"device","operator":"oneOf","value":\["desktop"\]}

Show nested properties (2)

`value`

\* required

Description

List of device types to match.

Type

array<string>

Example

\["desktop","mobile"\]

* * *

`operator`

\* required

Description

List matching operator for `value`.

Type

"any" | "oneOf" | "noneOf"

Example

"oneOf"

* * *

* * *

`type: os`

Description

Filter by operating system.

Type

object

Default

"os"

Example

{"type":"os","operator":"oneOf","value":\["macOS"\]}

Show nested properties (2)

`value`

\* required

Description

List of operating system names to match.

Type

array<string>

Example

\["macOS","Windows"\]

* * *

`operator`

\* required

Description

List matching operator for `value`.

Type

"any" | "oneOf" | "noneOf"

Example

"oneOf"

* * *

* * *

`type: funnel`

Description

Filter users based on funnel step completion.

Type

object

Default

"funnel"

Example

{"type":"funnel","id":"550e8400-e29b-41d4-a716-446655440000","step":1,"operator":"completed"}

Show nested properties (3)

`id`

\* required

Description

Funnel ID to evaluate for completion status.

Type

string

Example

"550e8400-e29b-41d4-a716-446655440000"

* * *

`step`

\* required

Description

Zero-based funnel step index to evaluate.

Type

integer

Example

1

* * *

`operator`

\* required

Description

Whether users must have completed or not completed the selected step.

Type

"completed" | "notCompleted"

Example

"completed"

* * *

* * *

* * *

`filtersOperator`

Description

Operator to apply between multiple filters.

Type

"and" | "or"

Default

"and"

* * *

## Responses

200 Success

application/json

`period`

Description

Resolved query period.

Type

object

`from`

Description

Resolved UTC start timestamp for the query window.

Type

string<pattern:^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}Z$>

Example

"2026-01-19T12:30:00Z"

* * *

`to`

Description

Resolved UTC end timestamp for the query window.

Type

string<pattern:^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}Z$>

Example

"2026-01-19T12:30:00Z"

* * *

* * *

`query`

Description

Resolved query configuration used for this response.

Type

object

`dateRange`

Description

Echo of the incoming `dateRange` request field.

Type

"live" | "1hr" | "24hrs" | "7days" | "30days" | "3months" | "6months" | "1year" | array<string, string>

Example

\["2026-01-01T12:00:00Z","2026-01-31T12:00:00Z"\]

* * *

`filters`

Description

Echo of the incoming `filters` request field.

Type

array<object>

Show nested properties (12)

`type: page`

Description

Filter based on specific page view properties, like the full URL (origin + path + hash) or its individual parts.

Type

object

Default

"page"

Example

{"type":"page","origin":{"value":"https://example.com","operator":"eq"},"path":{"value":"/blog","operator":"startsWith"}}

Show nested properties (3)

`origin`

Description

Filter based on the page origin (protocol + host). For example, "https://example.com".

Type

object

Show nested properties (2)

`value`

Description

Value to filter by

Type

string

* * *

`operator`

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

`path`

Description

Filter based on the page path. For example, "/blog".

Type

object

Show nested properties (2)

`value`

Description

Value to filter by

Type

string

* * *

`operator`

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

`hash`

Description

Filter based on the page hash. For example, "#section1".

Type

object

Show nested properties (2)

`value`

Description

Value to filter by

Type

string

* * *

`operator`

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

* * *

`type: event`

Description

Filter by event name and/or event property values.

Type

object

Default

"event"

Example

{"type":"event","name":{"operator":"eq","value":"signup"},"properties":\[{"property":"plan","operator":"eq","value":"pro"}\]}

Show nested properties (2)

`name`

Description

Filter by event name.

Type

object

Show nested properties (2)

`value`

Description

Value to filter by

Type

string

* * *

`operator`

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

`properties`

Description

Filter by one or more custom event properties.

Type

array<object>

Show nested properties (3)

`property`

Description

Event property key inside custom event data.

Type

string

Example

"provider"

* * *

`value`

Description

Event property value to compare against.

Type

string

Example

"github"

* * *

`operator`

Description

String matching operator for `value`.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

Example

"eq"

* * *

* * *

* * *

`type: user`

Description

Ability to filter for either anonymous or identified users. This is useful when you want to include only known users (for example, for a retention analysis) or only anonymous users (for example, to analyze new visitor behavior).

Type

object

Default

"user"

Example

{"type":"user","anonymous":true}

Show nested properties (1)

`anonymous`

Description

Filter for anonymous (`true`) or identified (`false`) users.

Type

boolean

Example

true

* * *

* * *

`type: location`

Description

Filter by geographic location fields.

Type

object

Default

"location"

Example

{"type":"location","country":{"operator":"oneOf","value":\["US","DE"\]},"city":{"operator":"oneOf","value":\["Berlin"\]}}

Show nested properties (2)

`country`

Description

Filter by one or more country codes (ISO-3166 alpha-2, e.g. "US").

Type

object

Show nested properties (2)

`value`

Description

List of values to filter by

Type

array<string>

* * *

`operator`

Description

Operator to apply for the list filter. The "any" operator means that any value is accepted and effectively disables the filter.

Type

"any" | "oneOf" | "noneOf"

* * *

* * *

`city`

Description

Filter by one or more city names.

Type

object

Example

{"value":\["Berlin","New York"\],"operator":"oneOf"}

Show nested properties (2)

`value`

Description

List of values to filter by

Type

array<string>

* * *

`operator`

Description

Operator to apply for the list filter. The "any" operator means that any value is accepted and effectively disables the filter.

Type

"any" | "oneOf" | "noneOf"

* * *

* * *

* * *

`type: referrer`

Description

Filter by referrer name.

Type

object

Default

"referrer"

Example

{"type":"referrer","operator":"eq","value":"Google"}

Show nested properties (2)

`value`

Description

Referrer value to match. Empty string represents direct/none referrer.

Type

string

Example

"Google"

* * *

`operator`

Description

String matching operator for `value`.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

Example

"eq"

* * *

* * *

`type: referrerUrl`

Description

Filter by referrer URL.

Type

object

Default

"referrerUrl"

Example

{"type":"referrerUrl","operator":"contains","value":"google.com"}

Show nested properties (2)

`value`

Description

Referrer URL value to match.

Type

string

Example

"https://google.com"

* * *

`operator`

Description

String matching operator for `value`.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

Example

"contains"

* * *

* * *

`type: referrerType`

Description

Filter by referrer category/type.

Type

object

Default

"referrerType"

Example

{"type":"referrerType","operator":"oneOf","value":\["search"\]}

Show nested properties (2)

`value`

Description

List of referrer types to match (for example: `search`, `social`, `email`, `direct`).

Type

array<string>

Example

\["search","social"\]

* * *

`operator`

Description

List matching operator for `value`.

Type

"any" | "oneOf" | "noneOf"

Example

"oneOf"

* * *

* * *

`type: utmTags`

Description

Filter by one or more UTM parameters.

Type

object

Default

"utmTags"

Example

{"type":"utmTags","utmSource":{"operator":"eq","value":"google"},"utmMedium":{"operator":"eq","value":"cpc"}}

Show nested properties (5)

`utmCampaign`

Description

Filter by UTM campaign.

Type

object

Show nested properties (2)

`value`

Description

Value to filter by

Type

string

* * *

`operator`

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

`utmContent`

Description

Filter by UTM content.

Type

object

Show nested properties (2)

`value`

Description

Value to filter by

Type

string

* * *

`operator`

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

`utmMedium`

Description

Filter by UTM medium.

Type

object

Show nested properties (2)

`value`

Description

Value to filter by

Type

string

* * *

`operator`

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

`utmSource`

Description

Filter by UTM source.

Type

object

Show nested properties (2)

`value`

Description

Value to filter by

Type

string

* * *

`operator`

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

`utmTerm`

Description

Filter by UTM term.

Type

object

Show nested properties (2)

`value`

Description

Value to filter by

Type

string

* * *

`operator`

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

* * *

`type: browser`

Description

Filter by browser.

Type

object

Default

"browser"

Example

{"type":"browser","operator":"oneOf","value":\["Chrome"\]}

Show nested properties (2)

`value`

Description

List of browser names to match.

Type

array<string>

Example

\["Chrome","Safari"\]

* * *

`operator`

Description

List matching operator for `value`.

Type

"any" | "oneOf" | "noneOf"

Example

"oneOf"

* * *

* * *

`type: device`

Description

Filter by device type.

Type

object

Default

"device"

Example

{"type":"device","operator":"oneOf","value":\["desktop"\]}

Show nested properties (2)

`value`

Description

List of device types to match.

Type

array<string>

Example

\["desktop","mobile"\]

* * *

`operator`

Description

List matching operator for `value`.

Type

"any" | "oneOf" | "noneOf"

Example

"oneOf"

* * *

* * *

`type: os`

Description

Filter by operating system.

Type

object

Default

"os"

Example

{"type":"os","operator":"oneOf","value":\["macOS"\]}

Show nested properties (2)

`value`

Description

List of operating system names to match.

Type

array<string>

Example

\["macOS","Windows"\]

* * *

`operator`

Description

List matching operator for `value`.

Type

"any" | "oneOf" | "noneOf"

Example

"oneOf"

* * *

* * *

`type: funnel`

Description

Filter users based on funnel step completion.

Type

object

Default

"funnel"

Example

{"type":"funnel","id":"550e8400-e29b-41d4-a716-446655440000","step":1,"operator":"completed"}

Show nested properties (3)

`id`

Description

Funnel ID to evaluate for completion status.

Type

string

Example

"550e8400-e29b-41d4-a716-446655440000"

* * *

`step`

Description

Zero-based funnel step index to evaluate.

Type

integer

Example

1

* * *

`operator`

Description

Whether users must have completed or not completed the selected step.

Type

"completed" | "notCompleted"

Example

"completed"

* * *

* * *

* * *

`filtersOperator`

Description

Echo of the incoming `filtersOperator` request field.

Type

"and" | "or"

* * *

* * *

`funnel`

Description

Funnel definition for which these results were computed.

Type

object

`id`

Description

Unique funnel id.

Type

string

Example

"550e8400-e29b-41d4-a716-446655440000"

* * *

`name`

Description

Funnel name.

Type

string

Example

"Signup Funnel"

* * *

`icon`

Description

Optional funnel icon.

Type

string | null

Example

"🚀"

* * *

`steps`

Description

Ordered funnel steps.

Type

array<object>

Show nested properties (3)

`id`

Description

Unique funnel step id.

Type

string

Example

"zvpslSIPFJQ6oiRCXPMm3"

* * *

`name`

Description

Name of the funnel step.

Type

string

Example

"Visited Landing Page"

* * *

`filter`

Description

Condition that determines when the funnel step is considered completed. Either a pageview or a custom event filter.

Type

object

Example

{"type":"page","origin":{"value":"https://example.com","operator":"eq"},"path":{"value":"/blog","operator":"startsWith"}}

Show nested properties (2)

`type: page`

Description

Filter based on specific page view properties, like the full URL (origin + path + hash) or its individual parts.

Type

object

Default

"page"

Example

{"type":"page","origin":{"value":"https://example.com","operator":"eq"},"path":{"value":"/blog","operator":"startsWith"}}

Show nested properties (3)

`origin`

Description

Filter based on the page origin (protocol + host). For example, "https://example.com".

Type

object

Show nested properties (2)

`value`

Description

Value to filter by

Type

string

* * *

`operator`

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

`path`

Description

Filter based on the page path. For example, "/blog".

Type

object

Show nested properties (2)

`value`

Description

Value to filter by

Type

string

* * *

`operator`

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

`hash`

Description

Filter based on the page hash. For example, "#section1".

Type

object

Show nested properties (2)

`value`

Description

Value to filter by

Type

string

* * *

`operator`

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

* * *

`type: event`

Description

Filter by event name and/or event property values.

Type

object

Default

"event"

Example

{"type":"event","name":{"operator":"eq","value":"signup"},"properties":\[{"property":"plan","operator":"eq","value":"pro"}\]}

Show nested properties (2)

`name`

Description

Filter by event name.

Type

object

Show nested properties (2)

`value`

Description

Value to filter by

Type

string

* * *

`operator`

Description

Operator to apply for the string filter. "eq" means equals, "notEq" means not equals.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

* * *

* * *

`properties`

Description

Filter by one or more custom event properties.

Type

array<object>

Show nested properties (3)

`property`

Description

Event property key inside custom event data.

Type

string

Example

"provider"

* * *

`value`

Description

Event property value to compare against.

Type

string

Example

"github"

* * *

`operator`

Description

String matching operator for `value`.

Type

"any" | "eq" | "notEq" | "contains" | "notContains" | "startsWith" | "endsWith"

Example

"eq"

* * *

* * *

* * *

* * *

* * *

`createdAt`

Description

Funnel creation timestamp (ISO 8601).

Type

string

Example

"2026-03-01T10:00:00.000Z"

* * *

`updatedAt`

Description

Funnel last update timestamp (ISO 8601).

Type

string

Example

"2026-03-02T11:30:00.000Z"

* * *

* * *

`results`

Description

Funnel results for the given query.

Type

object

`activeUsers`

Description

Users active in the period and matching filters.

Type

integer

Example

245

* * *

`steps`

Description

Per-step user counts in funnel order.

Type

array<object>

Show nested properties (4)

`id`

Description

Unique funnel step id.

Type

string

Example

"zvpslSIPFJQ6oiRCXPMm3"

* * *

`name`

Description

Name of the funnel step.

Type

string

Example

"Visited Landing Page"

* * *

`users`

Description

Users that reached this step.

Type

integer

Example

128

* * *

`conversionRate`

Description

Step-to-step conversion rate in percent. First step is always 100 (or 0 if empty).

Type

number

Example

65.3

* * *

* * *

`conversionRate`

Description

Conversion rate from first funnel step to last funnel step, in percent.

Type

number

Example

32.81

* * *

`activeUserConversionRate`

Description

Conversion rate from active users to last funnel step, in percent.

Type

number

Example

18.26

* * *

* * *

400 Bad request - invalid request payload or parameters

application/json

`error`

Description

Error details.

Type

object

`code`

Description

Machine-readable error code. `HTTP_ERROR` is returned for a malformed JSON body.

Type

"VALIDATION\_ERROR" | "HTTP\_ERROR"

* * *

`message`

Description

Human-readable error message.

Type

string

* * *

`details`

Description

Per-field validation issues. Only present for `VALIDATION_ERROR`.

Type

array<object>

Show nested properties (2)

`field`

Description

Path to the invalid request field.

Type

string

Example

"groupBy.0"

* * *

`message`

Description

Validation error message for the field.

Type

string

* * *

* * *

* * *

401 Unauthorized - missing, malformed, invalid or revoked API key

application/json

`error`

Description

Error details.

Type

object

`code`

Description

Machine-readable error code.

Type

"UNAUTHORIZED"

* * *

`message`

Description

Human-readable error message.

Type

string

* * *

* * *

403 Requested date range is not allowed for the current plan

application/json

`error`

Description

Error details.

Type

object

`code`

Description

Machine-readable error code.

Type

"PLAN\_LIMIT\_EXCEEDED"

* * *

`message`

Description

Human-readable error message.

Type

string

* * *

* * *

404 Funnel was not found

application/json

`error`

Description

Error details.

Type

object

`code`

Description

Machine-readable error code.

Type

"FUNNEL\_NOT\_FOUND"

* * *

`message`

Description

Human-readable error message.

Type

string

* * *

* * *

429 Rate limit exceeded - retry after the number of seconds in the Retry-After header

application/json

`error`

Description

Error details.

Type

object

`code`

Description

Machine-readable error code.

Type

"RATE\_LIMIT\_EXCEEDED"

* * *

`message`

Description

Human-readable error message.

Type

string

* * *

* * *

500 Unexpected internal error

application/json

`error`

Description

Error details.

Type

object

`code`

Description

Machine-readable error code.

Type

"INTERNAL\_ERROR"

* * *

`message`

Description

Human-readable error message.

Type

string

* * *

* * *
