Skip to Content
Autenticação

Autenticação

Todas as requisições da API requerem autenticação via uma chave de API. Sua chave começa com sk_ seguido por live_ ou test_.

Métodos de AutenticaçãoPermalink for this section

A SharpAPI suporta três métodos de autenticação, listados em ordem de prioridade:

1. Cabeçalho X-API-Key (Recomendado)Permalink for this section

O método mais seguro para aplicações server-side.

curl -H "X-API-Key: sk_live_your_key" \ https://api.sharpapi.io/api/v1/odds

2. Cabeçalho Authorization BearerPermalink for this section

Formato padrão de bearer token no estilo OAuth.

curl -H "Authorization: Bearer sk_live_your_key" \ https://api.sharpapi.io/api/v1/odds

3. Parâmetro de ConsultaPermalink for this section

Útil para streaming SSE em navegadores onde não é possível definir cabeçalhos personalizados.

curl "https://api.sharpapi.io/api/v1/stream?api_key=sk_live_your_key"

Aviso de Segurança: Nunca exponha sua chave de API em código client-side ou em repositórios públicos. Use um proxy de backend para aplicações de navegador.

Obtendo Sua Chave de APIPermalink for this section

  1. Cadastre-se - Crie uma conta em sharpapi.io/sign-up 
  2. Acesse o Dashboard - Faça login em seu dashboard
  3. Copie a Chave - Sua chave de API é exibida no dashboard principal

Pronto para fazer sua primeira chamada? Siga o guia Início Rápido.

Planos de AssinaturaPermalink for this section

PlanoPreçoRequisições/MinAtraso de DadosPrincipais Recursos
Free$0/mês1260sOdds, Eventos
Hobby$79/mês120Tempo realOdds, Eventos, Arbitragem
Pro$229/mês300Tempo real+ EV, Middles
Sharp$399/mês1.000Tempo real+ Suporte Prioritário
EnterprisePersonalizadoPersonalizadoTempo real+ SLA

Veja Preços para detalhes completos.

Limites de Taxa (Rate Limits)Permalink for this section

Os limites de taxa são aplicados por chave de API. Os limites atuais são retornados nos cabeçalhos de resposta:

X-RateLimit-Limit: 300 X-RateLimit-Remaining: 299 X-RateLimit-Reset: 1705804800
CabeçalhoDescrição
X-RateLimit-LimitMáximo de requisições por minuto para o seu plano
X-RateLimit-RemainingRequisições restantes na janela atual
X-RateLimit-ResetTimestamp Unix de quando o limite é redefinido

Resposta de Limite de TaxaPermalink for this section

Quando excedido, você receberá uma resposta 429:

{ "error": { "code": "rate_limited", "message": "Rate limit exceeded. Upgrade your plan or wait before retrying.", "docs": "https://docs.sharpapi.io/en/authentication#rate-limits" } }

Implemente backoff exponencial ao receber uma resposta 429. Verifique X-RateLimit-Reset para saber quando a janela é redefinida.

Acesso a Recursos por PlanoPermalink for this section

RecursoFreeHobbyProSharpEnterprise
GET /oddsSimSimSimSimSim
GET /odds/bestSimSimSimSimSim
GET /odds/comparisonSimSimSimSimSim
POST /odds/batchSimSimSimSimSim
GET /eventsSimSimSimSimSim
GET /events/:eventIdSimSimSimSimSim
GET /events/:eventId/oddsSimSimSimSimSim
GET /events/:eventId/marketsSimSimSimSimSim
GET /opportunities/evNãoNãoSimSimSim
GET /opportunities/arbitrageNãoSimSimSimSim
GET /opportunities/middlesNãoNãoSimSimSim
GET /streamNãoAdd-onAdd-onAdd-onSim
GET /accountSimSimSimSimSim
GET /account/usageSimSimSimSimSim
GET /account/keysSimSimSimSimSim

O streaming requer o add-on de WebSocket ($99/mês) em qualquer plano pago. O Enterprise inclui streaming sem custo adicional.

Endpoints de Referência PúblicosPermalink for this section

Os seguintes endpoints de dados de referência são acessíveis sem autenticação a 10 requisições/minuto:

  • GET /api/v1/sports - Lista todos os esportes
  • GET /api/v1/leagues - Lista todas as ligas
  • GET /api/v1/sportsbooks - Lista todas as casas de apostas
  • GET /api/v1/markets - Lista todos os tipos de mercado
  • GET /api/v1/health - Verificação de saúde

Requisições autenticadas recebem limites de taxa mais altos com base no seu plano de assinatura.

Códigos de ErroPermalink for this section

Códigos relacionados à autenticação que você verá com mais frequência. Para a lista completa de 19 códigos HTTP mais os 6 códigos de frame WebSocket, consulte Visão Geral da API → Códigos de Erro.

CódigoStatus HTTPDescrição
missing_api_key401Nenhuma chave de API foi fornecida
invalid_api_key401A chave de API foi fornecida mas não é reconhecida
expired_api_key401A chave de API expirou
disabled_api_key401A chave de API está desabilitada, geralmente porque a assinatura expirou
unauthorized401Falha na autenticação por bearer token em endpoints de administração ou monitoramento (distinto de invalid_api_key)
invalid_token401Falha na verificação do token de sessão do dashboard Clerk
tier_restricted403Endpoint ou recurso não disponível no seu plano
rate_limited429Muitas requisições — veja retry_after
too_many_streams429Número máximo de conexões SSE / WebSocket simultâneas atingido
validation_error400Parâmetros de requisição malformados (substitui os obsoletos bad_request / invalid_request)
upstream_error502Problema temporário ao acessar o upstream
internal_error500Erro inesperado do servidor

Formato de Resposta de ErroPermalink for this section

Todos os erros seguem um formato consistente:

{ "error": { "code": "unauthorized", "message": "Invalid API key. Check that your key is correct and active.", "docs": "https://docs.sharpapi.io/en/authentication" } }

Boas PráticasPermalink for this section

  1. Armazene as chaves de forma segura - Use variáveis de ambiente, nunca faça commit no controle de versão
  2. Use requisições server-side - Nunca exponha chaves em JavaScript client-side
  3. Implemente lógica de retry - Trate erros 429 com backoff exponencial
  4. Monitore o uso - Verifique o endpoint /account/usage para acompanhar o consumo
  5. Rotacione chaves regularmente - Use o endpoint /account/keys/:keyId/rotate periodicamente para segurança
Last updated on