Authentification

Authentifiez chaque requête à l’API Partenaire avec une clé API d’organisation.

Chaque requête transporte une clé API sous forme de jeton porteur.

Autorisation : Bearer mor_live_7f3c1a9e…

Une clé appartient à l’ organisationet non à la personne qui l’a créée. Elle continue de fonctionner lorsque cette personne part, et tout administrateur de l’organisation peut la voir listée et la révoquer.

Créez une clé

Ouvrir les paramètres

Dans Morphic Studio, ouvrez le menu déroulant de l’organisation (le logo Morphic, en haut à gauche) et sélectionnez Paramètres.

Accéder aux clés API

Dans la barre latérale gauche, cliquez sur Clés API. L’onglet est visible uniquement par les administrateurs.

Créer la clé

Cliquez sur Nouvelle clé, donnez-lui un nom que vous reconnaîtrez dans un mois, choisissez ses portées, et — si elle ne doit pas durer éternellement — une date d’expiration.

Copier le secret

Le secret n’est affiché qu’une seule fois. Morphic n’en stocke qu’un hachage, donc il ne peut pas être réaffiché. Placez-le dans votre gestionnaire de secrets avant de fermer la boîte de dialogue.

Toute personne détenant la clé peut lancer des exécutions qui consomment les crédits de votre organisation. Traitez-la comme un mot de passe : ne la commitez jamais, ne la mettez jamais dans un navigateur, ne l’envoyez jamais par e-mail ou par chat.

Portées

Une clé ne possède que les portées que vous lui avez attribuées. Une requête en dehors de celles-ci est refusée avec access_denied.

PortéeAutorise
workflows:readla lecture d’un workflow et des entrées qu’il prend
runs:writele lancement d’exécutions, ainsi que l’enregistrement et la suppression de points de terminaison de webhook
runs:readla lecture du statut d’une exécution et de ses ressources finalisées, ainsi que l’énumération des points de terminaison de webhook

Une clé peut aussi être limitée à des workflows spécifiques. Le lancement de tout autre élément est refusé, et une exécution de tout autre élément renvoie « introuvable », ce qui est ce que vous voulez pour une clé qui vit dans une seule intégration.

Environnements

Le préfixe indique à quel déploiement appartient une clé, de sorte qu’une clé divulguée est identifiable d’un coup d’œil. Une clé présentée à l’autre déploiement est refusée.

PréfixeEnvironnementURL de base
mor_live_productionhttps://api.morphic.com/v1/partner
mor_test_préproduction, pour le travail d’intégration ; les exécutions y sont plafonnées et les données ne vous appartiennent pashttps://api.morphic.today/v1/partner

Limites de crédit

Chaque clé comporte un plafond sur les crédits qu’elle peut dépenser, défini par l’administrateur qui l’a créée :

LimiteDéfini ?Signification
Totaltoujourscrédits que la clé peut dépenser au total
Par jourfacultatifcrédits par jour UTC
Par moisfacultatifcrédits par mois UTC

Un jour correspond à un jour UTC et un mois à un mois civil UTC. Un débit qui ferait dépasser à la clé l’une de ses limites est refusé avec api_key_credit_limit_reached; l’erreur error_attributes.period indique quelle limite (total, mensuelle ou quotidienne). C’est une condition différente du fait que l’organisation n’ait plus de crédits (credits_exhausted), et elle se corrige autrement : un administrateur augmente la limite de la clé dans Studio plutôt que de recharger l’organisation. Un lancement dont la clé n’a plus de marge est refusé avant que quoi que ce soit ne soit récupéré.

Une exécution lancée avec une clé continue d’être imputée à cette clé, même si quelqu’un prend la main dans le chat dans Studio. Ainsi, le budget restant de la clé correspond au budget de l’exécution entière, et pas seulement à sa partie automatisée.

Rotation

Faites la rotation par chevauchement, jamais par interruption : créez la nouvelle clé, déployez-la, confirmez que le trafic a basculé, puis révoquez l’ancienne. Une organisation peut détenir jusqu’à 10 clés pouvant s’authentifier en même temps, ce qui laisse de la marge pour la rotation sans finir avec une pile dont personne ne se débarrasse.

La révocation prend effet en quelques secondes. Les exécutions déjà en cours se terminent et restent facturées.

Sur cette page