Skip to main content
POST
/
funnel
/
v1
/
stages
curl -X POST https://api.whaapy.com/funnel/v1/stages \
  -H "Authorization: Bearer wha_TU_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Negotiation",
    "color": "#f59e0b"
  }'
{
  "stage": {
    "id": "550e8400-e29b-41d4-a716-446655440003",
    "name": "Negotiation",
    "position": 3,
    "color": "#f59e0b",
    "contact_count": 0,
    "created_at": "2026-01-28T12:00:00Z",
    "updated_at": "2026-01-28T12:00:00Z"
  }
}
Scope requerido: funnels:write
Agrega una nueva etapa a tu funnel. Por defecto se coloca al final.
Si no especificas position, la etapa se agregará automáticamente al final del funnel.

Body Parameters

name
string
required
Nombre de la etapa (1-100 caracteres)
color
string
default:"#6366f1"
Color en formato hex. Ej: #10b981
position
number
Posición en el funnel (0 = primera). Si no se proporciona, se asigna al final.

Ejemplos

curl -X POST https://api.whaapy.com/funnel/v1/stages \
  -H "Authorization: Bearer wha_TU_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Negotiation",
    "color": "#f59e0b"
  }'

Respuesta Exitosa

{
  "stage": {
    "id": "550e8400-e29b-41d4-a716-446655440003",
    "name": "Negotiation",
    "position": 3,
    "color": "#f59e0b",
    "contact_count": 0,
    "created_at": "2026-01-28T12:00:00Z",
    "updated_at": "2026-01-28T12:00:00Z"
  }
}

Errores

{
  "error": "validation_error",
  "message": "Datos inválidos",
  "details": {
    "name": ["El nombre es requerido"],
    "color": ["Color inválido. Usar formato hex: #RRGGBB"]
  }
}

Webhooks

Cuando creas una etapa, se dispara el webhook funnel_stage.created:
{
  "event": "funnel_stage.created",
  "data": {
    "stage_id": "550e8400-e29b-41d4-a716-446655440003",
    "name": "Negotiation",
    "position": 3,
    "color": "#f59e0b",
    "created_at": "2026-01-28T12:00:00Z"
  }
}

Próximos Pasos