Server-to-Server OAuth | Documentation | Domains & Subdomains Discovery API | WhoisXML API

Server-to-Server OAuth

Utiliser server-to-server OAuth pour s'authentifier auprès des API WhoisXML lors des requêtes API. Cette méthode est également connue sous le nom d'OAuth à deux pattes car elle utilise un processus en deux étapes qui ne nécessite pas d'interaction avec l'utilisateur pour l'authentification ou l'autorisation. Voici le processus.

  • Votre client OAuth server-to-server demande un jeton d'accès au serveur d'autorisation de l'API WhoisXML.
  • Votre client utilise le jeton d'accès pour effectuer des demandes d'API.

Vous pouvez également consulter ce script sur GitHub pour un exemple d'utilisation de WHOIS API avec le Server-Side SSO.

Générer un jeton d'accès

Utilisez le accessToken pour générer un jeton d'accès. Les caractéristiques de ce type de subvention sont les suivantes :

  • La durée de vie du jeton est de 1800 (30 minutes), 3600 (1 heure), 7200 (2 heures) ou 10800 secondes (3 heures). La valeur par défaut est de 3600 secondes (1 heure).
  • Il n'y a pas de jeton de rafraîchissement.
  • Vous pouvez générer et utiliser plusieurs jetons d'accès.
  • Lorsque la nouvelle clé API est générée, tous les jetons d'accès générés précédemment sont invalidés.
  • Les jetons d'accès générés sont valables pour tout produit auquel vous avez accès.

Veuillez noter que le accessToken généré est utilisé à la place de la apiKey dans les demandes d'API.

API endpoint

POST https://main.whoisxmlapi.com/oauth/token
curl --location 'https://main.whoisxmlapi.com/oauth/token' \
--header 'Authorization: Bearer %base64_encoded_API_key%' \
--header 'Content-Type: application/json' \
--data '{
    "grantType": "access_token",
    "expiresIn": 7200
}'

En-têtes

Autorisation

Nécessaire. Clé API encodée en base64.

Schéma d'authentification: Porteur.

Obtenez votre clé API personnelle sur la page Mes produits.

Paramètres d'entrée

grantType

Obligatoire. Le type de subvention pour générer un jeton d'accès.

Valeurs acceptables : access_token.

expireIn

Facultatif. Durée de vie du jeton d'accès en secondes.

Valeurs acceptables : 1800, 3600, 7200, 10800.

Valeur par défaut : 3600.

outputFormat

Facultatif. Format de sortie de la réponse.

Valeurs acceptables : JSON | XML

Par défaut : JSON

Réponse

{
    "accessToken": "G2OIE2AKRCVDYFUJCV5PXXXXXXXXXXXX",
    "expiresIn": 3600
}

Utilisez le accessToken dans la réponse pour authentifier vos demandes d'API. Remplacez la valeur obtenue par la valeur apiKey comme vous le feriez avec une clé d'API normale sans OAuth.

Erreurs

{
    "code": 401,
    "messages": "Access restricted. Check the credits balance or enter the correct API key."
}
{
    "code": 422,
    "messages": {
        "grantType": [
            "The selected grant type is invalid."
        ]
    }
}

Exemple de demande GET de WHOIS API cURL avec jeton d'accès

curl --location 'https://www.whoisxmlapi.com/whoisserver/WhoisService?domainName=google.com' \ --header 'Authorization: Bearer %accessToken%'

Exemple de demande GET de WHOIS API cURL avec jeton d'accès

curl --location 'https://www.whoisxmlapi.com/whoisserver/WhoisService' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer %accessToken%' \
    --data '{
        "domainName": "google.com"
    }'