Clientes
Gerencie clientes (CRM) com notas, documentos e contratos associados. Suporta paginacao, busca e filtros por status e tipo de pagamento.
GET
/api/clientsLista clientes com paginacao e filtros.
Parametros
| Nome | Tipo | Obrigatorio | Descricao |
|---|---|---|---|
page(query) | integer | Nao | Pagina(default: 1) |
limit(query) | integer | Nao | Itens por pagina (max 100)(default: 20) |
sortBy(query) | string | Nao | Campo de ordenacao |
sortOrder(query) | string | Nao | asc ou desc |
status(query) | string | Nao | active, inactive, prospect |
paymentType(query) | string | Nao | Tipo de pagamento |
search(query) | string | Nao | Busca por nome, email ou empresa |
curl -s "https://flow.seudominio.com/api/clients?status=active&search=empresa&page=1" \
-H "Authorization: Bearer $TOKEN" | jq .200Lista paginada de clientes
json
{
"success": true,
"data": {
"clients": [
{
"id": "clx...",
"name": "Maria Santos",
"company": "Tech Corp",
"email": "maria@techcorp.com",
"phone": "+5511999999999",
"status": "active",
"paymentType": "mensal",
"value": 5000.00
}
],
"total": 45,
"page": 1,
"limit": 20
}
}POST
/api/clientsCria um novo cliente.
Body
| Nome | Tipo | Obrigatorio | Descricao |
|---|---|---|---|
name | string | Sim | Nome do cliente |
company | string | Nao | Empresa |
email | string | Nao | |
phone | string | Nao | Telefone |
status | string | Nao | active, inactive, prospect |
paymentType | string | Nao | Tipo de pagamento |
value | number | Nao | Valor mensal/contrato |
bash
curl -X POST "https://flow.seudominio.com/api/clients" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Empresa ABC Ltda",
"email": "contato@empresaabc.com.br",
"phone": "+5511999999999",
"status": "active",
"paymentType": "mensal",
"value": 3500.00
}'GET
/api/clients/{id}Retorna detalhes completos de um cliente.
bash
curl -s "https://flow.seudominio.com/api/clients/clx123" \
-H "Authorization: Bearer $TOKEN" | jq .PUT
/api/clients/{id}Atualiza dados de um cliente.
bash
curl -X PUT "https://flow.seudominio.com/api/clients/clx123" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{ "status": "inactive", "value": 0 }'DELETE
/api/clients/{id}Remove um cliente (somente admin).
bash
curl -X DELETE "https://flow.seudominio.com/api/clients/clx123" \
-H "Authorization: Bearer $TOKEN"GET
/api/clients/statsEstatisticas gerais de clientes.
200Estatisticas
json
{
"success": true,
"data": {
"totalClients": 45,
"activeClients": 38,
"inactiveClients": 5,
"prospects": 2,
"totalRevenue": 175000.00
}
}Notas
GET
/api/clients/{id}/notesLista notas de um cliente.
POST
/api/clients/{id}/notesAdiciona uma nota ao cliente.
Body
| Nome | Tipo | Obrigatorio | Descricao |
|---|---|---|---|
content | string | Sim | Conteudo da nota |
bash
curl -X POST "https://flow.seudominio.com/api/clients/clx123/notes" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{ "content": "Cliente solicitou upgrade para plano premium" }'DELETE
/api/clients/{id}/notes/{noteId}Remove uma nota.
Documentos
GET
/api/clients/{id}/documentsLista documentos do cliente.
POST
/api/clients/{id}/documentsFaz upload de um documento (multipart/form-data).
bash
curl -X POST "https://flow.seudominio.com/api/clients/clx123/documents" \
-H "Authorization: Bearer $TOKEN" \
-F "file=@/path/to/contrato.pdf"GET
/api/clients/{id}/documents/{documentId}/fileDownload/visualizacao do documento.
DELETE
/api/clients/{id}/documents/{documentId}Remove um documento.
Contratos
GET
/api/clients/{id}/contractsLista contratos do cliente.
POST
/api/clients/{id}/contractsCria um contrato para o cliente.
Body
| Nome | Tipo | Obrigatorio | Descricao |
|---|---|---|---|
name | string | Sim | Nome do contrato |
paymentType | string | Sim | Tipo de pagamento |
value | number | Sim | Valor |
contractStart | string | Sim | Data inicio (YYYY-MM-DD) |
status | string | Nao | Status do contrato |
PUT
/api/clients/{id}/contracts/{contractId}Atualiza um contrato.
DELETE
/api/clients/{id}/contracts/{contractId}Remove um contrato.