# Credenciamento (Americanas Partner's API)

A API de Credenciamento possibilita que ao contratar a plataforma/ERP o seller seja capaz de fornecer seus dados para a solicitação de uma conta no marketplace Americanas e, consequentemente, na API.

## **Solicitar credenciais**

Ao optar por desenvolver o recurso de Credenciamento, será necessário entrar em contato com a equipe da API através do e-mail <mark style="color:blue;"><srv.mktp.api@americanas.io></mark> e solicitar os dados que serão utilizados para autenticação de seu sistema junto ao serviço.

Em posse dos dados que serão fornecidos pelo time de API, o próximo passo será solicitar o token de autenticação através de um **POST** no seguinte endpoint:

```
https://api.skyhub.com.br/b2w_partner/authorizer/oauth2/token
```

#### **Request headers:**

| Name                 | Type                                        |
| -------------------- | ------------------------------------------- |
| Accept               | application/json                            |
| Content-Type         | application/json                            |
| X-Accountmanager-Key | token\_account único de cada Plataforma/ERP |

#### **Request body:**

```
{
    "client_id": "your_client_id", // Código de Acesso Único
    "client_secret": "your_client_secret", // Chave de Acesso
    "grant_type": "password", // Tipos de Autenticação
    "provision_key": "abc1234efg567higkl890mnopqrstu", // ID
    "authenticated_userid": "some_user_name", // Código de Acesso Único
    "scope": "account" // Escopo solicitado para autenticação
}
```

#### **Example request:**&#x20;

```
curl --location --request POST 'https://api.skyhub.com.br/b2w_partner/authorizer/oauth2/token' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'X-Accountmanager-Key: token_account único de cada Plataforma/ERP' \
--data-raw '{
    "client_id": "Plataforma_1",
    "client_secret": "9a8b00000c777d6e5f444g33h22i11jf",
    "grant_type": "password",
    "provision_key": "ab1CDE2fGH3I4jKLmn5OpQQQrsTu6vWX",
    "authenticated_userid": "Plataforma_1",
    "scope": "account"
}'
```

#### **Response esperado:**

{% hint style="success" %}
200 - Success \[OK]
{% endhint %}

```
{
    "refresh_token": "rv2N8kc...........6Y87mrJ",
    "token_type": "bearer",
    "access_token": "44cc6cz...........DU8u9vBt",
    "expires_in": 900
}
```

## **POST - Solicitação da conta junto ao marketplace**

A requisição acima terá como resultado o *access token* que será utilizado para a solicitação da conta.&#x20;

Para seguir com esta solicitação, basta realizar um POST no seguinte endpoint:

```
https://api.skyhub.com.br/b2w/signup
```

#### **Request headers**:

| Name                 | Type                                        |
| -------------------- | ------------------------------------------- |
| Accept               | application/json                            |
| Content-Type         | application/json                            |
| Authorization        | Bearer access\_token                        |
| X-Accountmanager-Key | token\_account único de cada Plataforma/ERP |

#### **Request body:**

```
{
  "test_account": false, // Os possíveis valores são true e false, porém como a conta será em produção, necessário solictar como false
  "sellerId": "123456789", // CNPJ da loja
  "platform": "Teste", // Nome da plataforma/ERP que está solicitando a conta
  "state_register": "123456789", // Inscrição Estadual
  "coupon": "B2W123", // Cupom promocional, caso exista. Se não houver cupom, remova o campo da requisição
  "contact": {
    "type": "PRINCIPAL", // Dados do contato da loja
    "phone": "123456789", // Telefone do responsável pela loja
    "name": "Teste", // Nome do responsável pela loja
    "email": "contato@teste.com.br", // E-mail do responsável pela loja
    "document": "", // CPF/RG do responsável pela loja
    "cellphone": "" // Celular do responsável pela loja
  }
}
```

#### **Example request**:&#x20;

```
curl --location --request POST 'https://api.skyhub.com.br/b2w/signup' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer 44cc6cz...........DU8u9vBt' \
--header 'X-Accountmanager-Key: token_account único de cada Plataforma/ERP' \
--data-raw '{
  "test_account": false
  "sellerId": "01234567890123", 
  "platform": "Teste", 
  "state_register": "123456789", 
  "coupon": "B2W123",
  "contact": {
    "type": "PRINCIPAL", 
    "phone": "123456789", 
    "name": "Teste", 
    "email": "contato@teste.com.br", 
    "document": "218788492", 
    "cellphone": "99887766" 
  }
}'
```

#### **Response esperado**:

{% hint style="success" %}
204 - Success \[No content]
{% endhint %}

Após realizar a solicitação e receber o retorno de sucesso na requisição, <mark style="color:green;">será necessário aguardar por processos internos realizados pelo marketplace</mark>, que validará as informações recebidas e realizará a criação das contas na Americanas e na API.

{% hint style="warning" %}
**Não é possível visualizar o andamento da solicitação da conta via API**, fazendo-se necessário **acompanhar o status** da mesma (solicitação) **diretamente pelo marketplace**.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://desenvolvedores.skyhub.com.br/credenciamento/credenciamento-americanas-partners-api.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
