> For the complete documentation index, see [llms.txt](https://docs.chatlayer.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/navegacao/tables/operate-on-your-records/retrieve-record.md).

# Recuperar registro

Recuperar um registro da sua tabela significa que isso permite que o bot consulte e recupere informações de um registro existente.

Para exemplificar isso, usaremos um bot de reserva de academia que usa uma Tabela para recuperar informações sobre as aulas disponíveis na tabela, permitindo que os usuários visualizem e selecionem aulas para reservar.

Isso significa que, a partir de uma tabela como esta, você conseguirá recuperar apenas registros específicos, por exemplo, apenas as aulas de Zumba:

| nomeDaAula | professorDaAula | estáReservado |
| ---------- | --------------- | ------------- |
| **Zumba**  | **Jenny**       | **Nenhum**    |
| Yoga       | Sergine         | Nenhum        |
| **Zumba**  | **Chloé**       | **Nenhum**    |

{% hint style="info" %}
Recuperar registro é uma operação que não edita sua tabela. Ela apenas filtra quais registros estamos visualizando dentro de uma conversa. Geralmente é combinada com outra operação, por exemplo: recuperar um registro e depois atualizar um registro.
{% endhint %}

## Recuperar registro(s)

Para recuperar um registro:

1. Certifique-se de que você tenha uma bem definida [de traduções](/chatlayer-documentation-pt-br/navegacao/tables/create-a-table-with-records.md). Para este exemplo, usaremos uma tabela de reservas da academia com estes campos:
   * **NomeDaAula:** Nome da aula de fitness.
   * **DiaDaAula:** Data da aula, em um formato consistente (por exemplo, YYYY-MM-DD).
   * **HorárioDaAula:** Horário de início da aula, usando um formato claro (por exemplo, HH:MM AM/PM).
   * **ProfessorDaAula:** Nome do instrutor que ministra a aula.
   * **EstáReservado:** Campo de status que indica se a aula está reservada ('None' ou 'Available' por padrão, atualizado para o nome do cliente após a reserva).

<figure><img src="/files/bfcc896e83b7f6e95f3bc26bee5902581abfbb26" alt=""><figcaption><p>Uma tabela que armazena reservas de aulas de academia.</p></figcaption></figure>

2. Determine o ponto no fluxo do seu bot em que os usuários solicitarão ver as aulas disponíveis. Para este exemplo, depois que os usuários selecionarem qual aula desejam reservar, uma operação de recuperar registro acontecerá para que o bot encontre essa aula na tabela.
3. [Adicionar uma operação de Tabela](https://docs.chatlayer.ai/bot-answers/tables-beta/perform-operations-on-your-records#add-a-table-operation-to-your-flow) ao seu fluxo no ponto que você definiu.
4. Escolha **Recuperar registro** na lista de operações.
5. Selecione a tabela que você deseja atualizar. Para este exemplo, selecionaremos **Reserva de aula de academia**.<br>

<figure><img src="/files/d26333a4dab5a7396f8f4cabfc3c903592b8fadd" alt="" width="375"><figcaption><p>Selecione a tabela correta.</p></figcaption></figure>

6. Na **Configuração da operação** seção, clique em **+ Adicionar filtro** para configurar a consulta para filtrar registros com base no(s) valor(es) ou em uma ou mais coluna(s). Para este exemplo:
   * Filtramos observando a **estáReservado** coluna. Se a **estáReservado** célula for igual a **Nenhum**, isso significa que a aula está disponível para reservas. Isso significa que recuperaremos apenas aulas disponíveis.
   * Além disso, incorporamos um filtro para **nomeDaAula** corresponder à seleção do usuário, garantindo que a consulta retorne aulas que estejam alinhadas com a preferência do usuário. Isso significa que, se o usuário estiver interessado em aulas de yoga, então recuperaremos apenas aulas de yoga e não outras.

<figure><img src="/files/fd676910c3ede29df31bb70bf4338b1200518049" alt="" width="375"><figcaption><p>Defina critérios de seleção para recuperar registros da sua tabela.</p></figcaption></figure>

7. Em **Limite**, defina um limite para o número de resultados da consulta. Neste exemplo, limitaremos os resultados a 2. Isso garante que o bot exiba uma lista concisa de aulas disponíveis para o usuário escolher.
8. Se você precisar pular alguns registros da sua operação de recuperação, preencha o campo abaixo de **Pular**. Para este exemplo, não permitiremos pular os primeiros registros dos resultados, então não é necessário fazer nada ali.
9. Em **Variável de destino**, atribua os resultados recuperados a uma variável. Para este exemplo, nós a nomearemos de `available_class`. Essa variável manterá a(s) aula(s) recuperada(s) para usá-las dentro da conversa.

<figure><img src="/files/75a23cad10d65a736d2b293d088a4d6488d515f7" alt="" width="256"><figcaption><p>Configure seu limite e a variável de destino ao recuperar registros.</p></figcaption></figure>

10. Clique em **Salvar**.

## Exiba o(s) registro(s) recuperado(s)

Acima, você aprendeu como recuperar registros de uma tabela, que neste exemplo são as aulas de academia disponíveis. Para exibir esses registros recuperados na conversa:

1. Adicione um novo [bloco de mensagem](https://docs.chatlayer.ai/bot-answers/dialog-state/message-components) projetado para permitir que os usuários escolham entre as aulas disponíveis. Este bloco serve como o ponto em que os usuários podem visualizar e selecionar o horário de aula preferido.
2. Para este exemplo, vamos chamar este bloco de **Exibir aulas**.
3. Adicione um **Botões** etapa.
4. Para comunicar a disponibilidade das aulas de forma concisa, formate os títulos dos botões para incluir o dia e a hora de cada aula. Use a `{variableName[index].values.fieldName}` estrutura de variável para incorporar as informações da aula recuperada:

   * `{available_class[0].values.classDay} às {available_class[0].values.classTime}`.

   Como exemplo prático, se a primeira aula retornada for na segunda-feira às 10h, seu botão poderá ser intitulado "Segunda-feira às 10h".
5. Como definimos a operação para retornar até duas aulas, certifique-se de que sua mensagem inclua um botão para cada opção disponível. Duplique a abordagem de formatação para o segundo botão, substituindo `[0]` com `[1]` para acessar o segundo item no array:

   * `{available_class[1].values.classDay} às {available_class[1].values.classTime}`

   Isso garante que ambas as opções sejam apresentadas para seleção do usuário.

<figure><img src="/files/fac296a5ff4e7257b55d133041698111099d3191" alt="" width="375"><figcaption><p>Usando variável para recuperar registros da tabela em botões</p></figcaption></figure>

6. Clique em **Salvar**.
7. É crucial verificar a funcionalidade da sua operação de recuperar registro para garantir que os dados sejam recuperados e exibidos corretamente. Use o emulador do bot ou um ambiente de teste ao vivo para simular as consultas dos usuários por aulas disponíveis.

<figure><img src="/files/af35672700be2ffccc223f92aba9b353bae349f9" alt="" width="375"><figcaption><p>Teste seu fluxo de recuperar registro</p></figcaption></figure>

8. Verifique se o bot recupera e exibe as informações corretas da aula com base na disponibilidade na tabela.

<figure><img src="/files/c6856e2da72cf45890f48e84df967991e46154c8" alt=""><figcaption><p>A operação de recuperar registro funciona na tabela como esperado.</p></figcaption></figure>

***

{% hint style="success" %}
Procurando um template de bot rápido e fácil para brincar com Tabelas? O [bot Gym](/chatlayer-documentation-pt-br/comece-rapido/bot-templates/gym.md) é um caso de uso representativo.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.chatlayer.ai/chatlayer-documentation-pt-br/navegacao/tables/operate-on-your-records/retrieve-record.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
