API da Clickmax
A API pública da Clickmax responde em https://mcp.clickmax.io/api/v0. Cada requisição age sobre um workspace e é autenticada pela chave de API desse workspace.
O 0 em /api/v0/ indica que esta versão ainda pode mudar. Endpoints, parâmetros e respostas podem ser alterados sem aviso prévio. Consulte sempre o schema publicado antes de atualizar sua integração.
Bibliotecas
Em JavaScript e TypeScript, use o pacote @clickmax/public-sdk. Ele traz um método tipado para cada endpoint e devolve os erros já no formato descrito em Erros. Em outras linguagens, chame a API por HTTP, como no exemplo em cURL.
Os dois exemplos abaixo fazem a mesma requisição: listam as tags do workspace.
Instalação, opções e tratamento de erros do pacote estão em Como usar o SDK TypeScript da Clickmax.
Autenticação
Proprietários e administradores criam e revogam chaves em Configurações > Conexões > API. Cada workspace pode manter até 5 chaves. Se não achar a tela, pergunte ao Max onde gerar a chave de API: o botão dele abre direto nessa aba.
A chave é exibida somente após a criação e não pode ser consultada novamente. Para substituir uma chave ou alterar seus endereços IP, revogue a anterior e crie outra.
O prefixo identifica o ambiente: cxp_ para produção, cxs_ para staging e cxd_ para desenvolvimento.
Uma chave sem endereços IP permitidos funciona a partir de qualquer IP. Quando a lista é preenchida, a API aceita somente os endereços IPv4 ou IPv6 exatos informados.
Envie a chave em todas as requisições:
A chave age em nome do workspace inteiro. Guarde-a em um servidor, em variável de ambiente ou em um gerenciador de segredos, e nunca a inclua em código que roda no navegador ou em aplicativos.
Uma chave ausente, revogada, de outro ambiente ou usada a partir de um IP fora da lista recebe a mesma resposta 401 com o código unauthorized. A resposta não diz qual dessas condições falhou.
As chaves da API não autenticam conexões MCP. O MCP continua usando OAuth.
Erros
Quando uma requisição falha, a API responde com status 4xx ou 5xx e um corpo JSON como este:
Decida o tratamento pelo type e use o code para casos específicos. Se receber um type que não está listado aqui, trate o erro pelo status HTTP.
Estes são os valores de code mais comuns:
Outros endpoints podem devolver códigos próprios, sempre em minúsculas com sublinhado.
Limite de requisições
A API pública aceita até 100 requisições a cada 10 segundos por workspace. Todas as chaves do workspace compartilham esse limite.
Acima disso, a API responde 429 com type rate_limit, code rate_limit_exceeded e o cabeçalho Retry-After: 10, que é o número de segundos a esperar antes da próxima tentativa. Se o erro se repetir, reduza as requisições simultâneas.