Pular para o conteúdo principal

OlaClick Public API

API REST versionada para parceiros externos da OlaClick. Use-a para ler seu menu, gerenciar produtos e ler pedidos de forma programática.

Todas as respostas são JSON. Todas as requisições devem ser feitas via HTTPS.

URL Base​

AmbienteURL Base
Produçãohttps://public-api.olaclick.app

A versão atual da API é v0. Os endpoints de negócio são servidos sob o prefixo de path /v1 (ex.: GET /v1/orders).

Autenticação​

Toda requisição deve ser autenticada. Há duas opções.

1. API key (mais simples)​

Envie sua chave (ela começa com olk_) em toda requisição, usando um destes headers:

# Opção A — X-API-Key
curl https://public-api.olaclick.app/v1/menu \
-H "X-API-Key: olk_your_key_here"

# Opção B — Authorization: Bearer
curl https://public-api.olaclick.app/v1/menu \
-H "Authorization: Bearer olk_your_key_here"

As API keys são emitidas por empresa. Se você ainda não tem uma, solicite-a ao seu contato OlaClick. As chaves são gerenciadas em /auth/api-keys (criar, listar, atualizar, revogar) — veja a seção API Keys na referência.

Trate sua API key como uma senha: nunca a envie para o controle de versão nem a exponha em código client-side. Se uma chave for exposta, revogue-a imediatamente.

Scopes​

Os access tokens OAuth são restritos aos scopes solicitados. Os scopes disponíveis são:

ScopeConcede acesso a
menu:readLer menu, categorias e produtos
menu:writeCriar/atualizar produtos
orders:readListar e ler pedidos
clients:readLer dados de clientes
reports:readLer relatórios e analytics
webhooks:readLer assinaturas de webhook
webhooks:writeCriar/atualizar/excluir assinaturas de webhook
companies:readLer informações da empresa

As API keys recebem scopes no momento em que são criadas.

Limitação de taxa​

As requisições são limitadas por credencial. Se você exceder o limite, receberá 429 Too Many Requests — reduza o ritmo e tente novamente após um breve intervalo. Construa clientes que lidem com respostas 429 de forma adequada, em vez de assumir uma cota fixa.

Erros​

A API usa códigos de status HTTP padrão:

CódigoSignificado
200 / 201Sucesso
400Requisição inválida (parâmetros ou corpo incorretos)
401Credenciais ausentes ou inválidas
403Autenticado, mas sem o scope necessário
404Recurso não encontrado
429Limite de taxa excedido
5xxErro do servidor — seguro repetir requisições idempotentes