Authentification et clés d'API
Créer une clé, clés live et test, scopes disponibles et rotation d'une clé.
Envoyer votre clé
Chaque requête porte la clé en jeton porteur : Authorization: Bearer <clé>. Une clé appartient à une organisation et ne voit que les données de celle-ci.
curl https://infynia.quantylcore.com/api/v1/agents \
-H "Authorization: Bearer $INFYNIA_API_KEY"Une clé invalide, expirée ou révoquée reçoit toujours la même réponse 401, avec le code unauthorized.
Créer une clé
- Ouvrez
Développeurs, puisClésdans le dashboard. Les propriétaires et administrateurs créent et révoquent les clés ; les membres voient seulement la liste. - Choisissez un nom, les scopes, une expiration (30 jours, 90 jours, 1 an ou jamais) et, si vous le souhaitez, les agents que la clé peut utiliser.
- La clé est affichée une seule fois. INFYNIA n'en conserve qu'une empreinte : une clé perdue ne se récupère pas, créez-en une nouvelle.
- Une organisation peut détenir jusqu'à 20 clés. La création, la rotation et la révocation sont consignées dans le journal d'audit.
inf_live_xxxxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxLe format est inf_<environnement>_<préfixe>_<secret>. Le préfixe identifie la clé dans le dashboard et dans les journaux ; ne journalisez jamais la clé entière.
Clés live et clés de test
- Les clés
inf_live_sont réservées aux organisations sur un plan payant. Sans plan payant, créer ou utiliser une clé live répond403avecplan_required. Les appels passés avec une clé live consomment les minutes de votre plan. - Les clés
inf_test_sont gratuites pour tous et appellent les mêmes routes.
Avec une clé de test, les appels et les campagnes sont simulés : aucun vrai appel, aucune minute décomptée (voir le guide du mode test). Les contacts restent des données réelles.
Scopes
Une clé ne peut faire que ce que ses scopes autorisent ; un scope manquant répond 403 avec forbidden. Les scopes suivent le modèle ressource:read ou ressource:write.
| Scope | Autorise | Disponible |
|---|---|---|
calls:write | Lancer un appel sortant | Oui |
calls:read | Lire un appel | Oui |
agents:read | Lister les agents | Oui |
tasks:read | Lister les appels planifiés | Oui |
tasks:write | Annuler un appel planifié | Oui |
webcalls:write | Créer un jeton de session d'appel web | Oui |
contacts:read, contacts:write, transcripts:read, campaigns:read, campaigns:write, knowledge:read, knowledge:write | Réservés à des ressources qui ne sont pas encore dans l'API | Pas encore |
Une clé limitée à certains agents reçoit 403 avec forbidden_agent si elle touche un autre agent, et les listes d'agents ne montrent que ceux autorisés. Une liste vide signifie tous les agents.
Expiration et rotation
- Un e-mail de rappel est envoyé 7 jours avant l'expiration d'une clé.
- Renouveler une clé en crée une nouvelle, avec les mêmes scopes et restrictions. L'ancienne clé continue de fonctionner pendant 24 heures pour que vous puissiez déployer la nouvelle sans coupure, puis s'arrête.
- La révocation d'une clé prend effet immédiatement.