Pular para o conteúdo principal
Caminho no painel: menu da esquerda > Configuração > cartão Painel de Controle > API Tela da API: a versão, a chave Ativado, o botão Opções e a lista de chaves com prefixo, IPs e último acesso Nesta instalação a tela mostra Versão da API: 2.15, e o painel é o 26.1.1.

Ligar e desligar

Em Acesso da API, o botão alterna entre ligado e desligado, e o painel responde que as configurações foram atualizadas.
Desligada, a API responde em HTML, e não no formato que o programa esperaMedido: com o acesso desligado, uma chamada volta com o código 403 e o corpo API is disabled. em text/html. Todo o resto da API responde em JSON. Um programa que leia a resposta como JSON quebra na hora de interpretar, em vez de mostrar o motivo real. Vale prever esse caso no lado de quem consome.

Como um programa se autentica

Conferido: os três formatos de resposta funcionam. A mesma consulta devolveu JSON, XML e YAML conforme o Accept enviado. A sessão do painel não serve para a API. Medido: uma chamada feita do próprio navegador com o administrador logado, e sem a chave, foi recusada do mesmo jeito. O cookie de sessão não vale como autorização, e isso é o comportamento correto.

A documentação vem do próprio servidor

A tela traz três links: a referência em um site do fabricante, e a especificação OpenAPI nos formatos JSON e YAML, servida pelo próprio painel em /api/openapi.json e /api/openapi.yml. Esses dois arquivos respondem sem chave nenhuma. É documentação, não dado do servidor, e ter a especificação da versão exata instalada vale mais que a referência genérica do site.

Criar uma chave

  1. Clique em Adicionar chave API.
  2. Em Nome, escreva algo que identifique quem vai usar a chave.
  3. Em IPs, escreva os endereços ou faixas que podem usá-la.
  4. Clique em Salvar.
Formulário de criação: o campo Nome, o campo IPs e os avisos sobre a chave não ficar guardada em texto claro A chave aparece uma única vez, logo depois de salvar, e não há como recuperá-la depois. Aviso verde dizendo que a chave foi criada, com o valor dela abaixo Conferido no servidor: a chave tem 129 caracteres, no formato prefixo.segredo, com 8 caracteres de prefixo e 120 de segredo. Na tabela do painel fica guardado o prefixo em texto claro e um resumo criptográfico de 69 caracteres no lugar do segredo. O que a tela promete se confirma no banco: o segredo não está lá. O prefixo é o que aparece na coluna PREFIXO DA CHAVE API da lista, e serve para você saber de qual chave se trata sem ter o valor dela.
Chave sem lista de IPs fica sem a barreira de endereçoO campo IPs não é obrigatório. A própria tela recomenda restringir cada chave a um ou mais endereços, e a lista é a única barreira de endereço que a chave tem. Como a chave vale para o servidor inteiro, e a opção padrão ignora os limites das contas, uma chave solta é o acesso mais amplo que existe neste painel.

A recusa por IP é indistinguível de chave errada

Medido, com duas chaves criadas para o teste: A mensagem não separa “a chave está errada” de “a chave está certa e o IP não pode”. Quem estiver depurando uma integração que parou de funcionar precisa conferir os dois lados, e a lista de IPs costuma ser o culpado quando o servidor que consome muda de endereço.

As Opções, que o botão esconde

O botão Opções abre três ajustes que valem para a API inteira. Modal Opções, com as três chaves: ignorar limites, aplicar política de senha e usar hashes de senha
O padrão deixa a API furar o limite do plano, e em silêncioIgnorar limites de recursos vem ligada de fábrica, e o efeito foi medido dos dois lados, numa conta de teste com o limite de encaminhamentos de e-mail posto em zero:Para quem vende hospedagem por plano, isso é receita que escapa sem aviso, e nada no painel avisa que aconteceu. Se o seu sistema de vendas é quem controla o limite, ela pode continuar ligada de propósito. Se quem controla é o painel, desligue.
A API não muda limite de cliente, e mente dizendo que mudouOs limites de recursos são somente leitura na especificação da API. Medido: uma alteração de limite enviada pela API respondeu 200, com o identificador do cliente, e o limite continuou o mesmo. Nenhum erro, nenhum aviso.Uma integração que tente ajustar plano de cliente por aqui vai achar que conseguiu. Limite se muda na tela do cliente, ou pelo pacote de contas.
A política de senha desligada joga a responsabilidade para foraCom Aplique a política de senha desmarcada, a API aceita qualquer senha, e a força dela passa a ser problema de quem chama. A tela diz isso com todas as letras. Ver Política de Senha.

Excluir uma chave

O ícone da lixeira na linha abre uma tela de confirmação, com o nome, o prefixo, os IPs e a data de criação da chave, e uma caixa de Confirmação que precisa ser marcada. Conferido: com a caixa desmarcada, o navegador barra o envio e pede que ela seja marcada. Depois de excluída, a chave para de funcionar na mesma hora: a chamada seguinte volta com 401. Há também Ações em massa > Excluir seleção, para tirar várias de uma vez.

O que a coluna Último acesso conta, e o que não conta

Ela registra o último uso que deu certo. Medido: a chave que foi recusada por IP continuou com o campo vazio depois da tentativa. Tentativa recusada não aparece ali. Ou seja, uma chave com Último acesso vazio pode estar sendo usada e recusada o tempo todo. Para ver tentativa recusada, o lugar é o registro do servidor, não esta tela.

O que pode dar errado

Ver também