Référence API
Temps réel
Aucun modèle disponible pour l'instant
/v1/realtimeUtilisez l'endpoint Realtime lorsque texte et audio doivent transiter par une même connexion persistante. Il est protégé par la même clé API, la même portée de clé, les mêmes autorisations de modèles et les mêmes limites de débit que l'API HTTP.
#Se connecter depuis votre serveur
Ouvrez le WebSocket depuis un processus serveur de confiance et envoyez Authorization: Bearer avec la clé API lors de la négociation (handshake). N'exposez pas de clé API longue durée dans le JavaScript du navigateur : les navigateurs ne peuvent pas joindre cet en-tête de façon sûre, et n'importe qui peut extraire une clé livrée avec l'application.
import WebSocket from "ws";
const socket = new WebSocket("wss://YOUR_DOMAIN/v1/realtime", {
headers: { Authorization: "Bearer sk-YOUR_KEY" },
});
socket.on("open", () => {
// Send standard Realtime session and conversation events here.
});
socket.on("message", (event) => {
// Forward text / audio deltas to your client.
});#Session et flux d'événements
Une fois connecté, envoyez les événements Realtime standard de session et de conversation pour le modèle choisi. Relayez les événements serveur vers votre navigateur via votre propre canal de courte durée : la clé de la plateforme et le WebSocket en amont restent ainsi sous votre contrôle.
1
Connexion
Ouvrez un socket authentifié côté serveur.
2
Configuration
Envoyez la configuration de session et l'entrée de conversation.
3
Relais
Transmettez les deltas à votre client et fermez la session une fois terminé.
#Reconnectez-vous de manière réfléchie
Un WebSocket conserve un état. Si la connexion se ferme, créez une nouvelle session et ne rejouez que l'état applicatif que vous avez volontairement conservé. Traitez 401, 403, 402 et 429 comme des signaux exploitables sur le compte ou la clé ; réessayez les erreurs réseau transitoires et les 5xx avec un backoff borné.
Commencez par HTTP si vous n'avez pas besoin d'audio en direct
Toujours bloqué ?
Envoyez-nous l'ID de requête ou le message d'erreur, et nous examinerons le problème.