Estructura ApiMp
Métodos, URL, autenticação, cabeçalhos, corpos, status, paginação e limite de requisições da ApiMp.
Métodos
Sección titulada «Métodos»A ApiMp segue o padrão REST:
- POST: criação de registros.
- PUT: atualização de registros.
- GET: consulta e listagem.
Host de todas as requisições:
https://api.demander.com.brExemplos de endpoint:
api-mp/v1/clientes(GET e POST)api-mp/v1/clientes/{id}(PUT)
Autenticação
Sección titulada «Autenticação»A chave vai no cabeçalho CompanyToken.
O cadastro fica no Demander Web, em Configuração da ApiMp.
Cabeçalhos da requisição
Sección titulada «Cabeçalhos da requisição»- Envio: obrigatório informar
CompanyTokeneContent-Type: application/json. - Retorno: depende do método.
- GET:
Content-Typee cabeçalhos de paginação. - POST e PUT: tipo JSON, ID do registro e URL para consultá-lo.
- GET:
Corpos da requisição
Sección titulada «Corpos da requisição»- Envio: validado em POST e PUT. Os campos por método e tabela estão no artigo de campos.
- Resposta: também varia por método e tabela; a lista completa está no mesmo artigo.
Status de resposta
Sección titulada «Status de resposta»- 200: sucesso.
- 201: criação concluída.
- 403: empresa inativa.
- 412: erro no corpo da requisição.
- 422: cadastro não existe.
- 429: muitas requisições em pouco tempo.
Paginação
Sección titulada «Paginação»Vale só no GET. O controle vem em três valores no cabeçalho da resposta:
- Limite de registros: indica se houve paginação.
- Quantidade total de registros: quantos registros voltaram na página (máximo 150).
- Requisições extras: quantas páginas restam com os parâmetros usados.
Controle de performance
Sección titulada «Controle de performance»O limite vale para todos os métodos, pela chave CompanyToken.
Cada empresa tem um teto de requisições. Ao estourar, a API responde HTTP 429 com:
{ "tempo_ate_permitir_novamente": 120, "limite_de_requisicoes": 100}Se o ERP continuar disparando depois do 429, a integração pode ser bloqueada temporariamente:
{ "mensagem": "Integração bloqueada por desrespeitar as políticas de throttling, entre em contato com o suporte.", "tempo_ate_permitir_novamente": 9999999, "limite_de_requisicoes": 0}