服务器到服务器 OAuth | 文档 v3 | 电子邮件验证 API | WhoisXML API

服务器到服务器 OAuth

发出 API 请求时,使用服务器到服务器 OAuth 向 WhoisXML API 进行身份验证。这也称为双向 OAuth,其使用两步流程,不需要用户交互即可进行身份验证或授权。以下是相关流程。

  • 从 WhoisXML API 授权服务器请求服务器到服务器 OAuth 客户端访问令牌。
  • 用户客户端使用访问令牌发出 API 请求。

用户还可以在 GitHub 上查看此脚本,了解如何将 WHOIS API 与服务器端 SSO 结合使用的示例。

生成访问令牌

使用accessToken授权类型生成访问口令牌。此授权类型的特点如下:

  • 口令牌有效期为 1800(30 分钟)、3600(1 小时)、7200(2 小时)或 10800 秒(3 小时)。默认值为 3600 秒(1 小时)。
  • 没有更新的口令牌。
  • 用户可生成并使用多个访问口令牌。
  • 生成新的 API 密钥时,之前所生成的访问口令牌都将失效。
  • 生成的访问口令牌对用户可访问的任何产品均有效。

请注意,生成的accessToken将代替API请求中的apiKey参数。

API端点

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
}'

标头

授权

必填。Base64 编码的 API 密钥。

Authentication scheme: Bearer.

我的产品页面获取个人 API 密钥。

输入参数

授权类型

必填。生成访问口令牌的授权类型。

可接受的值: access_token

到期日期

可选。访问口令牌的有效期(以秒为单位)。

可接受的值: 18003600720010800

默认值: 3600

outputFormat

选填。响应输出格式。

可接受的值: JSON | XML

默认值: JSON

相应

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

使用响应结果中的accessToken值来验证 API 请求。将结果值替换到apiKey字段中,就像使用没有 OAuth 的普通 API 密钥一样。

错误

{
    "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."
        ]
    }
}

带有访问口令牌的 cURL WHOIS API GET 请求示例

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

带有访问口令牌的 cURL WHOIS API POST 请求示例

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