▸ API · Referência

Conta

GET /me — o ping autenticado.

atualizado em 2 set 2026versão v1

Confirma que a chave funciona

GET/v1/public/meescopo: scans:read

Ping autenticado: devolve a conta dona da chave, os escopos que ela carrega e o plano em vigor. É o primeiro request de toda integração nova — e o primeiro a rodar quando algo para de funcionar.

Repare que exige scans:read: uma chave criada só com apps:read recebe 403 aqui, mesmo sendo válida. Nesse caso, teste com GET /apps.

Requisição

curl
curl https://api.guarita.dev/v1/public/me \
  -H "Authorization: Bearer $GUARITA_API_KEY"

Resposta 200

A chave é válida. Objeto Me.

200 · application/json
{
  "account_id": "acc_9f2c1b7e",
  "key_id": "key_3a8d41c6",
  "scopes": [
    "scans:read",
    "scans:write",
    "apps:read"
  ],
  "plan": "pro"
}

Campos da resposta

CampoDescrição
account_id
stringsempre
Id da conta dona da chave.
key_id
stringsempre
Id da chave — o mesmo que aparece em Configurações → Desenvolvedores. Use no log da integração pra saber qual chave está rodando sem imprimir o segredo.
scopes
string[]sempre
Escopos da chave, fixados na criação.
scans:readscans:writeapps:read
plan
stringsempre
Plano EFETIVO da conta agora — o mesmo que decide cota e recursos. Na prática vem pro ou business: sem API no plano, a chave nem autentica.
freestarterprobusiness

Erros

  • 401unauthorizedChave ausente, fora do formato Bearer gsk_…, inexistente, revogada — ou o plano da conta deixou de incluir a API. O corpo é o MESMO em todos os casos, de propósito. Vem com o header WWW-Authenticate.
  • 403insufficient_scopeA chave é válida, mas não tem o escopo da rota.
  • 400bad_requestCorpo malformado (JSON inválido). O status acompanha o motivo: 413 com corpo acima de 1 MB, 415 com Content-Type que não seja JSON — o código error continua bad_request.
  • 500internalErro nosso.
Achou algo errado ou faltando? help@guarita.dev — com o x-request-id, se for sobre uma resposta.