Server-to-Server OAuth | Documentação | Brand Alert API | WhoisXML API

Server-to-Server OAuth

Use o server-to-server OAuth para se autenticar com as WhoisXML APIs ao fazer solicitações de API. Esse é também conhecido como "two-legged OAuth", pois usa um fluxo de processo de duas etapas que não requer interação do usuário para autenticação ou autorização. O fluxo é o seguinte.

  • Seu cliente server-to-server OAuth solicita um token de acesso do servidor de autorização da WhoisXML API.
  • Seu cliente usa o token de acesso para fazer solicitações de API.

Você também pode consultar este script no GitHub para obter um exemplo de como usar a API WHOIS com o SSO do lado do servidor.

Gerar um token de acesso

Use o accessToken para gerar um token de acesso. Os recursos desse tipo de concessão são:

  • O tempo de vida do token é de 1800 (30 minutos), 3600 (1 hora), 7200 (2 horas) ou 10800 segundos (3 horas). O padrão é 3600 segundos (1 hora).
  • Não há token de atualização.
  • Você pode gerar e usar vários tokens de acesso.
  • Quando a nova chave de API é gerada, todos os tokens de acesso gerados anteriormente são invalidados.
  • Os tokens de acesso gerados são válidos para qualquer produto ao qual você tenha acesso.

Observe que o accessToken gerado é usado em vez do apiKey nas solicitações de API.

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

Cabeçalhos

Autorização

Obrigatório. Chave de API codificada em base64.

Esquema de autenticação: Portador.

Obtenha sua chave de API pessoal na página Meus produtos.

Parâmetros de entrada

grantType

Required. O tipo de concessão para gerar um token de acesso.

Valores aceitáveis: access_token.

expiresIn

Optional. O tempo de vida do token de acesso em segundos.

Acceptable values: 1800, 3600, 7200, 10800.

Default: 3600.

outputFormat

Optional. Formato de saída da resposta.

Valores aceitáveis: JSON | XML

Padrão: JSON

Resposta

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

Use o accessToken na resposta para autenticar suas solicitações de API. Substitua o valor resultante no campo apiKey como você faria com uma chave de API normal sem OAuth.

Erros

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

Exemplo de solicitação cURL WHOIS API GET com token de acesso

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

Exemplo de solicitação cURL WHOIS API POST com token de acesso

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