# Autenticação de usuário da API

As APIs da Equinix usam o protocolo OAuth 2.0 para autenticar as solicitações que você faz aos endpoints da API. Para interagir com as APIs da Equinix, você precisa de um token de acesso Bearer. O Bearer determina o tipo de esquema de autenticação e faz parte do protocolo OAuth 2.0.

<!-- -->

informações

A API Metal da Equinix não utiliza o fluxo de autenticação descrito aqui. As chaves da API Metal são gerenciadas através do [console Metal](/pt-BR/metal/identity-access-management/api-keys.md), e sua autenticação está documentada na [Referência da API](https://docs.equinix.com/api-catalog/metalv1/#tag/Authentication).

## Pré-requisitos[​](#pré-requisitos "Direct link to Pré-requisitos")

A interação com os produtos Equinix por meio da API requer:

* Uma conta no Portal do Cliente da Equinix.
* Permissões específicas do produto para criar, modificar e excluir. Entre em contato com o administrador principal da sua organização e solicite as permissões de acesso.

## Gerar ID do cliente e segredo do cliente[​](#gerar-id-do-cliente-e-segredo-do-cliente "Direct link to Gerar ID do cliente e segredo do cliente")

Um ID do Cliente e um Segredo do Cliente são necessários para obter os tokens que autorizam suas solicitações de API. Para gerar um ID do Cliente e um Segredo do Cliente, registre seu aplicativo na seção *Configurações do Desenvolvedor* do Portal do Cliente.

Para registrar um aplicativo:

1. Faça login no [Portal do Cliente](https://portal.equinix.com).

2. No menu de navegação global, selecione *Configurações do desenvolvedor*. > *Aplicativos* para exibir detalhes do aplicativo.

   ![](/pt-BR/assets/images/auth-dev-menu-a9161ccf9e632050f83ddb969f6d16f2.png)

3. Contrato de Licença da API - Antes de usar a plataforma e as APIs pela primeira vez, você deve ler e aceitar o contrato de licença da API exibido.

   ![](/pt-BR/assets/images/auth-license-agreement-b3b3306c8dbdc8fa214d34ce7f9874ce.png)

   Após aceitar o contrato, você poderá encontrá-lo na seção *Informações Adicionais*.

   ![](/pt-BR/assets/images/auth-additional-info-86c6708fc3c7eb40798e8efd48715ce2.png)

4. Clique em **Criar novo aplicativo**.

   ![](/pt-BR/assets/images/auth-create_new_app-353d89258181768204be10e122cb9c51.png)

5. Forneça um *nome para o aplicativo*, selecione o *tipo de ambiente do aplicativo* (Produção) e clique em **Criar**.

   ![](/pt-BR/assets/images/auth-create_new_app_details-c3850c198a7b8fa6bcba9a3debfaf5c1.png)

6. Clique no ícone do seu aplicativo para abrir os detalhes.

7. Clique no ícone do olho para visualizar sua *Chave do Consumidor* e *Segredo do Consumidor*.

   ![](/pt-BR/assets/images/auth-app-details-pane-cd47a19c79e99ab157f7b4cd7addbf48.png)

## Solicitação de um token de acesso[​](#solicitação-de-um-token-de-acesso "Direct link to Solicitação de um token de acesso")

É necessário um token de acesso para autorizar suas solicitações à API. Para solicitar um token, envie uma solicitação `POST` para o endpoint [`/oauth2/v1/token`](/pt-BR/api-catalog/accesstokenv1#operation/GetOAuth2AccessToken), especificando seu ID do Cliente e Segredo do Cliente no corpo da solicitação.

Exemplo de requisição cURL:

```
curl -X  

POST 'https://api.equinix.com/oauth2/v1/token'  

-H 'content-type: application/json'  

-d '{  

    "grant_type": "client_credentials",  

    "client_id": "<client_id>",  

    "client_secret": "<client_secret>"  

}'
```

Para obter uma lista completa dos parâmetros e opções disponíveis, consulte a [Referência da API](/pt-BR/api-catalog/accesstokenv1#operation/GetOAuth2AccessToken).

Exemplo de resposta:

```
{  

    "access_token": "<token>",  

    "token_timeout": "3600",  

    "user_name": "john.doe@example.com",  

    "token_type": "Bearer"  

}
```

## Atualizando um token[​](#atualizando-um-token "Direct link to Atualizando um token")

Você pode atualizar seu token de acesso enviando uma solicitação `POST` para o endpoint [`/oauth2/v1/refreshaccesstoken`](/pt-BR/api-catalog/accesstokenv1#operation/RefreshOAuth2AccessToken).

Exemplo de requisição curl:

```
curl -X  

POST 'https://api.equinix.com/oauth2/v1/refreshaccesstoken'  

-H 'content-type: application/json'  

-d '{  

    "client_id": "<client_id>",  

    "client_secret": "<client_secret>",  

    "refresh_token": "<token>  

}'‌‌
```

Para obter uma lista completa dos parâmetros e opções disponíveis, consulte a [Referência da API](/pt-BR/api-catalog/accesstokenv1#operation/RefreshOAuth2AccessToken)

## Utilizando tokens de acesso[​](#utilizando-tokens-de-acesso "Direct link to Utilizando tokens de acesso")

Para interagir com a API da Equinix, envie seu token de acesso no cabeçalho de Autorização da solicitar HTTP com `authorization: Bearer <token>`.

Exemplo de requisição cURL - um envio recebido da API de colocation:

```
curl -X  

POST "https://api.equinix.com/colocations/v2/orders/shipments"  

-H "content-type: application/json"  

-H "authorization: Bearer <token>"  

-d '{  

    "type": "INBOUND",  

    "requestedDateTime": "2020-11-02T10:45:41Z",  

    "cageId": "AM1:01:000111",  

    "details": {  

    "carrier": "CUSTOMER_CARRIER",  

    "numberOfBoxes": 2  

    }  

}'‌
```
