Essentiel
Référence de l’API
Endpoints, authentification, en-têtes de réponse et erreurs
Aperçu
TokenLab prend en charge les endpoints compatibles avec OpenAI ainsi que les formats de requête Anthropic et Gemini. Les clients OpenAI existants peuvent utiliser /v1 ; choisissez un autre format uniquement lorsque votre application nécessite un comportement spécifique à cette API. POST /v1/responses est optionnel et dépend de la prise en charge par le modèle.
URL de base
https://api.tokenlab.shAuthentification
Les requêtes de modèle utilisent une clé API TokenLab. L’en-tête d’authentification standard est :
Authorization: Bearer sk-your-api-keyGET /v1/models, GET /v1/models/{model} et GET /v1/pricing sont publics et ne nécessitent aucune clé. Anthropic Messages accepte également x-api-key ; Gemini accepte x-goog-api-key ou ?key= ainsi que l’authentification Bearer. /v1/management/* nécessite un jeton de gestion (mt-...).
Obtenez votre clé API depuis la Console.
Politique de livraison
Les requêtes de génération acceptent X-TokenLab-Delivery-Policy: auto | verified | official. Un en-tête de requête remplace le paramètre de la clé API, qui remplace lui-même la valeur par défaut de l’espace de travail (Workspace).
Autoutilise TokenLab Verified lorsqu’il est disponible, puis Official si nécessaire. Vous payez pour l’option qui complète votre requête.TokenLab Verifiedest une livraison vérifiée par TokenLab. Le prix Verified s’applique.Officialest facturé au prix Official, c’est-à-dire le prix public du créateur du modèle.- Les sessions en temps réel utilisent la clé API ou le paramètre de l’espace de travail et n’acceptent pas de remplacement par chaîne de requête (query-string).
Un en-tête invalide renvoie 400. Si l’option demandée n’est pas disponible, TokenLab renvoie 503 delivery_tier_unavailable ainsi qu’un ID de requête. Lisez retryable : lorsque l’opération sélectionnée n’a pas de disponibilité, il est false. Ne répétez pas la même requête sans modification.
Les pages API avec un formulaire de requête acceptent votre clé API TokenLab et envoient de vraies requêtes. Ces requêtes utilisent le solde et les limites de votre compte. Vous pouvez également utiliser cURL, Postman ou un SDK.
Endpoints pris en charge
Chat & Génération de texte
| Endpoint | Méthode | Description |
|---|---|---|
/v1/chat/completions | POST | Complétions de chat compatibles OpenAI |
/v1/messages | POST | API de messages compatible Anthropic |
/v1/responses | POST | API OpenAI Responses |
Embeddings & Rerank
| Endpoint | Méthode | Description |
|---|---|---|
/v1/embeddings | POST | Créer des embeddings de texte |
/v1/rerank | POST | Rerank de documents |
Images
| Endpoint | Méthode | Description |
|---|---|---|
/v1/images/generations | POST | Générer des images à partir de texte |
/v1/images/edits | POST | Modifier des images |
/v1/images/generations/{id} | GET | Chemin d’état de tâche pour les réponses d’image basées sur des tâches |
Les modèles d’image peuvent renvoyer une image terminée ou une tâche asynchrone. Si la réponse inclut poll_url, utilisez cette URL pour vérifier la tâche.
Audio
| Endpoint | Méthode | Description |
|---|---|---|
/v1/audio/speech | POST | Synthèse vocale (TTS) |
/v1/audio/transcriptions | POST | Transcription audio (STT) |
Temps réel
| Endpoint | Méthode | Description |
|---|---|---|
/v1/realtime?model={model} | WS | Sessions WebSocket en temps réel |
Utilisez /v1/realtime pour les mises à niveau WebSocket. Un simple GET /v1/realtime renvoie les métadonnées de l’endpoint. Il ne s’agit pas de la surface REST OpenAI Realtime ; les endpoints client-secret, Calls et les sessions bêta héritées ne sont pas disponibles.
Vidéo
| Endpoint | Méthode | Description |
|---|---|---|
/v1/videos/generations | POST | Créer une tâche de génération vidéo |
/v1/tasks/{id} | GET | Obtenir l’état d’une tâche asynchrone pour les travaux vidéo |
/v1/videos/generations/{id} | GET | Chemin d’état de tâche vidéo compatible avec les anciennes versions |
Utilisez l’URL poll_url renvoyée lors de la création de la tâche. /v1/videos/generations/{id} reste disponible pour les anciens clients.
Tâches asynchrones
| Endpoint | Méthode | Description |
|---|---|---|
/v1/tasks/{id} | GET | État d’une tâche asynchrone |
Les requêtes vidéo, musique, 3D et certaines requêtes d’image peuvent renvoyer cet endpoint dans poll_url.
Musique
| Endpoint | Méthode | Description |
|---|---|---|
/v1/music/generations | POST | Créer une tâche de génération musicale |
/v1/music/generations/{id} | GET | Chemin d’état spécifique à la musique |
Utilisez l’URL poll_url renvoyée. /v1/music/generations/{id} reste disponible pour les clients ayant besoin du chemin spécifique à la musique.
Génération 3D
| Endpoint | Méthode | Description |
|---|---|---|
/v1/3d/generations | POST | Créer une tâche de génération de modèle 3D |
/v1/3d/generations/{id} | GET | Chemin d’état spécifique à la 3D |
Utilisez l’URL poll_url renvoyée. /v1/3d/generations/{id} reste disponible pour les clients ayant besoin du chemin spécifique à la 3D.
Modèles
| Endpoint | Méthode | Description |
|---|---|---|
/v1/models | GET | Lister tous les modèles disponibles |
/v1/models/{model} | GET | Obtenir les informations d’un modèle spécifique |
Gemini (v1beta)
Prise en charge native du format API Google Gemini :
| Endpoint | Méthode | Description |
|---|---|---|
/v1beta/models/{model}:generateContent | POST | Générer du contenu (format Gemini) |
/v1beta/models/{model}:streamGenerateContent | POST | Générer du contenu en flux (format Gemini) |
Les endpoints Gemini prennent en charge l’authentification par paramètre de requête ?key= en plus du jeton Bearer standard.
Format de réponse
Chaque endpoint préserve son format API. Les exemples de succès et d’erreur ci-dessous utilisent le format Chat Completions.
Réponse de succès
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"created": 1234567890,
"model": "gpt-5.6-terra",
"choices": [{"index": 0, "message": {"role": "assistant", "content": "Hello!"}, "finish_reason": "stop"}],
"usage": {
"prompt_tokens": 10,
"completion_tokens": 20,
"total_tokens": 30
}
}Identifiants de requête
Les rejets de requête officiels peuvent inclure upstream avec l’erreur signalée par le service et le nom du service public. Les détails de livraison privés et les identifiants ne font pas partie du contrat de réponse public. Voir Gérer les erreurs API. Utilisez les en-têtes publics ci-dessous lorsqu’ils sont présents.
| En-tête | Description |
|---|---|
X-Routing-Time-MS | Temps passé à sélectionner la livraison, lorsqu’il est disponible |
X-Request-ID | Identifiant de requête pour le support et le débogage, lorsqu’il est disponible |
X-Task-ID | Identifiant de tâche asynchrone public pour les réponses basées sur des tâches, lorsqu’il est disponible |
X-Billing-Transaction-ID | Identifiant de transaction de facturation après facturation finale, lorsqu’il est disponible |
Réponse d’erreur
{
"error": {
"message": "Invalid API key provided",
"type": "invalid_api_key",
"code": "invalid_api_key"
}
}Limites de débit (Rate Limits)
Les limites de débit sont basées sur les rôles et configurables par les administrateurs. Valeurs par défaut :
| Rôle | Requêtes/min |
|---|---|
| Utilisateur | 1 000 |
| Partenaire | 10 000 |
| VIP | 10 000 |
Contactez le support pour des limites de débit personnalisées. Les valeurs exactes peuvent varier selon la configuration du compte.
Lorsque les limites de débit sont dépassées, l’API renvoie un code d’état 429 avec un en-tête Retry-After indiquant la durée d’attente.
Spécification OpenAPI
Spécification OpenAPI
Téléchargez la spécification complète OpenAPI 3.1