curl -X PATCH https://api.whaapy.com/funnel/v1/stages/550e8400-e29b-41d4-a716-446655440000 \
-H "Authorization: Bearer wha_TU_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Hot Lead",
"color": "#ef4444"
}'
const stageId = '550e8400-e29b-41d4-a716-446655440000';
const response = await fetch(
`https://api.whaapy.com/funnel/v1/stages/${stageId}`,
{
method: 'PATCH',
headers: {
'Authorization': 'Bearer wha_TU_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
name: 'Hot Lead',
color: '#ef4444'
})
}
);
import requests
stage_id = '550e8400-e29b-41d4-a716-446655440000'
response = requests.patch(
f'https://api.whaapy.com/funnel/v1/stages/{stage_id}',
headers={
'Authorization': 'Bearer wha_TU_API_KEY',
'Content-Type': 'application/json'
},
json={
'name': 'Hot Lead',
'color': '#ef4444'
}
)
$stageId = '550e8400-e29b-41d4-a716-446655440000';
$ch = curl_init("https://api.whaapy.com/funnel/v1/stages/{$stageId}");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PATCH');
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer wha_TU_API_KEY',
'Content-Type: application/json'
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode([
'name' => 'Hot Lead',
'color' => '#ef4444'
]));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
{
"stage": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Hot Lead",
"position": 0,
"color": "#ef4444",
"contact_count": 120,
"created_at": "2026-01-01T00:00:00Z",
"updated_at": "2026-01-28T12:30:00Z"
}
}
Funnels
Actualizar Etapa
Actualiza el nombre o color de una etapa
PATCH
/
funnel
/
v1
/
stages
/
{id}
curl -X PATCH https://api.whaapy.com/funnel/v1/stages/550e8400-e29b-41d4-a716-446655440000 \
-H "Authorization: Bearer wha_TU_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Hot Lead",
"color": "#ef4444"
}'
const stageId = '550e8400-e29b-41d4-a716-446655440000';
const response = await fetch(
`https://api.whaapy.com/funnel/v1/stages/${stageId}`,
{
method: 'PATCH',
headers: {
'Authorization': 'Bearer wha_TU_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
name: 'Hot Lead',
color: '#ef4444'
})
}
);
import requests
stage_id = '550e8400-e29b-41d4-a716-446655440000'
response = requests.patch(
f'https://api.whaapy.com/funnel/v1/stages/{stage_id}',
headers={
'Authorization': 'Bearer wha_TU_API_KEY',
'Content-Type': 'application/json'
},
json={
'name': 'Hot Lead',
'color': '#ef4444'
}
)
$stageId = '550e8400-e29b-41d4-a716-446655440000';
$ch = curl_init("https://api.whaapy.com/funnel/v1/stages/{$stageId}");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PATCH');
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer wha_TU_API_KEY',
'Content-Type: application/json'
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode([
'name' => 'Hot Lead',
'color' => '#ef4444'
]));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
{
"stage": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Hot Lead",
"position": 0,
"color": "#ef4444",
"contact_count": 120,
"created_at": "2026-01-01T00:00:00Z",
"updated_at": "2026-01-28T12:30:00Z"
}
}
Scope requerido:
funnels:writePath Parameters
string
required
UUID de la etapa a actualizar
Body Parameters
string
Nuevo nombre (1-100 caracteres)
string
Nuevo color en formato hex
Envía solo los campos que quieres modificar.
Ejemplos
curl -X PATCH https://api.whaapy.com/funnel/v1/stages/550e8400-e29b-41d4-a716-446655440000 \
-H "Authorization: Bearer wha_TU_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Hot Lead",
"color": "#ef4444"
}'
const stageId = '550e8400-e29b-41d4-a716-446655440000';
const response = await fetch(
`https://api.whaapy.com/funnel/v1/stages/${stageId}`,
{
method: 'PATCH',
headers: {
'Authorization': 'Bearer wha_TU_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
name: 'Hot Lead',
color: '#ef4444'
})
}
);
import requests
stage_id = '550e8400-e29b-41d4-a716-446655440000'
response = requests.patch(
f'https://api.whaapy.com/funnel/v1/stages/{stage_id}',
headers={
'Authorization': 'Bearer wha_TU_API_KEY',
'Content-Type': 'application/json'
},
json={
'name': 'Hot Lead',
'color': '#ef4444'
}
)
$stageId = '550e8400-e29b-41d4-a716-446655440000';
$ch = curl_init("https://api.whaapy.com/funnel/v1/stages/{$stageId}");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PATCH');
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer wha_TU_API_KEY',
'Content-Type: application/json'
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode([
'name' => 'Hot Lead',
'color' => '#ef4444'
]));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
Respuesta Exitosa
{
"stage": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Hot Lead",
"position": 0,
"color": "#ef4444",
"contact_count": 120,
"created_at": "2026-01-01T00:00:00Z",
"updated_at": "2026-01-28T12:30:00Z"
}
}
Errores
400 Bad Request
{
"error": "validation_error",
"message": "Datos inválidos",
"details": {
"color": ["Color inválido. Usar formato hex: #RRGGBB"]
}
}
404 Not Found
{
"error": "not_found",
"message": "Etapa no encontrada"
}
Webhooks
Cuando actualizas una etapa, se dispara el webhookfunnel_stage.updated:
{
"event": "funnel_stage.updated",
"data": {
"stage_id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Hot Lead",
"color": "#ef4444",
"updated_at": "2026-01-28T12:30:00Z"
}
}
Próximos Pasos
Reordenar Etapas
Cambiar posición de etapas
Eliminar Etapa
Eliminar etapa
Was this page helpful?