AllToken Go SDK

SDK officiel Go avec wrapper HTTP pour les surfaces OpenAI et Anthropic.

Installation

go get
$ go get github.com/alltoken-ai/alltoken-go

Nécessite Go 1.24+.

Démarrage rapide

Une seule clé API vous donne accès aux endpoints compatibles OpenAI et Anthropic :

Go
1package main
2
3import (
4 "context"
5 "encoding/json"
6 "fmt"
7 "os"
8
9 "github.com/alltoken-ai/alltoken-go"
10)
11
12func main() {
13 client, _ := alltoken.New(alltoken.Config{
14 APIKey: os.Getenv("ALLTOKEN_API_KEY"),
15 })
16
17 // Compatible OpenAI (mappe vers /v1)
18 resp, _ := client.OpenAI.Raw.Do(context.Background(), "POST", "/chat/completions", map[string]any{
19 "model": "gpt-4o",
20 "messages": []map[string]string{{"role": "user", "content": "Bonjour !"}},
21 })
22 defer resp.Body.Close()
23
24 var out map[string]any
25 json.NewDecoder(resp.Body).Decode(&out)
26 fmt.Println(out)
27}

Configuration

Go
1client, err := alltoken.New(alltoken.Config{
2 APIKey: "...", // requis
3 BaseURL: "https://api.alltoken.ai", // optionnel
4 HTTPClient: &http.Client{Timeout: 60 * time.Second}, // optionnel
5 DefaultHeaders: map[string]string{"X-My-Tag": "a"}, // optionnel
6})

Surface API

.Raw est un wrapper de client HTTP. L'URL de base et l'authentification sont définies ; appelez .Do(ctx, method, path, body) pour atteindre n'importe quelle route. Le corps est encodé en JSON automatiquement. Les types générés à partir des spécifications OpenAPI via oapi-codegen se trouvent sous internal/gen/.

ChampURL de base
client.OpenAI.Rawhttps://api.alltoken.ai/v1
client.Anthropic.Rawhttps://api.alltoken.ai/anthropic