nodestash
Pipelines

List pipelines

Returns a paginated list of pipelines in the authenticated workspace. Each pipeline includes its stages ordered by position.

GET
/pipelines
AuthorizationBearer <token>

API key from your nodestash dashboard. Pass as a Bearer token in the Authorization header.

In: header

Query Parameters

cursor?string

Opaque pagination cursor returned as next_cursor in a previous response. Pass this to fetch the next page.

limit?string

Maximum number of pipelines to return per page.

Default"20"

Response Body

application/json

application/json

application/json

curl -X GET "https://api.nodestash.io/v1/pipelines"
{
  "data": [
    {
      "id": "pp_8rT4mK9pQsVwXyZaB2cD4",
      "type": "pipeline",
      "attributes": {
        "id": "pp_8rT4mK9pQsVwXyZaB2cD4",
        "name": "Sales Pipeline",
        "description": "Main sales pipeline for inbound leads",
        "is_default": true,
        "stages": [
          {
            "id": "ps_1aB2cD3eF4gH5iJ6kL7m",
            "name": "Qualification",
            "position": 0,
            "type": "open",
            "created_at": "2026-02-01T10:00:00Z",
            "updated_at": "2026-02-01T10:00:00Z"
          },
          {
            "id": "ps_5dE6fG7hI8jK9lM1nO2p",
            "name": "Closed Won",
            "position": 1,
            "type": "won",
            "created_at": "2026-02-01T10:00:00Z",
            "updated_at": "2026-02-01T10:00:00Z"
          },
          {
            "id": "ps_6eF7gH8iJ9kL1mN2oP3q",
            "name": "Closed Lost",
            "position": 2,
            "type": "lost",
            "created_at": "2026-02-01T10:00:00Z",
            "updated_at": "2026-02-01T10:00:00Z"
          }
        ],
        "created_at": "2026-02-01T10:00:00Z",
        "updated_at": "2026-02-01T10:00:00Z"
      }
    }
  ],
  "meta": {
    "request_id": "req_abc123def456",
    "pagination": {
      "next_cursor": null,
      "has_more": false
    }
  }
}
{
  "error": {
    "code": "INVALID_API_KEY",
    "message": "Missing or invalid Authorization header"
  },
  "meta": {
    "request_id": "req_abc123def456"
  }
}
{
  "error": {
    "code": "RATE_LIMITED",
    "message": "Rate limit exceeded"
  },
  "meta": {
    "request_id": "req_abc123def456"
  }
}