Outras Linguagens
Fornecemos SDKs oficiais para TypeScript e Python. Para todas as outras linguagens, você pode gerar automaticamente um cliente a partir da nossa especificação OpenAPI ou utilizar a REST API diretamente.
Especificação OpenAPI
A especificação completa da nossa API está disponível em:
https://docs.sharpapi.io/openapi.jsonEsta é uma especificação OpenAPI 3.1.0 padrão com 34 endpoints, 27 schemas e exemplos completos de requisição/resposta. Você pode utilizá-la com qualquer gerador de código compatível com OpenAPI.
Gerar um Cliente Automaticamente
Utilizando openapi-generator
O gerador mais popular suporta mais de 50 linguagens. Instale-o e gere um cliente em um único comando:
Go
# Instalar
brew install openapi-generator # macOS
# ou: npm install -g @openapitools/openapi-generator-cli
# Gerar cliente Go
openapi-generator generate \
-i https://docs.sharpapi.io/openapi.json \
-g go \
-o ./sharpapi-go \
--additional-properties=packageName=sharpapipackage main
import (
"context"
"fmt"
sharpapi "sharpapi"
)
func main() {
cfg := sharpapi.NewConfiguration()
cfg.AddDefaultHeader("X-API-Key", "sk_live_...")
client := sharpapi.NewAPIClient(cfg)
odds, _, err := client.OddsAPI.GetOdds(context.Background()).
League("nba").
Execute()
if err != nil {
panic(err)
}
fmt.Printf("Got %d odds\n", len(odds.Data))
}Utilizando openapi-fetch (alternativa em TypeScript)
Se você preferir um cliente TypeScript mais leve, sem o nosso SDK completo:
npm install openapi-fetch openapi-typescript
npx openapi-typescript https://docs.sharpapi.io/openapi.json -o ./sharpapi.d.tsimport createClient from 'openapi-fetch'
import type { paths } from './sharpapi'
const api = createClient<paths>({
baseUrl: 'https://api.sharpapi.io/api/v1',
headers: { 'X-API-Key': 'sk_live_...' },
})
const { data } = await api.GET('/odds', {
params: { query: { league: 'nba' } },
})REST API Pura
Não é necessário SDK — nossa API é REST padrão com respostas em JSON. Qualquer cliente HTTP funciona:
curl
curl -H "X-API-Key: sk_live_..." \
"https://api.sharpapi.io/api/v1/odds?league=nba"Streaming SSE
O SSE funciona com qualquer linguagem que suporte EventSource ou streaming HTTP. Consulte a documentação de streaming para conhecer o protocolo de eventos.
Os clientes gerados automaticamente não incluem suporte a streaming SSE. Para streaming em tempo real, utilize o nosso SDK TypeScript ou implemente o protocolo SSE diretamente — trata-se apenas de uma requisição HTTP GET de longa duração com o content type text/event-stream.