Listar etapas
curl --request GET \
--url https://api.ziala.com.br/v1/pipeline_stages \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.ziala.com.br/v1/pipeline_stages"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.ziala.com.br/v1/pipeline_stages', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": [
{
"id": "3f6c2a9e-8b1d-4c7e-9a52-1e0d6b7f4a10",
"pipeline_id": "e2a9f4c1-7b3d-4f6e-a1c8-9d0b5e2f7a33",
"pipeline_name": "Vendas",
"key": "qualificando",
"label": "Qualificando",
"sort_order": 2,
"is_won": false,
"is_lost": false,
"is_terminal": false
}
],
"next_cursor": "eyJ0IjoiM2Y2YzJhOWUiLCJ0cyI6IjIwMjYtMTEtMDNUMTQ6MzE6MDIuMDAwWiJ9",
"has_more": false,
"sync_watermark": "2026-10-13T14:29:00.000Z"
}{
"type": "about:blank",
"title": "Requisição inválida",
"status": 400,
"detail": "limit deve ser um número inteiro de 1 a 200.",
"request_id": "req-3f2a"
}{
"type": "about:blank",
"title": "Requisição inválida",
"status": 400,
"detail": "limit deve ser um número inteiro de 1 a 200.",
"request_id": "req-3f2a"
}{
"type": "about:blank",
"title": "Requisição inválida",
"status": 400,
"detail": "limit deve ser um número inteiro de 1 a 200.",
"request_id": "req-3f2a"
}{
"type": "about:blank",
"title": "Requisição inválida",
"status": 400,
"detail": "limit deve ser um número inteiro de 1 a 200.",
"request_id": "req-3f2a"
}{
"type": "about:blank",
"title": "Requisição inválida",
"status": 400,
"detail": "limit deve ser um número inteiro de 1 a 200.",
"request_id": "req-3f2a"
}Funis
Listar etapas
Lista todas as etapas de todos os funis da conta, numa página só. next_cursor, has_more e sync_watermark existem só para manter o formato comum das listas.
GET
/
v1
/
pipeline_stages
Listar etapas
curl --request GET \
--url https://api.ziala.com.br/v1/pipeline_stages \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.ziala.com.br/v1/pipeline_stages"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.ziala.com.br/v1/pipeline_stages', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": [
{
"id": "3f6c2a9e-8b1d-4c7e-9a52-1e0d6b7f4a10",
"pipeline_id": "e2a9f4c1-7b3d-4f6e-a1c8-9d0b5e2f7a33",
"pipeline_name": "Vendas",
"key": "qualificando",
"label": "Qualificando",
"sort_order": 2,
"is_won": false,
"is_lost": false,
"is_terminal": false
}
],
"next_cursor": "eyJ0IjoiM2Y2YzJhOWUiLCJ0cyI6IjIwMjYtMTEtMDNUMTQ6MzE6MDIuMDAwWiJ9",
"has_more": false,
"sync_watermark": "2026-10-13T14:29:00.000Z"
}{
"type": "about:blank",
"title": "Requisição inválida",
"status": 400,
"detail": "limit deve ser um número inteiro de 1 a 200.",
"request_id": "req-3f2a"
}{
"type": "about:blank",
"title": "Requisição inválida",
"status": 400,
"detail": "limit deve ser um número inteiro de 1 a 200.",
"request_id": "req-3f2a"
}{
"type": "about:blank",
"title": "Requisição inválida",
"status": 400,
"detail": "limit deve ser um número inteiro de 1 a 200.",
"request_id": "req-3f2a"
}{
"type": "about:blank",
"title": "Requisição inválida",
"status": 400,
"detail": "limit deve ser um número inteiro de 1 a 200.",
"request_id": "req-3f2a"
}{
"type": "about:blank",
"title": "Requisição inválida",
"status": 400,
"detail": "limit deve ser um número inteiro de 1 a 200.",
"request_id": "req-3f2a"
}Autorizações
Chave da API da conta, no formato zk_live_….
Resposta
Todas as etapas.
Show child attributes
Show child attributes
Cursor da próxima página. Sempre null: o endpoint devolve tudo numa página.
Exemplo:
"eyJ0IjoiM2Y2YzJhOWUiLCJ0cyI6IjIwMjYtMTEtMDNUMTQ6MzE6MDIuMDAwWiJ9"
true se há mais páginas. Sempre false: o endpoint devolve tudo numa página.
Exemplo:
false
Instante até o qual esta leitura está completa, igual em todas as páginas. Envie como updated_since na próxima sincronização.
Exemplo:
"2026-10-13T14:29:00.000Z"