Commencer

Clés API et authentification

Chaque requête contient une clé API. Les clés appartiennent à un espace de travail et consomment son solde ; chacune peut avoir ses propres budgets, modèles et adresses autorisés.

Envoi de la clé

Les deux en-têtes fonctionnent sur tous les endpoints :

En-têtes
Authorization: Bearer zr_live_your_key_here
# or, as Anthropic's SDKs send it:
x-api-key: zr_live_your_key_here

Les clés commencent par zr_live_. La clé complète ne s’affiche qu’une fois, à sa création ; nous ne conservons qu’un hachage, donc personne (pas même nous) ne peut vous la montrer à nouveau. Vous l’avez perdue ? Révoquez-la et créez-en une autre.

Connexion d’un agent IA

Un agent (OpenClaw, Hermes, Manus ou le vôtre) peut obtenir sa propre clé sans que personne ait à en copier une : il demande un lien, la personne qui l’utilise l’autorise sur zurelay.com avec une limite quotidienne, puis l’agent récupère la clé. Le principe est le même que pour se connecter sur une TV (flux d’autorisation des appareils OAuth, RFC 8628). Ces deux appels ne nécessitent aucune clé.

POST/connect
namestring
Le nom que se donne l’agent, affiché sur la page d’autorisation ; la clé porte ce nom. Facultatif.
Demandez un lien
curl -X POST https://api.zurelay.com/connect \
-H "Content-Type: application/json" \
-d '{"name": "OpenClaw"}'
{
"status": "pending",
"device_code": "zr_dc_…",
"user_code": "WDJB-MJHT",
"verification_uri": "https://zurelay.com/connect",
"verification_uri_complete": "https://zurelay.com/connect?code=WDJB-MJHT",
"expires_in": 900,
"interval": 2
}

Affichez verification_uri_complete et le code à la personne. Elle se connecte, vérifie que le code correspond, choisit l’espace de travail et une limite quotidienne, puis donne son autorisation dans les 15 minutes. Réservez device_code à l’agent : c’est ce qui lui permet de récupérer la clé.

POST/connect/key
device_codestringrequis
Depuis POST /connect.
waitseconds
Durée d’attente de l’autorisation avant de répondre pending, de 0 à 25. Valeur par défaut : 25.
Récupérez la clé
curl -X POST https://api.zurelay.com/connect/key \
-H "Content-Type: application/json" \
-d '{"device_code": "zr_dc_…"}'
{
"status": "approved",
"api_key": "zr_live_…",
"key_name": "OpenClaw",
"workspace": "Acme",
"daily_limit_usd": 10,
"base_url": "https://api.zurelay.com/v1"
}
HTTPstatusSignification
202pendingPas encore approuvé. Réessayez ; chaque appel attend jusqu’à 25 secondes.
200approvedVoici la clé. Si vous la redemandez dans les 30 minutes suivant l’approbation, vous recevrez la même clé, au cas où une réponse aurait été perdue.
403deniedLa personne a refusé.
410expiredAucune approbation dans les 15 minutes, ou clé récupérée trop tard. Recommencez.
410revokedLa clé a été révoquée sur la page des clés API.
404unknownAucune demande ne correspond à ce code d’appareil.
La clé est une clé classique sur la page des clés API, au nom de l’agent, avec la limite quotidienne choisie par la personne. Modifiez ses règles sur cette page, ou révoquez-la pour déconnecter l’agent. Les agents consultent aussi les instructions de configuration sur zurelay.com/skill.md.

Protéger vos clés

  • Conservez vos clés dans un gestionnaire de secrets ou des variables d’environnement, jamais dans du code ou un dépôt.
  • Appelez Zurelay depuis votre serveur. Une clé intégrée à un navigateur ou à une application mobile peut être lue par toute personne ayant accès à l’application.
  • Utilisez une clé par application ou environnement (par exemple, production et staging), pour pouvoir en révoquer une sans toucher aux autres.
  • Limitez chaque clé au nécessaire : un budget, les modèles qu’elle appelle, les adresses depuis lesquelles elle est utilisée. Voir Limites et règles des clés.
  • Si une clé fuite, révoquez-la dans la rubrique Clés API. Les requêtes utilisant cette clé sont bloquées sous 15 secondes.

Les limites applicables à une clé

Monthly budgetUSD
Dépenses autorisées par mois calendaire (UTC).
Daily budgetUSD
Dépenses autorisées par jour (UTC).
Rate limitrequests / minute
Requêtes par minute ; au-delà, elles sont refusées avec le code 429.
Expirydate
Passé ce délai, la clé cesse de fonctionner.
Allowed modelslist
Seuls ces modèles sont autorisés ; les autres sont refusés avec le code 403.
Allowed IP addresseslist
Seules les requêtes provenant de ces adresses ou plages d’adresses sont autorisées.
Smart routingsetting
Que se passe-t-il lorsqu’un modèle est indisponible : voir Routage intelligent.

Erreurs d’authentification

StatutCodeSignification
401missing_api_keyAucune clé dans la requête.
401invalid_api_keyLa clé n’existe pas ou a été révoquée.
401expired_api_keyLa clé a dépassé sa date d’expiration.
403ip_not_allowedLa clé ne fonctionne que depuis d’autres adresses.
403model_not_allowedLa clé n’est pas autorisée à utiliser ce modèle.
402insufficient_quotaLe solde de l’espace de travail, après déduction des montants réservés par les requêtes en cours, ne suffit pas à couvrir cette requête.
Chaque réponse de chat, d’image ou de vidéo contient un en-tête x-request-id. Joignez-le à votre message au support pour que nous puissions retrouver la requête en quelques secondes.

Une question ou un élément manquant ? Contactez notre équipe d’assistance et nous vous répondrons par e-mail, généralement en moins d’une minute.