---
title: "Funnel analysis"
method: GET
path: "/api/2/funnels"
tags: ["Analytics"]
---

# Funnel analysis

`GET /api/2/funnels`

## Request

- Base URL: `https://amplitude.com`
- URL: `https://amplitude.com/api/2/funnels`
- Auth: HTTP basic

Return conversion data for a series of events. Repeat the `e` parameter once per funnel step, in order.

## Query parameters

- `e` string, required
- `start` string, required
- `end` string, required
- `mode` 'ordered' | 'unordered' | 'sequential'
- `n` 'new' | 'active'
- `cs` integer
- `s` string
- `g` string
- `limit` integer

## Response `200`

Funnel step counts and conversion rates.

- object

## Other responses

- `400`: Invalid request. Check that JSON query parameters are well formed and that special characters are URL encoded.
- `401`: Missing or invalid credentials. Send HTTP Basic auth with the project API key as the username and the secret key as the password.
- `429`: Concurrent or hourly rate limit exceeded for the project. The response identifies which limit was hit. Up to 5 concurrent requests are allowed across Amplitude REST endpoints.

## Changes

- **2026-10-14** `e475ad97669a`: 3 info
  - added the media type `*/*` for the response with the status `400`
  - added the media type `*/*` for the response with the status `401`
  - added the media type `*/*` for the response with the status `429`

[Operation history](https://skmtc.dev/amplitude/apis/amplitude-public-apis/changes/api/2/funnels/get.md)

---

[API](https://skmtc.dev/amplitude/apis/amplitude-public-apis.md) - [All operations](https://skmtc.dev/amplitude/apis/amplitude-public-apis/llms.txt) - [OpenAPI document](https://skmtc.dev/amplitude/apis/amplitude-public-apis/revisions/e475ad97669a?raw)
