Skip to Content
SDKsOther Languages

Other Languages

We provide official SDKs for TypeScript and Python. For all other languages, you can auto-generate a client from our OpenAPI spec or use the REST API directly.

OpenAPI Spec

Our full API specification is available at:

https://docs.sharpapi.io/openapi.json

This is a standard OpenAPI 3.1.0 spec with 34 endpoints, 27 schemas, and full request/response examples. You can use it with any OpenAPI-compatible code generator.

Auto-Generate a Client

Using openapi-generator

The most popular generator supports 50+ languages. Install it and generate a client in one command:

# Install brew install openapi-generator # macOS # or: npm install -g @openapitools/openapi-generator-cli # Generate Go client openapi-generator generate \ -i https://docs.sharpapi.io/openapi.json \ -g go \ -o ./sharpapi-go \ --additional-properties=packageName=sharpapi
package 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)) }

Using openapi-fetch (TypeScript alternative)

If you prefer a lighter TypeScript client without our full SDK:

npm install openapi-fetch openapi-typescript npx openapi-typescript https://docs.sharpapi.io/openapi.json -o ./sharpapi.d.ts
import 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' } }, })

Plain REST API

No SDK needed — our API is standard REST with JSON responses. Any HTTP client works:

curl -H "X-API-Key: sk_live_..." \ "https://api.sharpapi.io/api/v1/odds?league=nba"

SSE Streaming

SSE works with any language that supports EventSource or HTTP streaming. See the streaming docs for the event protocol.

Auto-generated clients do not include SSE streaming support. For real-time streaming, use our TypeScript SDK or implement the SSE protocol directly — it’s just a long-lived HTTP GET with text/event-stream content type.

Last updated on