# Caso de uso: parâmetros de gatilho API Gateway

### Contexto

Uma empresa de e-commerce precisa garantir que o estoque esteja sempre atualizado, especialmente em períodos de alta demanda, como durante promoções ou datas comemorativas. Cada vez que um produto é vendido, é vital que a baixa no estoque seja processada de forma rápida e precisa, evitando que os clientes fiquem frustrados ao descobrir que um item está esgotado após a compra.

Imagine que, ao realizar a saída de um produto no estoque, é necessário informar dois dados: o ID do produto e a quantidade subtraída do estoque. Além disso, pode ser necessário informar um desconto aplicado na venda.

Nesta documentação vamos explorar como utilizar parâmetros de rota e parâmetros de query do API Gateway para passar essas informações.

### Passo a Passo

Após a contextualização do nosso caso, é hora de configurar o nosso fluxo.

O primeiro passo é adicionar um **Gatilho API Gateway** e configurá-lo.

<figure><img src="/files/xhdu12rBK7oVtE2d4v5v" alt=""><figcaption><p>Tela de configuração do Gatilho API Gateway </p></figcaption></figure>

Observe que a rota possui a seguinte formação:

{% code fullWidth="false" %}

```json
                                  /product/:id
```

{% endcode %}

Os dois pontos seguidos de 'ID' indicam que esse é um **parâmetro de rota** (path). O **Skyone Studio** reconhece automaticamente o ID na aba "**Parâmetros**", sendo possível adicionar um valor para testar a operação.

<figure><img src="/files/EjCVHwZfrcKAmjGtQbDY" alt=""><figcaption></figcaption></figure>

Em seguida, vamos adicionar os **parâmetros de quantidade e desconto**.&#x20;

O envio de valores com vírgula via rota não é permitido. Se houver um valor que inclua vírgula, ele deve ser enviado como um **parâmetro de query**. Por isso, os parâmetros ***quantity*** e ***discount*** serão usados para passar a quantidade e o valor de desconto, respectivamente, porém, na aba "**Query**".<br>

<figure><img src="/files/77MsxWYykjKeQmyUliy0" alt=""><figcaption></figcaption></figure>

Para finalizar a configuração do "**Gatilho API Gateway**", clique em "Salvar".&#x20;

Em seguida, vamos adicionar o módulo do **PostgreSQL**, cuja operação será "**Registra pagamentos**".&#x20;

Por fim, vamos utilizar o módulo ferramental "**Retorno**" para exemplificar o resultado, utilizando a seguinte configuração:<br>

<figure><img src="/files/trurFLZdjOYKKDAyPnE8" alt=""><figcaption></figcaption></figure>

Após a configuração, vamos chamar a API via cliente HTTP. Para isso, vamos abrir o gatilho de API Gateway e copiar a URL fornecida.

Quando olhamos a URL percebemos que não está incluído o valor dos parâmetros. Para isso, precisamos adicioná-los. Observe a tabela abaixo:

<table><thead><tr><th>URL fornecida</th><th>URL alterada</th><th data-hidden></th></tr></thead><tbody><tr><td>https://fake-url/sales/v1/product/:id<br></td><td>https://fake-url/sales/v1/product/23?quantity=2&#x26;discount=4<br></td><td></td></tr></tbody></table>

Ao analisar a estrutura, é possível observar que o parâmetro `:id` foi substituído por "23" e que os parâmetros de query "***quantity***" e "***discount***" foram adicionados.

<figure><img src="/files/1jVPNPEicnFqR140YYOd" alt=""><figcaption><p>Observe que em amarelo está o parâmetro de rota (:id) e em verde estão os parâmetros de query (quantity e discount)</p></figcaption></figure>

{% hint style="info" %}
É possível executar manualmente e os valores serão preenchidos no gatilho.
{% endhint %}

Após a execução do fluxo, é possível verificar os logs no API Gateway para confirmar se os parâmetros foram recebidos corretamente.

<figure><img src="/files/SHYKN1CgJAGuASJGlQot" alt=""><figcaption></figcaption></figure>

Leia também: [Parâmetros de URL no API Gateway](/skyone-studio/how-to/parametros-de-url-no-api-gateway.md)


---

# 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://docs.skyone.cloud/skyone-studio/how-to/caso-de-uso-parametros-de-gatilho-api-gateway.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.
