Prefere SDK a curl?

Um arquivo nyqo-sdk.js, zero dependências: auth nyq_, atalhos por categoria eRetry-After embutido — com exemplos JS/Python e playground.

Ver SDK JavaScript

Quickstart

  1. Crie sua conta e gere uma chave

    Cadastre-se e gere uma chave nyq_… no painel. Cada chave tem escopo por endpoint e pode ser revogada quando quiser.

    Criar conta grátis
  2. Faça sua primeira chamada

    Busca na web — um GET simples, sem body:

    curl "https://api.nyqo.dev/api/v1/search/web?q=exemplo%20de%20busca&max=5" \n  -H "Authorization: Bearer nyq_sua_chave_aqui"
  3. Trate erros e limites

    Respostas de erro seguem um envelope único (success/error.code/error.message). Recebeu 429? Aguarde os segundos do header Retry-After antes de repetir.

Autenticação

Toda chamada ao data-plane exige sua chave em um header — nunca na query string (?api_key vaza em logs de proxy/CDN e é ignorado). Chaves antigas msk_ são inválidas na Nyqo.

Recomendado: Bearer

curl "https://api.nyqo.dev/api/v1/search/web?q=nyqo&max=3" \
  -H "Authorization: Bearer nyq_sua_chave_aqui"

Alternativa: X-API-Key

curl "https://api.nyqo.dev/api/v1/search/web?q=nyqo&max=3" \
  -H "X-API-Key: nyq_sua_chave_aqui"
  • · Sem chave → 401 com header WWW-Authenticate.
  • · Chave fora do escopo ou plano sem a rota → 403.
  • · Gerencie escopos (allowed_endpoints), rotação e revogação no painel.

Rate limits

  • · Janelas por plano (minuto/hora/dia): cada plano define seus tetos — os valores ao vivo estão em /planos e o uso atual volta nos headers X-RateLimit-* de cada resposta.
  • · Estourou? 429 + Retry-After. Toda quota excedida responde 429 com o envelope rate_limited e header Retry-After: 60 — faça backoff de 60s antes de repetir.
  • · Nyqo Buscas tem limite diário separado (Retry-After: 86400), fora do rate limit normal — a quota de consultas do seu plano aparece no painel.
HTTP/1.1 429 Too Many Requests
Retry-After: 60
Content-Type: application/json

{
  "success": false,
  "error": {
    "code": "rate_limited",
    "message": "Limite de requisições excedido"
  }
}

Códigos de erro

Todo erro volta no mesmo shape — {"success": false, "error": {"code", "message"}} — com mensagens em pt-BR, sem detalhe interno:

{
  "success": false,
  "error": {
    "code": "unauthorized",
    "message": "API key ausente. Use Authorization: Bearer SUA_API_KEY ou o header X-API-Key"
  }
}
StatusCodeMensagemQuando acontece
400bad_requestrequisição inválidaParâmetro faltando ou com formato errado.
401unauthorizednão autenticadoSem chave, chave inválida ou com prefixo antigo (msk_).
403forbiddenacesso negadoSem plano ativo, rota fora do plano ou fora do escopo da chave.
404not_foundnão encontradoPath ou recurso inexistente.
429rate_limitedmuitas requisiçõesQuota estourada — respeite o header Retry-After.
500internal_errorerro internoFalha interna — tente de novo; se persistir, fale com o suporte.
503internal_errorserviço indisponívelInstabilidade temporária — backoff antes de repetir.

Endpoints por categoria

Ver referência completa

Pronto para a primeira chamada? pegue sua chave nyq_.

Conta gratuita, sem cartão. Copie o curl acima e faça requests de verdade em minutos.