> For the complete documentation index, see [llms.txt](https://help.cosmobots.io/help/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.cosmobots.io/help/bot-builder/fluxo-da-conversa/rest-api/exemplo-de-utilizacao-da-etapa-rest-api.md).

# Exemplo de utilização da etapa Rest API

Vamos lá!

&#x20;  1- Crie uma mensagem com duas opções para o usuário escolher.

![](https://s3.amazonaws.com/cdn.freshdesk.com/data/helpdesk/attachments/production/61000720022/original/35rzH74Ul5--xUt1THG3pIiY_nTQj-nQGw.gif?1585928187)

{% hint style="info" %}
Dica # 1: Você pode vincular a etapa [API](https://help.cosmobots.io/help/bot-builder/fluxo-da-conversa/rest-api) à diversas fases, nesse exemplo vinculamos aos botões da mensagem, mas se preferir também pode vincular às opções da mensagem criando um vinculo manual em [JavaScript](https://help.cosmobots.io/help/bot-builder/fluxo-da-conversa/javascript).
{% endhint %}

&#x20;  2- Clique em rest API e preencha:

Nome: Com o nome da API

Método: Nesse exemplo utilizamos o método post, mas existem outros métodos que podem ser utilizados.

URL: Endereço da API

Tipo de parâmetros: Aqui escolhemos Json, mas existem outras opções dentro da plataforma:

![](https://s3.amazonaws.com/cdn.freshdesk.com/data/helpdesk/attachments/production/61000720077/original/oWwfpMYLnfK9JxZVmsMV7_cfFUnEgms7jA.gif?1585928517)

{% hint style="info" %}
Dica # 2: Fique atendo à URL da API, caso ela tenha mais de uma página verifique se a url das próximas páginas sofre alteração.
{% endhint %}

&#x20;  3- Utilizando a variável response\_x trate os dados da API para puxar apenas os dados que você quer que o bot consuma, vamos puxar os dados que a primeira pergunta irá receber:

![](https://s3.amazonaws.com/cdn.freshdesk.com/data/helpdesk/attachments/production/61000720131/original/G6znWNKmdBBav5vhD8tqBSsi1EFwBi2GVQ.gif?1585928712)

{% hint style="info" %}
Dica # 3 : Para retornar os dados ao usuário final, utilize If e insira quais dados você quer que a API consuma. Segue código utilizado nesse exemplo:
{% endhint %}

```
const starships = response__x;
context.quantidade_naves = starships.next
context.quantidade_naves = starships.count
console.log(starships.count)
context.naves_disponiveis=starships.results
if (context.naves_disponiveis){
         send_message.push({
            type: 'text',
            text: 'Nome: '+ context.naves_disponiveis[0].name + '\n'+
            'Comprimento: ' + context.naves_disponiveis[0].length 
```

&#x20; 4- Agora vamos criar a api da segunda pergunta:

![](https://s3.amazonaws.com/cdn.freshdesk.com/data/helpdesk/attachments/production/61000721105/original/HnOoJr980KrRyk4VoWpUXE61H8ve7R7-9g.gif?1585933654)

{% hint style="info" %}
OBS #: Note que conforme mencionado na dica 3, tivemos uma mudança na página da API, a url da API vinculada à primeira pergunta é <https://swapi.co/api/starships/?page=3> e a vinculada à segunda pergunta é <https://swapi.co/api/starships/>, quando as páginas mudaram os dados retornados também mudam.
{% endhint %}

&#x20;4 - Agora é só criar as próximas [Mensagens](https://help.cosmobots.io/help/bot-builder/fluxo-da-conversa/mensagem), [Filtros](https://help.cosmobots.io/help/bot-builder/fluxo-da-conversa/filtro) e [Etapas](https://help.cosmobots.io/help/bot-builder/fluxo-da-conversa/etapa-existente) que irão compor o bot:

![](https://s3.amazonaws.com/cdn.freshdesk.com/data/helpdesk/attachments/production/61000721329/original/XMzKEYj4ileqb3FLOTippYVj4XSe6yL5xQ.gif?1585934648)

Vamos ver como ficou?

![](https://s3.amazonaws.com/cdn.freshdesk.com/data/helpdesk/attachments/production/61000610486/original/2787A2QgxbE1acqc1Hip9iJGM1-8frVYxQ.gif?1585257449)

{% hint style="info" %}
OBS #: API utilizada no exemplo: <https://swapi.co/api/starships/>    &#x20;
{% endhint %}
