# Chamadas de API

Chatlayer oferece uma solução para integrar seu agente conversacional com sua lógica de backend, APIs e bancos de dados. Isso permite que você crie experiências conversacionais contextuais, personalizadas e acionáveis para seus usuários.

## Integrações de API com o Chatlayer

<img src="/files/dbb4c1f82a263219ec317dd385582821bc291106" alt="Como funcionam as integrações de API." width="375">

{% hint style="warning" %}
Por favor, note que o termo *estado do diálogo* refere-se à mesma coisa que [*bloco*](/chatlayer-documentation-pt-br/buildabot/flow-logic/dialog-state.md), no contexto de ferramentas de desenvolvimento.
{% endhint %}

<details>

<summary>Como funcionam as integrações de API no Chatlayer</summary>

1. Um usuário digita e envia uma mensagem de texto a partir de um canal de interface do agente conversacional (como Facebook Messenger, chat web, etc.) para o Chatlayer.
2. A mensagem recebida passa pelo motor de PLN do Chatlayer para detectar a [intenção](/chatlayer-documentation-pt-br/navegacao/natural-language-processing-nlp/intents.md) e a intenção retornada combinada com o contexto do usuário será usada para recuperar o próximo bloco na conversa.
3. O [**API** de passo](#configure-your-api-step) pode ser adicionada em um bloco para enviar uma solicitação de API ao seu servidor com diferentes tipos de dados estáticos e/ou dados de sessão do usuário.
4. Seu servidor pode responder com um objeto com 3 campos:

* `sessão`: um objeto de sessão para salvar os dados de sessão do usuário recuperados.
* `mensagens`: um array de mensagens para enviar de volta ao canal de interface.
* `nextDialogstate`: um identificador de estado de bloco para redirecionar o usuário para o próximo bloco em um fluxo de conversa.

Os dados da sessão serão primeiro armazenados na [sessão do usuário](/chatlayer-documentation-pt-br/bot-answers/session.md) para que você possa usar esses dados em mensagens definidas no array de mensagens ou em mensagens definidas em um estado de diálogo definido como `nextDialogstate` na resposta da API. Em segundo lugar, as mensagens serão enviadas e, em seguida, o usuário é redirecionado para o `nextDialogstate`. Todos os campos são opcionais.

</details>

<table data-view="cards"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-cover data-type="files"></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Configure seu passo de API</strong></td><td></td><td></td><td><a href="/files/1e200ba4d4867ffe5ead52eddee680a8d97c4427">/files/1e200ba4d4867ffe5ead52eddee680a8d97c4427</a></td><td><a href="/pages/674c8a633c7f39e01ac59d9fde134ba5580e03b0">/pages/674c8a633c7f39e01ac59d9fde134ba5580e03b0</a></td></tr><tr><td><strong>Recursos avançados de API</strong></td><td></td><td></td><td><a href="/files/5535cb22adfe6c44e4c2e14d769b1ec0e333fa49">/files/5535cb22adfe6c44e4c2e14d769b1ec0e333fa49</a></td><td><a href="/pages/73fdd90718121dff4ef0c3941aed834d6ee9ed82">/pages/73fdd90718121dff4ef0c3941aed834d6ee9ed82</a></td></tr><tr><td><strong>Referências da API V1</strong></td><td></td><td></td><td><a href="/files/be6e010f714cd639540e974564b77aba233b6c3f">/files/be6e010f714cd639540e974564b77aba233b6c3f</a></td><td><a href="https://api.chatlayer.ai/v1/docs">https://api.chatlayer.ai/v1/docs</a></td></tr></tbody></table>


---

# 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.chatlayer.ai/chatlayer-documentation-pt-br/integrateandcode/custom-back-end-integrations.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.
