Skip to main content
Pipelines model your sales (or other) workflow. Each pipeline has an ordered list of stages, and each stage holds cards — usually one per deal or opportunity. Pipelines and stages are read-only via the API; cards support full CRUD.

Resources

Pipelines

The top-level container, owned by an agent

Stages

Ordered columns within a pipeline

Cards

Individual deals living in a stage

The Pipeline object

string
string
string
string
boolean
boolean
string
ISO 8601 timestamp.
string
ISO 8601 timestamp.

List pipelines

GET
GET /api/v1/pipelines

Query parameters

Example


The Stage object

string
string
string
string
string
Hex color (e.g. "#0586ff").
integer
0-indexed position within the pipeline.
string
string

List pipeline stages

GET
GET /api/v1/pipelines/{id}/stages
Returns every stage in the pipeline, sorted by order_index. Not paginated — the response shape is { "data": [...] } with no pagination object.

Example


The Pipeline Card object

string
string
The stage the card is currently in.
string | null
The contact associated with this card, if any.
string
string | null
string[]
integer
Position within the stage. Lower values sort first.
string | null
ISO 8601 timestamp the card was archived. null if active.
string
string

List pipeline cards

GET
GET /api/v1/pipeline-cards

Query parameters

Example


Get a pipeline card

GET
GET /api/v1/pipeline-cards/{id}

Example


Create a pipeline card

POST
POST /api/v1/pipeline-cards
Requires a key with the write scope.

Body fields

Example


Update a pipeline card

PATCH
PATCH /api/v1/pipeline-cards/{id}
Update any combination of fields. Setting pipeline_stage_id to a new stage moves the card. Setting archived_at to an ISO 8601 timestamp archives the card; setting it to null un-archives it.

Body fields

Example: move a card to a new stage


Delete a pipeline card

DELETE
DELETE /api/v1/pipeline-cards/{id}
Returns 204 No Content. To preserve a card while removing it from active views, set archived_at via Update instead of deleting.