Add a stage

Add a stage to a pipeline — appended to the end, or inserted at a position (later stages shift down).

POST https://api.centerfy.ai/webhooks/inbound/pipelines/:id/stages

Headers

HeaderRequiredValueDescription
x-api-keyYesyour sub-account API key (cfy_…)Authenticates the request; or use Authorization: Bearer <key>.

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesThe pipeline id.

Body parameters

NameTypeRequiredDefaultDescription
namestringYes—Stage name.
positionintegerNo—0-based insert position. Defaults to the end.
colorstringNo—Hex colour, e.g. #10B981. Defaults to the app’s palette for that position.

Request body

{
  "name": "Demo booked",
  "position": 1
}

Example

curl -X POST "https://api.centerfy.ai/webhooks/inbound/pipelines/{id}/stages" \
  -H "x-api-key: $CENTERFY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Demo booked",
  "position": 1
}'
import { CenterfyClient } from "@centerfy/sdk";

const centerfy = new CenterfyClient({ apiKey: process.env.CENTERFY_API_KEY! });

const result = await centerfy.pipelines.createStage("<pipelineId>", {
  "name": "Demo booked",
  "position": 1
});
console.log(result);
centerfy pipelines create-stage <pipelineId> '{"name":"Demo booked","position":1}'

MCP tool: centerfy_pipelines_create_stage (see MCP server)

Response

{
  "status": "success",
  "stage": {
    "id": "2d8b4e30-5c6f-4071-8b2c-3d4e5f6a7b82",
    "pipeline_id": "7d2e9f10-4b3c-4a1d-9e8f-2a3b4c5d6e7f",
    "name": "Demo booked",
    "position": 1,
    "color": "#8B5CF6",
    "created_at": "2026-10-02T09:30:00.000Z",
    "updated_at": "2026-10-02T09:30:00.000Z"
  }
}

Errors

  • 404 — if the pipeline is not in this sub-account.

Notes

Returns 201.

© 2026 Centerfy AI. All rights reserved.