For AI agents: the complete documentation index is available at https://docs.ovhcloud.com/fr/llms.txt, the full documentation bundle is available at https://docs.ovhcloud.com/fr/llms-full.txt, and this page is available as Markdown at https://docs.ovhcloud.com/fr/guides/manage-and-operate/api/api-right-delegation.md.

Gérer le compte d'un client via l'API OVHcloud

Voir en Markdown

Découvrez comment créer une application et gérer les services de vos clients

Objectif

Dans ce guide, vous allez apprendre à utiliser l'OVHcloud API pour gérer les services et les ressources du compte d'une autre personne.

À titre d'exemple, supposons que vous souhaitiez créer une marketplace dans laquelle vous pourriez, en tant que fournisseur de services, installer et configurer les ressources d'autres clients OVHcloud.

Prérequis

  • un compte OVHcloud

En pratique

Enregistrement de l'application

La première étape, en tant que développeur de l'application, consiste à enregistrer votre application auprès d'OVHcloud.

Pour cela, rendez-vous sur la .

Vous devrez vous connecter, puis définir un nom et une description pour votre application.

Création d'une application

Une fois connecté, vous obtiendrez votre Application Key et votre Application Secret, désignés par la suite par AK et AS.

Application Key et Application Secret

L'AK identifie votre application. Elle peut être partagée publiquement.

L'AS est une clé utilisée pour signer les requêtes API qui seront effectuées ultérieurement par votre application. Elle doit rester secrète.

Synthèse

diagramme de séquence

Déployer votre application

Pour illustrer cette partie, supposons que vous avez déployé le code de votre application sur un serveur.

Votre application peut accéder à la valeur de l'AK et de l'AS, et affiche une liste de stacks logicielles ou de services que les clients peuvent installer.

Délégation de droits

Supposons qu'un client parcourant votre marketplace sélectionne un service à déployer sur son compte OVHcloud. À ce stade, vous n'avez aucun droit sur son API. Vous devez lui demander l'autorisation de gérer ses ressources.

Créer une demande d'autorisation

La première étape consiste, pour votre application, à demander des autorisations sur l'API du client.

Pour cela, votre application va demander des identifiants en appelant et en passant en argument la liste des endpoints auxquels elle doit accéder.

Exemple avec curl, avec une demande d'accès à GET /me.

export AK=F7gzxgxN5eqwuAsK
export REDIRECT_URL=https://webhook.site/586c652e-061e-453f-bd71-51912e33419d # usefull for debug

curl -H "Content-type: application/json" -H "X-Ovh-Application: $AK" -d '{"redirection": "$REDIRECT_URL", "accessRules": [{"method": "GET", "path": "/me"}]}' https://eu.api.ovh.com/1.0/auth/credential

Le résultat de cet appel est un dictionnaire JSON.

{
  "state":"pendingValidation",
  "consumerKey":"5DU984kYxyoAe4lRaevZCGnmt9FVnKT2",
  "validationUrl":"https://eu.api.ovh.com/auth/?credentialToken=RAXoRq9FvUQFI1S6hE0HmkySyVp8aDWwIqBA3fYrOr0vVSMdpjqxFqp3IjyjGAfu"
}

En tant que développeur, vous devez stocker la consumerKey, désignée par la suite par CK. Cette clé servira à signer les requêtes vers l'OVHcloud API effectuées pour le compte de votre client.

La demande a été effectuée : vous devez maintenant obtenir l'accord de votre client en le redirigeant vers la validationUrl.

Formulaire de connexion du client

Après avoir été redirigé vers la validationUrl, le client est invité à confirmer la délégation de droits.

confirmation des droits

En cas de succès, le client est redirigé vers l'URL précédemment définie par REDIRECT_URL dans la commande curl.

Accéder à l'API du client

À ce stade, vous devez disposer de trois jetons :

  • l'application key AK
  • l'application secret AS
  • la consumer key CK

À partir de là, et selon les autorisations demandées, vous pouvez commencer à gérer les ressources de vos clients.

Synthèse

diagramme de séquence

Bon développement !

Aller plus loin

Cette page vous a-t-elle aidé ?