Introdução
Ambientes, ativação por feature flag, base URL e o namespace /integration/v1 da API de integração OnmIA.
A OnmIA Integration API v1 é a superfície REST server-to-server para ERPs, PDVs e middlewares integrarem catálogo, estoque, pedidos e webhooks com a plataforma OnmIA. O contrato formal (schemas completos de request/response) vive na API Reference, gerada do OpenAPI.
Base URL
Produção:
https://api.onmia.com.brTodas as rotas vivem sob o namespace versionado:
/integration/v1Ambientes e ativação
Só existe produção
A API v1 existe somente em produção (https://api.onmia.com.br). Não há
ambiente sandbox separado. Os testes acontecem em produção com uma chave de
teste restrita a uma loja de teste.
- A API é protegida por feature flag no servidor. Enquanto o ambiente não
estiver habilitado, toda chamada — inclusive
/health— retorna503 FEATURE_DISABLED. Isso não é problema da sua chave: é o ambiente que ainda não foi ligado pela OnmIA. - A chave de teste tem
store_idslimitado à loja de teste. É o fluxo previsto no runbook de go-live: você valida catálogo, pedido e webhook contra essa loja antes de receber a chave definitiva.
O que a API faz
| Domínio | Rota principal | Scope |
|---|---|---|
| Health / credential check | GET /integration/v1/health | (nenhum) |
| Catálogo | POST /integration/v1/products/bulk | catalog:write |
| Estoque e preço | PATCH /integration/v1/stock | stock:write |
| Pedidos | POST / GET / PATCH /integration/v1/orders | orders:write · orders:read |
| Webhooks | /integration/v1/webhooks | webhooks:manage |
Primeiro teste
O endpoint /health não exige nenhum scope — serve como verificação de
credencial:
curl -sS https://api.onmia.com.br/integration/v1/health \
-H "X-API-Key: $ONMIA_API_KEY"Resposta esperada (200):
{
"status": "ok",
"merchant_id": "b9e9ad81-0000-0000-0000-000000000000",
"store_ids": [],
"scopes": ["catalog:write", "stock:write", "orders:write", "orders:read", "webhooks:manage"],
"ts": "2026-06-12T12:00:00.000Z"
}store_ids: [] significa todas as lojas do merchant. Quando vier
preenchido, a chave só pode escrever/ler aquelas lojas.
Sequência recomendada de integração
- Receber a chave de teste e chamar
/health. - Enviar 1 produto com
products/bulke conferirsummary/results. - Ajustar estoque/preço com
PATCH /stock. - Enviar 1 pedido com 2 itens e guardar
order_id/display_number. - Reenviar o mesmo pedido e validar
replayed: true. - Consultar pedido por
external_order_id. - Registrar webhook (guardar o
secretexibido uma única vez) e chamar/webhooks/{id}/test. - Validar a assinatura HMAC no ERP (raw body + janela de timestamp + compare em tempo constante).
- Rodar um caso real de status
cancellede confirmar oorder.status_changedno receptor. - Conferir
GET /webhooks/{id}/deliveriese só então trocar para a chave definitiva.
Emissão de chave
A emissão da chave de API é feita no painel admin da OnmIA, fora deste portal. Este portal apenas documenta o consumo da API.