1. Vue d’ensemble
Les clés API de gestion sont destinées à des scénarios tels que :- L’émission de clés API de modèle distinctes pour différents clients, projets ou environnements
- L’application de limites d’utilisation et de cycles de réinitialisation automatique aux clés API de modèle en aval
- La rotation, la désactivation ou la révocation de clés de manière programmatique
- L’application d’une gestion des clés selon le principe du moindre privilège dans les flux de travail SaaS, multi-tenant et axés sur la conformité
- Isolation stricte des permissions pour les opérations de gestion de clés
- Automatisation complète du cycle de vie des clés API de modèle
- Limites d’utilisation et cycles de réinitialisation configurables
- Conçu pour les services côté serveur, les outils internes et les flux de provisionnement automatisés
2. Surfaces API et limites d’authentification
La gestion des clés est répartie sur deux surfaces API, chacune avec son propre modèle d’authentification :| Surface API | Objectif | Authentification |
|---|---|---|
/v1/management-keys | Gérer les clés API de gestion | JWT |
/api/v1/model-router/keys | Gérer les clés API de modèle à l’aide d’une clé API de gestion | Authorization: Bearer <management_key> |
- Une
Management API Keyne peut être utilisée qu’avec/api/v1/model-router/keys - Une
Management API Keyne peut pas être utilisée avec/v1/management-keys /v1/management-keysne prend en charge que l’authentificationJWT- Le secret complet n’est renvoyé qu’une seule fois lors de la création d’une clé et ne peut pas être récupéré ultérieurement
3. Règles de base
- Chaque compte peut créer jusqu’à
10clés API de gestion - Les clés API de gestion sont activées immédiatement après leur création
- Le secret complet de la clé API de gestion n’est renvoyé qu’une seule fois
- Les réponses ultérieures de liste et de détail ne renvoient que des valeurs de clé masquées
- Les clés API de modèle sont actuellement supprimées de manière logicielle (soft-delete) plutôt que définitivement
4. URL de base
L’URL de base de l’API publique est :5. Créer une clé API de gestion
Avant d’utiliser l’API de gestion, créez d’abord une clé API de gestion dans la console DGrid :Si vous exposez ce flux dans votre propre interface, informez clairement les utilisateurs que le secret n’est affiché qu’une seule fois et doit être stocké immédiatement.
6. Authentification
Ce document couvre deux modes d’authentification :- Les points de terminaison sous
/v1/management-keysnécessitent unJWT - Les points de terminaison sous
/api/v1/model-router/keysnécessitent une clé API de gestion
/api/v1/model-router/keys :
7. Points de terminaison du cycle de vie des clés API de gestion
Ces points de terminaison sont utilisés pour créer, consulter, mettre à jour, activer, désactiver et supprimer des clés API de gestion. Tous nécessitent une authentificationJWT.
| Opération | Méthode | Chemin | Remarques |
|---|---|---|---|
| Créer une clé de gestion | POST | /v1/management-keys | Renvoie la clé complète une seule fois |
| Lister les clés de gestion | GET | /v1/management-keys | Prend en charge la pagination |
| Mettre à jour une clé de gestion | PUT | /v1/management-keys/{id} | Seul le name peut actuellement être mis à jour |
| Supprimer une clé de gestion | DELETE | /v1/management-keys/{id} | Suppression logicielle |
| Activer une clé de gestion | POST | /v1/management-keys/{id}/enablement | Prend effet immédiatement |
| Désactiver une clé de gestion | POST | /v1/management-keys/{id}/disablement | Prend effet immédiatement |
keyn’est renvoyé qu’une seule fois, au moment de la créationkeyPreviewest la valeur d’affichage masquée
8. Gérer les clés API de modèle avec une clé API de gestion
Tous les points de terminaison de cette section utilisent :8.1 Champs de requête
L’implémentation actuelle prend en charge les champs suivants lors de la création ou de la mise à jour d’une clé API de modèle :| Champ | Type | Requis | Description |
|---|---|---|---|
name | string | Requis à la création | Nom de la clé |
limit | number | Non | Limite d’utilisation |
cycle | daily | weekly | monthly | Non | Cycle de réinitialisation de la limite |
expiredAt | string | Non | Horodatage d’expiration en UTC |
groupId | string | Non | ID de groupe |
- Si vous connaissez le
limit_resetd’OpenRouter, l’équivalent le plus proche dans l’implémentation actuelle de DGrid estcycle expiredAtdoit utiliser un horodatage ISO 8601 UTC tel que2026-12-31T23:59:59Z
8.2 Lister les clés
- Méthode :
GET - Chemin :
/api/v1/model-router/keys - Paramètres de requête :
page: numéro de page, par défaut1size: taille de page, par défaut20, maximum100
- La pagination utilise
pageetsize, et nonlimitetoffset - La recherche par nom partiel n’est actuellement pas prise en charge
- Le filtrage
disabledn’est actuellement pas pris en charge
key: valeur de la clé API masquéeusageInCycle: utilisation au sein du cycle actuelusageInTotal: utilisation cumuléeenabled: état d’activation actuelgroupName: nom du groupe
8.3 Créer une clé API de modèle
- Méthode :
POST - Chemin :
/api/v1/model-router/keys
keyest la valeur complète de la clé API et n’est renvoyée qu’une seule fois- Stockez-la immédiatement dans un système de gestion de secrets sécurisé
8.4 Obtenir les détails d’une clé
- Méthode :
GET - Chemin :
/api/v1/model-router/keys/{id}
- L’implémentation actuelle utilise
id (UUID), et nonkey_hash
8.5 Mettre à jour une clé API de modèle
- Méthode :
PUT - Chemin :
/api/v1/model-router/keys/{id}
namelimitcyclegroupId
- La méthode de mise à jour actuelle est
PUT, et nonPATCH
8.6 Désactiver une clé API de modèle
- Méthode :
POST - Chemin :
/api/v1/model-router/keys/{id}/disablement
8.7 Activer une clé API de modèle
- Méthode :
POST - Chemin :
/api/v1/model-router/keys/{id}/enablement
8.8 Supprimer une clé API de modèle
- Méthode :
DELETE - Chemin :
/api/v1/model-router/keys/{id}
- La suppression est actuellement une suppression logicielle (soft delete) et non une suppression physique
9. Exemple d’utilisation
10. Codes de statut HTTP et codes d’erreur
| Statut HTTP | Code d’erreur | Description |
|---|---|---|
400 | 40001 | Paramètres de requête invalides |
401 | 40101 | Clé API de gestion manquante dans l’en-tête de la requête |
401 | 40102 | Clé API de gestion invalide, expirée ou désactivée |
403 | 40301 | Permissions insuffisantes ou type de clé invalide pour ce point de terminaison |
404 | 40401 | Clé cible introuvable ou n’appartenant pas au compte actuel |
429 | 42901 | Limite de débit dépassée |
500 | 50001 | Erreur interne du serveur |
11. Format de réponse standard
Les réponses réussies utilisent l’enveloppe suivante :- Les requêtes réussies renvoient un statut HTTP
200 - Les réponses de création peuvent inclure la clé secrète complète dans
data - Les points de terminaison de liste et de détail renvoient généralement des valeurs de clé masquées
- Les secrets complets pour les clés API de gestion et les clés API de modèle ne sont renvoyés qu’une seule fois

