API de Webhook — Documentação Técnica
O módulo bitconn_webhook expõe uma API JSON REST genérica para integração com sistemas externos.
Autenticação
A API aceita dois métodos de autenticação:
API Key (Header)
bash
Bearer Token
bash
A chave/token é configurada por endpoint no Odoo. Cada endpoint pode ter seu próprio token.
Endpoints
search_read — Buscar registros
Parâmetros:
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
model |
string | Sim | Modelo Odoo (ex: res.partner, account.move) |
domain |
JSON array | Não | Domain filter Odoo |
fields |
JSON array | Não | Campos a retornar |
limit |
int | Não | Limite de resultados (default: 100) |
offset |
int | Não | Offset de paginação |
bash
Resposta:
json
create — Criar registro
Body:
json
Resposta:
json
write — Atualizar registro
Body:
json
unlink — Remover registro
Body:
json
Extração de Dados Aninhados (Relation Specs)
A API suporta busca de dados em registros relacionados usando relation specs. Especifique um dicionário no lugar do nome do campo:
json
Isso retorna os dados do parceiro e sua categoria aninhados na resposta, sem precisar de múltiplas chamadas.
Log de Requisições
Cada chamada à API é registrada com:
- Timestamp da requisição
- IP de origem
- Usuário/Método de autenticação
- Payload completo (request)
- Resposta (truncada em 500 caracteres)
- Duração em ms
- Status HTTP
Acesse o log em Webhook → Log de Requisições no Odoo.
Rate Limiting
Por padrão, cada endpoint aceita até 100 requisições por minuto por IP. Excedido o limite, retorna HTTP 429.
O limite é configurável por endpoint.