Authentification API

Modifié le  Lun, 24 Nov. à 12:44 H

L'API utilise OpenID Connect (OIDC) comme protocole d'authentification. Il s'agit d'une norme bien connue et d'un sous-ensemble d'OAuth 2.0. Il existe de nombreuses bibliothèques qui peuvent être utiles lors de la mise en œuvre d'un client dans la plupart des langages.


Comment obtenir un jeton d'accès

Le client utilise un identifiant client et un secret pour s'identifier et reçoit un jeton d'accès une fois l'authentification réussie. Veuillez contacter Position Green pour obtenir les identifiants à utiliser pour accéder à l'API.


Obtenir un jeton d'accès

POST  https://login.positiongreen.com/connect/token

Tout d'abord, envoyez une requête HTTP POST à /connect/token avec les paramètres ci-dessous. Où grant_type est « client_credentials » et client_id et client_secret ont été fournis pour votre client. 


Si le code d'état est 200, la réponse contient un JSON avec la propriété access_token. Ceci est utilisé dans toutes les requêtes avec l'API Position Green. 


Envoyez une requête HTTP POST à /connect/token avec les paramètres de formulaire suivants pour récupérer un jeton d'accès.


Paramètres de chemin

NomTypeDescription

identifiant_client

chaîne

L'identifiant client que vous avez reçu de Position Green

secret_client

chaîne

Le secret client que vous avez reçu de Position Green

type_de_subvention

chaîne

Doit être défini sur client_credentials



{
    "access_token":"<access token>",
    "expires_in":3600,
    "token_type":"Bearer"
}

Exemple : obtenir un jeton d'accès à l'aide de curl


Exécutez la commande suivante sur une seule ligne et remplacez client_secret, client_id et api-url.

curl --location --request POST 
--header "Content-Type: application/x-www-form-urlencoded" 
--data-urlencode "grant_type=client_credentials"
--data-urlencode "client_secret=<client_secret>"
--data-urlencode "client_id=<client_id>"
"<api-url>/connect/token"

Exemple d'obtention d'un jeton d'accès à l'aide de C#


var client = new HttpClient(); 
client.BaseAddress = new Uri(loginUrl); 

var data = new Dictionary<string, string> 
{
{"client_id", "your-client-id"},
{"client_secret","votre-secret-client" }, 
{"grant_type", "client_credentials"}, 
};
var response = await client.PostAsync( 
"/connect/token", 
new FormUrlEncodedContent(data)); 

var stringResponse = await response.Content.ReadAsStringAsync();


Réponse


{
   "access_token": "<access token>",
   "expires_in": 3600,
   "token_type": "Bearer"
}

Vous pouvez également utiliser client_id et secret dans l'en-tête.


articleAu lieu d'obtenir un jeton d'accès, il est possible d'envoyer l'identifiant client et le secret lors de l'accès à toutes les opérations dans l'API Position Green. Pour générer des identifiants API, consultez cet article.


Envoyer l'identifiant client et le secret


NomValeur

identifiant_client

Votre identifiant client

secret_client

Votre secret client



Cet article a-t-il été utile ?

C'est super !

Merci pour votre commentaire

Désolé ! Nous n'avons pas pu vous être utile

Merci pour votre commentaire

Dites-nous comment nous pouvons améliorer cet article !

Sélectionner au moins l'une des raisons
La vérification CAPTCHA est requise.

Commentaires envoyés

Nous apprécions vos efforts et nous allons corriger l'article