# Actions

A partir do momento em que o lojista recebe um acionamento quanto a **cancelamento**, **devolução** ou **troca** de um pedido, é necessário realizar uma ação para dar seguimento à instância aberta.&#x20;

O endpoint `/actions` representa as ações a serem tomadas para as instâncias abertas.&#x20;

## GET - Consultando as ações

&#x20;As ações a serem tomadas para um pedido que gerou uma instância podem ser consultadas através do endpoint visto a seguir:

```
https://api.skyhub.com.b/sac/{code}/actions
```

{% hint style="info" %}
Nesta consulta será utilizado o **código completo do pedido** (canal de venda + código numérico).
{% endhint %}

{% hint style="warning" %}
Ocorrerá retorno apenas para pedidos que não possuam nenhum tipo de ação, por exemplo, pedidos UNREAD.
{% endhint %}

#### **Request headers:**

| Key                  | Value                                       |
| -------------------- | ------------------------------------------- |
| X-User-Email         | email\_de\_usuario                          |
| X-Api-Key            | token\_de\_integracao de sua conta SkyHub   |
| X-Accountmanager-Key | token\_account único de cada Plataforma/ERP |
| Accept               | application/json                            |
| Content-Type         | application/json                            |

#### **Example request:**

```
curl --location --request GET 'https://api.skyhub.com.br/sac/Lojas Americanas-298765432198761/actions' \
--header 'X-User-Email: email_de_usuario' \
--header 'X-Api-Key: token_de_integracao de sua conta SkyHub' \
--header 'X-Accountmanager-Key: token_account único de cada Plataforma/ERP' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json'
```

#### **Response esperado:**

{% hint style="success" %}
200 \[Success] - OK: Como retorno estarão as ações a serem tomadas para a instância. Os possíveis valores estão listados a seguir:
{% endhint %}

```
{
  "actions": [
    {
      "id": "CANCEL",
      "name": "cancelamento"
    },
    {
      "id": "RETURN",
      "name": "devolução"
    },
    {
      "id": "EXCHANGE",
      "name": "troca"
    }
  ]
}
```

### **Visualizando as ações de acordo com a causa**

Uma vez que é feita a consulta de acordo com a ação para o pedido, será retornado o motivo apontado pelo cliente, assim como o seu ID. Através do ID retornado é possível obter maiores detalhes quanto as causas para a ação a ser tomada.

Para verificar a ação de acordo com a causa será necessário utilizar os [headers](#request-headers) padronizados na API para executar um método GET no seguinte endpoint:

```
https://api.skyhub.com.br/sac/{code}/actions/{action_id}/causes
```

#### **Example request:**

```
curl --location --request GET 'https://api.skyhub.com.br/sac/Lojas Americanas-298765432198761/actions/RETURN/causes' \
--header 'X-User-Email: email_de_usuario' \
--header 'X-Api-Key: token_de_integracao de sua conta SkyHub' \
--header 'X-Accountmanager-Key: token_account único de cada Plataforma/ERP' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json'
```

{% hint style="info" %}
Para o parâmetro **`action_id`** é possível utilizar os valores retornados na consulta anterior, sendo: CANCEL, RETURN e EXCHANGE.
{% endhint %}

#### **Response esperado:**

{% hint style="success" %}
200 \[Success] - OK: Como retorno serão visualizadas as causas para a ação solicitada na instância:
{% endhint %}

```
{
    "causes": [
        {
            "id": "ARP",
            "name": "Arrependimento",
            "reasons": [
                {
                    "id": "309",
                    "name": "Comprei errado"
                },
                {
                    "id": "307",
                    "name": "Me arrependi"
                }
            ]
        },
        {
            "id": "DFT",
            "name": "Defeito",
            "reasons": [
                {
                    "id": "319",
                    "name": "Veio com defeito"
                }
            ]
        },
        {
            "id": "EOP",
            "name": "Erro Operacional",
            "reasons": [
                {
                    "id": "317",
                    "name": "Veio errado ou incompleto"
                },
                {
                    "id": "318",
                    "name": "Veio quebrado"
                }
            ]
        }
    ]
}
```


---

# 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/sac/actions.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.
