{"openapi":"3.0.3","info":{"title":"Hablazap API v1","version":"1.0.0","description":"API aberta da Hablazap. Autentique com `Authorization: Bearer <sua-chave>` (gerada em Configurações → API & Webhooks)."},"servers":[{"url":"https://hablazapoficial.com.br/api/v1"}],"security":[{"bearerAuth":[]}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer"}}},"paths":{"/contatos":{"get":{"summary":"Lista contatos","parameters":[{"name":"limite","in":"query","schema":{"type":"integer","default":200,"maximum":500}}],"responses":{"200":{"description":"OK"},"401":{"description":"Chave inválida"}}},"post":{"summary":"Cria contatos","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"nome":{"type":"string"},"telefone":{"type":"string"},"email":{"type":"string"},"canal":{"type":"string"},"anotacoes":{"type":"string"}}}}}},"responses":{"200":{"description":"Criado"},"400":{"description":"Dados inválidos"}}}},"/contatos/{id}":{"get":{"summary":"Busca contatos por id","responses":{"200":{"description":"OK"},"404":{"description":"Não encontrado"}}},"post":{"summary":"Cria contatos","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"nome":{"type":"string"},"telefone":{"type":"string"},"email":{"type":"string"},"canal":{"type":"string"},"anotacoes":{"type":"string"}}}}}},"responses":{"200":{"description":"Criado"},"400":{"description":"Dados inválidos"}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"put":{"summary":"Atualiza contatos","responses":{"200":{"description":"Atualizado"},"400":{"description":"Dados inválidos"}}}},"/tickets":{"get":{"summary":"Lista tickets","parameters":[{"name":"limite","in":"query","schema":{"type":"integer","default":200,"maximum":500}}],"responses":{"200":{"description":"OK"},"401":{"description":"Chave inválida"}}},"post":{"summary":"Cria tickets","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"contato_id":{"type":"string"},"canal":{"type":"string"},"status":{"type":"string"},"atendente":{"type":"string"}}}}}},"responses":{"200":{"description":"Criado"},"400":{"description":"Dados inválidos"}}}},"/tickets/{id}":{"get":{"summary":"Busca tickets por id","responses":{"200":{"description":"OK"},"404":{"description":"Não encontrado"}}},"post":{"summary":"Cria tickets","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"canal":{"type":"string"},"status":{"type":"string"},"atendente":{"type":"string"}}}}}},"responses":{"200":{"description":"Criado"},"400":{"description":"Dados inválidos"}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"put":{"summary":"Atualiza tickets","responses":{"200":{"description":"Atualizado"},"400":{"description":"Dados inválidos"}}}},"/mensagens":{"get":{"summary":"Lista mensagens","parameters":[{"name":"limite","in":"query","schema":{"type":"integer","default":200,"maximum":500}},{"name":"ticket_id","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"401":{"description":"Chave inválida"}}},"post":{"summary":"Cria mensagens","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"ticket_id":{"type":"string"},"autor":{"type":"string"},"conteudo":{"type":"string"},"midia_url":{"type":"string"}}}}}},"responses":{"200":{"description":"Criado"},"400":{"description":"Dados inválidos"}}}},"/mensagens/{id}":{"get":{"summary":"Busca mensagens por id","responses":{"200":{"description":"OK"},"404":{"description":"Não encontrado"}}},"post":{"summary":"Cria mensagens","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"conteudo":{"type":"string"},"status":{"type":"string"}}}}}},"responses":{"200":{"description":"Criado"},"400":{"description":"Dados inválidos"}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"put":{"summary":"Atualiza mensagens","responses":{"200":{"description":"Atualizado"},"400":{"description":"Dados inválidos"}}}},"/campanhas":{"get":{"summary":"Lista campanhas","parameters":[{"name":"limite","in":"query","schema":{"type":"integer","default":200,"maximum":500}}],"responses":{"200":{"description":"OK"},"401":{"description":"Chave inválida"}}},"post":{"summary":"Cria campanhas","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"nome":{"type":"string"},"canal":{"type":"string"},"status":{"type":"string"},"conteudo":{"type":"string"}}}}}},"responses":{"200":{"description":"Criado"},"400":{"description":"Dados inválidos"}}}},"/campanhas/{id}":{"get":{"summary":"Busca campanhas por id","responses":{"200":{"description":"OK"},"404":{"description":"Não encontrado"}}},"post":{"summary":"Cria campanhas","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"nome":{"type":"string"},"status":{"type":"string"}}}}}},"responses":{"200":{"description":"Criado"},"400":{"description":"Dados inválidos"}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"put":{"summary":"Atualiza campanhas","responses":{"200":{"description":"Atualizado"},"400":{"description":"Dados inválidos"}}}},"/fluxos":{"get":{"summary":"Lista fluxos","parameters":[{"name":"limite","in":"query","schema":{"type":"integer","default":200,"maximum":500}}],"responses":{"200":{"description":"OK"},"401":{"description":"Chave inválida"}}},"post":{"summary":"Cria fluxos","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"nome":{"type":"string"},"gatilho":{"type":"string"},"ativo":{"type":"string"},"definicao":{"type":"string"}}}}}},"responses":{"200":{"description":"Criado"},"400":{"description":"Dados inválidos"}}}},"/fluxos/{id}":{"get":{"summary":"Busca fluxos por id","responses":{"200":{"description":"OK"},"404":{"description":"Não encontrado"}}},"post":{"summary":"Cria fluxos","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"nome":{"type":"string"},"gatilho":{"type":"string"},"ativo":{"type":"string"},"definicao":{"type":"string"}}}}}},"responses":{"200":{"description":"Criado"},"400":{"description":"Dados inválidos"}}},"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"put":{"summary":"Atualiza fluxos","responses":{"200":{"description":"Atualizado"},"400":{"description":"Dados inválidos"}}}}}}