> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

# Zendesk

## Visão geral

Conecte seus agentes de IA da ElevenLabs ao [Zendesk](https://www.zendesk.com/) para gerenciar tickets de suporte, usuários e organizações. Essa integração permite que seus agentes criem e atualizem tickets, pesquisem registros existentes, gerenciem usuários e respondam a comentários recebidos em tickets.

## Recursos

| Recurso                     | Suporte                                                                                                                                                                                                                   |
| --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Modo de retenção zero (ZRM) | Não compatível                                                                                                                                                                                                            |
| Anexos em gatilhos          | Imagens (PNG, JPEG, GIF, WebP) e arquivos PDF em comentários recebidos em tickets, quando **Allow file attachments** está ativado nas configurações do agente e o LLM do agente aceita imagens ou documentos como entrada |
| Anexos em ferramentas       | Não compatível — ferramentas como `zendesk_show_ticket` e `zendesk_list_ticket_comments` retornam campos de texto e não baixam anexos                                                                                     |

## Configuração

Esta integração oferece suporte a três métodos de autenticação: o app OAuth da ElevenLabs, seu próprio cliente OAuth e um token de API.

> **Note**
>
> O Zendesk está [descontinuando os tokens de API](https://support.zendesk.com/hc/en-us/articles/10851263566234)
> como método de autenticação e migrando para acesso somente por OAuth. As integrações do Zendesk existentes baseadas em token de API continuarão funcionando até 30 de abril de 2027. A ElevenLabs está trabalhando para dar suporte a essa migração e entrará em contato proativamente com os clientes afetados para ajudar na transição para OAuth antes disso. Você pode mudar para o método **Custom OAuth client** abaixo a qualquer momento.

#### OAuth

#### Encontrar seu subdomínio

Seu subdomínio do Zendesk é a primeira parte da sua URL do Zendesk, por exemplo, `mycompany` em `mycompany.zendesk.com`.

#### Conectar na ElevenLabs

Na configuração da integração da ElevenLabs, selecione a credencial **OAuth2**, insira seu **subdomínio** e clique em **Connect**.

#### Autorizar a conexão

O Zendesk exibe uma página de autorização que lista os acessos solicitados pelo app da ElevenLabs: acesso de leitura em toda a sua conta, além de acesso de gravação a tickets, usuários, webhooks e gatilhos. Entre com um usuário que tenha as permissões necessárias para seu agente e clique em **Allow**. O Zendesk redireciona você de volta à ElevenLabs, e a conexão é criada.

Autorize como administrador se você pretende usar gatilhos do Zendesk — criar webhooks e editar gatilhos é restrito a administradores do Zendesk.

#### Token de API

#### Ativar o acesso por token de API

Na [Central de administração do Zendesk](https://support.zendesk.com/hc/en-us/articles/4581766374554-Using-Admin-Center), acesse **Apps and integrations > APIs > Zendesk API** e ative **Token Access**.

#### Gerar um token de API

Acesse **Apps and integrations > APIs > API tokens** e clique em **Add API token**. Copie o token imediatamente — ele não será exibido novamente depois que você fechar a caixa de diálogo.

#### Encontrar seu subdomínio

Seu subdomínio do Zendesk é a primeira parte da sua URL do Zendesk, por exemplo, `mycompany` em `mycompany.zendesk.com`.

#### Conectar na ElevenLabs

Na configuração da integração da ElevenLabs, insira seu **e-mail**, **token de API** e **subdomínio**.

#### Cliente OAuth personalizado

#### Copiar a URL de redirecionamento

Na configuração da integração do Zendesk na ElevenLabs, copie a **URL de redirecionamento**.

#### Criar um cliente OAuth no Zendesk

Na [Central de administração do Zendesk](https://support.zendesk.com/hc/en-us/articles/4581766374554-Using-Admin-Center), acesse **Apps and integrations > APIs > OAuth clients** e clique em **Add Client**. Insira um **nome** e um **identificador** exclusivo.

#### Adicionar a URL de redirecionamento

Cole a **URL de redirecionamento** copiada da ElevenLabs na configuração do cliente OAuth.

#### Salvar o segredo

Salve o cliente OAuth. O Zendesk exibe um **segredo** — copie-o e guarde-o em segurança. Ele não será exibido novamente depois que você fechar a caixa de diálogo.

#### Conectar na ElevenLabs

Na configuração da integração da ElevenLabs, insira o **identificador** como o ID do cliente e forneça o **segredo**. O Zendesk redirecionará você para autorizar a conexão.

## Escopos do OAuth

A conexão com a credencial **OAuth2** concede à ElevenLabs os seguintes [escopos OAuth do Zendesk](https://developer.zendesk.com/api-reference/ticketing/oauth/grant_type_tokens/). O acesso de leitura é concedido para toda a conta, enquanto o acesso de gravação é solicitado por recurso para que o token não possa modificar recursos que a integração não usa.

| Escopo           | Finalidade                                                                                                                                                                                                                                                                                                         |
| ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `read`           | Acesso de leitura aos endpoints GET. Usado para buscar tickets, comentários de tickets e seus anexos, usuários, organizações, tickets de problemas e resultados de pesquisa e — quando um gatilho está conectado — consultar o gatilho do Zendesk e ler o segredo de assinatura do webhook criado pela ElevenLabs. |
| `tickets:write`  | Criar, atualizar, excluir e mesclar tickets, publicar comentários públicos e internos e adicionar ou remover tags. Usado pelas ferramentas de tickets e para publicar a resposta do agente quando um gatilho do Zendesk é acionado.                                                                                |
| `users:write`    | Criar, atualizar e excluir usuários, incluindo criação ou atualização em massa. Usado pelas ferramentas de gerenciamento de usuários.                                                                                                                                                                              |
| `webhooks:write` | Criar o webhook que entrega eventos de tickets ao seu agente quando você ativa um gatilho do Zendesk e excluir esse webhook quando desativa o gatilho.                                                                                                                                                             |
| `triggers:write` | Adicionar a ação de webhook da ElevenLabs ao gatilho do Zendesk que você nomear e remover essa ação quando desativar o gatilho.                                                                                                                                                                                    |

Um token nunca excede as permissões do usuário que o autorizou — o acesso efetivo é a interseção entre esses escopos e a função desse usuário no Zendesk.

Esses escopos não se aplicam aos outros dois métodos de autenticação: um cliente OAuth personalizado solicita `read` e `write` (acesso completo de leitura e gravação), e um token de API tem todas as permissões do usuário do Zendesk ao qual pertence.

## Divulgação de dados

A tabela abaixo lista todos os campos que a integração acessa na sua conta do Zendesk, se a ElevenLabs os armazena e quando e por que são acessados. **Lido** significa que o valor é usado durante o processamento, mas não é persistido. **Lido e armazenado** significa que ele é persistido no registro de conversa da ElevenLabs. **Gravado** significa que a integração o envia ao Zendesk.

| Dados                                                                  | Acesso            | Motivo                                                                                                                                                                                                                                        |
| ---------------------------------------------------------------------- | ----------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| ID do ticket                                                           | Lido e armazenado | Chega na carga do webhook de gatilho — os únicos dados do ticket que o Zendesk envia à ElevenLabs. Armazenado como o ID externo da conversa, como a variável dinâmica `integration__zendesk_ticket_id` e como um link de volta para o ticket. |
| Assunto do ticket                                                      | Lido e armazenado | Lido do ticket quando um gatilho é acionado. Armazenado como a variável dinâmica `integration__zendesk_ticket_subject` para que o prompt de sistema e as ferramentas possam consultar o assunto do ticket.                                    |
| Data e hora de criação do ticket                                       | Lido e armazenado | Lidas com o ticket. Armazenadas como a variável dinâmica `integration__zendesk_ticket_created_at` para uso no prompt, por exemplo, para avaliar há quanto tempo o ticket foi criado.                                                          |
| ID do solicitante                                                      | Lido e armazenado | Lido com o ticket. Armazenado como a variável dinâmica `integration__zendesk_ticket_requester_id` e usado para atribuir comentários — um solicitante que também é membro da equipe ainda é tratado como cliente.                              |
| Tags do ticket                                                         | Lido              | Lidas em cada execução do gatilho para detectar uma tag `agent-rating-<score>` e uma tag `force-agent`. Apenas a avaliação resultante é armazenada na conversa; a lista de tags não é persistida.                                             |
| Conteúdo dos comentários, públicos e internos                          | Lido e armazenado | Lido dos comentários do ticket em cada execução do gatilho. Armazenado como a transcrição da conversa e enviado ao LLM do agente — esta é a conversa à qual o agente responde.                                                                |
| IDs dos comentários                                                    | Lido e armazenado | Lidos com os comentários. O ID mais recente é armazenado como marcador do último processamento para que a próxima execução do gatilho ignore comentários que o agente já respondeu.                                                           |
| ID do autor do comentário                                              | Lido e armazenado | Lido com os comentários e usado para identificar o autor. Armazenado como o identificador de usuário da mensagem da transcrição quando o autor não tem endereço de e-mail.                                                                    |
| Função do autor do comentário                                          | Lido              | Lida para cada autor de comentário para decidir se um comentário se torna uma mensagem de cliente ou da equipe na transcrição. A função em si não é persistida, apenas a atribuição resultante em cada mensagem.                              |
| Endereço de e-mail do autor do comentário                              | Lido e armazenado | Lido para cada autor de comentário. Armazenado como o identificador de usuário em mensagens da transcrição atribuídas ao cliente, para que as conversas possam ser vinculadas a uma pessoa entre diferentes tickets.                          |
| Endereço de e-mail do solicitante                                      | Lido e armazenado | Lido com o registro de usuário do solicitante. Armazenado como a variável dinâmica `integration__zendesk_ticket_requester_email` para que o prompt e as ferramentas possam se dirigir ao cliente ou encontrá-lo.                              |
| Metadados do anexo: nome do arquivo, tipo MIME, tamanho                | Lido e armazenado | Lidos com os comentários para verificar se um anexo é de um tipo compatível e está dentro dos limites de tamanho. Armazenados na mensagem da transcrição à qual o anexo pertence.                                                             |
| Conteúdo dos arquivos anexados                                         | Lido e armazenado | Baixado somente quando **Permitir anexos de arquivos** está ativado no agente e o LLM dele oferece suporte ao tipo de arquivo. Armazenado como arquivos da conversa para que o agente possa ler o que o cliente enviou.                       |
| Subdomínio do Zendesk                                                  | Lido e armazenado | Fornecido por você ao conectar. Armazenado nas configurações de conexão da integração porque compõe o URL base da API.                                                                                                                        |
| E-mail da conta do Zendesk, somente para autenticação por token da API | Lido e armazenado | Fornecido por você ao conectar. Armazenado nas configurações de conexão porque a autenticação por token da API envia o e-mail da conta junto com o token.                                                                                     |
| Token da API, tokens de acesso e atualização OAuth                     | Lido e armazenado | Armazenados criptografados em repouso e usados apenas para autenticar chamadas da API. Nunca são expostos ao agente, ao prompt ou à API.                                                                                                      |
| Segredo de assinatura do webhook                                       | Lido e armazenado | Lido uma vez quando você ativa um gatilho. Armazenado criptografado e usado para verificar se os webhooks recebidos realmente vêm da sua conta do Zendesk.                                                                                    |
| Título, condições e ações do gatilho                                   | Lido              | Lidos quando você ativa um gatilho, para encontrá-lo pelo nome e preservar as ações existentes quando a ação de webhook da ElevenLabs é adicionada. Não são persistidos.                                                                      |
| Resposta do agente                                                     | Gravado           | Publicada como comentário público no ticket ou como comentário interno quando o modo sombra está ativado. Esse é o objetivo da integração.                                                                                                    |
| Link da conversa                                                       | Gravado           | Publicado uma vez por ticket como comentário interno para que a equipe possa abrir a conversa na ElevenLabs.                                                                                                                                  |
| Aviso de erro de anexo                                                 | Gravado           | Publicado como comentário interno quando um anexo foi ignorado por ser de um tipo incompatível, grande demais ou por não ter sido baixado, para que a equipe saiba que o agente não o viu.                                                    |
| Registro de webhook da ElevenLabs                                      | Gravado           | Criado quando você ativa um gatilho do Zendesk e excluído quando o desativa. Este é o endpoint que o Zendesk chama em eventos de ticket.                                                                                                      |
| Ação de webhook no seu gatilho                                         | Gravado           | Adicionada ao gatilho que você nomeia quando o ativa e removida quando o desativa. As ações existentes no gatilho são preservadas.                                                                                                            |
| Tickets, comentários, tags, usuários e organizações                    | Gravado           | Gravados apenas pelas ferramentas do Zendesk que você ativa no agente, com os parâmetros fornecidos pelo agente durante uma conversa. Nenhuma gravação ocorre fora de uma chamada de ferramenta ou de uma resposta de gatilho.                |

A integração chama a API do Zendesk somente quando um gatilho conectado é acionado ou quando um agente invoca uma ferramenta do Zendesk. Ela não consulta sua conta do Zendesk periodicamente nem exporta dados em massa.

Os registros retornados pelas ferramentas do Zendesk são armazenados na transcrição da conversa como parte do resultado da chamada de ferramenta; portanto, uma ferramenta que lê um registro também o armazena. A retenção dos dados armazenados segue as configurações de privacidade do agente que processou o ticket, incluindo a exclusão de transcrições e de informações de identificação pessoal.

## Ferramentas do Zendesk

Adicione ferramentas do Zendesk ao seu agente para gerenciar tickets, usuários e organizações durante as conversas. Quando a integração estiver conectada, você poderá ativar ferramentas individuais na página de configuração do agente.

### Ferramentas disponíveis

A integração oferece mais de 30 ferramentas organizadas nas seguintes categorias:

* **Tickets** — crie, atualize, exclua, liste e pesquise tickets. Operações em massa (criar vários, atualizar vários, excluir vários) também estão disponíveis.
* **Comentários e tags** — adicione comentários públicos ou internos aos tickets e inclua ou remova tags.
* **Usuários** — pesquise, crie, atualize e exclua usuários. A criação ou atualização em massa é compatível com a sincronização de dados de usuários.
* **Organizações** — consulte detalhes da organização e liste os tickets de uma organização.
* **Pesquisa** — execute consultas de pesquisa do Zendesk em tickets, usuários e organizações (por exemplo, `type:ticket status:open`).

### Exemplos de ferramentas

#### zendesk_create_ticket

Cria um novo ticket de suporte. O agente coleta os detalhes do solicitante e abre um ticket em seu nome.

| Parâmetro                | Tipo    | Descrição                                                  |
| ------------------------ | ------- | ---------------------------------------------------------- |
| `ticket.subject`         | string  | Linha de assunto curta para o ticket                       |
| `ticket.comment.body`    | string  | Descrição detalhada do problema                            |
| `ticket.requester.email` | string  | Endereço de e-mail do solicitante                          |
| `ticket.requester.name`  | string  | Nome completo do solicitante                               |
| `ticket.priority`        | string  | `urgent`, `high`, `normal` ou `low`                        |
| `ticket.status`          | string  | `new`, `open`, `pending`, `hold`, `solved` ou `closed`     |
| `ticket.assignee_id`     | integer | ID do agente ao qual atribuir o ticket                     |
| `ticket.group_id`        | integer | ID do grupo para o qual direcionar o ticket                |
| `ticket.custom_fields`   | array   | Matriz de objetos `{id, value}` para campos personalizados |

#### zendesk_search

Pesquisa tickets, usuários ou organizações no Zendesk usando a sintaxe de consulta de pesquisa do Zendesk.

| Parâmetro | Tipo   | Descrição                                                                                           |
| --------- | ------ | --------------------------------------------------------------------------------------------------- |
| `query`   | string | Consulta de pesquisa (por exemplo, `type:ticket status:open` ou `type:user email:user@example.com`) |

#### zendesk_add_comment

Adiciona um comentário público ou interno a um ticket existente — útil para publicar resumos de chamadas ou notas de acompanhamento.

| Parâmetro                  | Tipo    | Descrição                                              |
| -------------------------- | ------- | ------------------------------------------------------ |
| `ticket_id`                | integer | O ticket no qual comentar                              |
| `ticket.comment.body`      | string  | Texto do comentário em texto simples                   |
| `ticket.comment.html_body` | string  | Versão HTML do comentário (opcional)                   |
| `ticket.comment.public`    | boolean | Indica se o comentário fica visível para o solicitante |

#### zendesk_get_user

Recupera o perfil de um usuário para que o agente possa cumprimentar os solicitantes pelo nome ou verificar sua identidade.

| Parâmetro | Tipo    | Descrição                                   |
| --------- | ------- | ------------------------------------------- |
| `user_id` | integer | O ID do usuário do Zendesk a ser pesquisado |

### Configuração das ferramentas

#### Adicionar uma ferramenta de integração

Na página de configuração do agente, clique em **Adicionar ferramenta** e selecione **Adicionar ferramenta de integração**.

![Adicionar ferramenta de integração](/docs/_fern-img/ef3a82e0747f1b1da18fb6b4755812abe161d436582312e47836e621a44d83c7.webp)

#### Selecionar ferramentas do Zendesk

Escolha sua conexão do Zendesk e ative as ferramentas que deseja que o agente use. Você pode ativar quantas ferramentas precisar — por exemplo, um agente de triagem somente leitura pode precisar apenas de ferramentas de pesquisa e listagem, enquanto um agente de atendimento completo também pode criar e atualizar tickets.

![Selecionar ferramentas do Zendesk](/docs/_fern-img/9161ae75a4c514d477174622bd4857d6faf62a11825bc7d4d191176e52a72f91.webp)

#### (Opcional) Fornecer parâmetros

Os parâmetros de cada ferramenta são preenchidos pelo agente durante a conversa, com base no que o solicitante diz. Você não precisa definir valores de parâmetros diretamente no código. No entanto, é possível preencher previamente ou restringir parâmetros específicos — por exemplo, definir um `priority` ou `group_id` padrão — para orientar o comportamento do agente.

#### Configuração legada de webhook

> **Note**
>
> Se você usar a integração nativa do Zendesk, as ferramentas serão configuradas automaticamente. As etapas abaixo
> se aplicam apenas à configuração manual de webhook.

A integração legada usa três ferramentas de webhook para criar o agente de suporte. Revise a configuração de cada ferramenta nas abas abaixo.

#### zendesk_get_ticket_comments

**Nome:** zendesk_get_ticket_comments
**Descrição:** Recupera os comentários de um ticket.
**Método:** GET
**URL:** `https://acmecorp.zendesk.com/api/v2/tickets/{ticket_id}/comments.json`

**Cabeçalhos:**

* **Content-Type:** `application/json`
* **Authorization:** *(Segredo: `zendesk_key`)*

**Parâmetros de caminho:**

* **ticket_id:** Extraia o valor do campo `id` nos resultados de get_resolved_tickets.

**JSON da ferramenta:**

```json
{
  "type": "webhook",
  "name": "zendesk_get_ticket_comments",
  "description": "Retrieves the comments of a ticket.",
  "api_schema": {
    "url": "https://acmecorp.zendesk.com/api/v2/tickets/{ticket_id}/comments.json",
    "method": "GET",
    "path_params_schema": [
      {
        "id": "ticket_id",
        "type": "string",
        "description": "Extract the value from the id field in the get_resolved_tickets results.",
        "dynamic_variable": "",
        "constant_value": "",
        "required": false,
        "value_type": "llm_prompt"
      }
    ],
    "query_params_schema": [],
    "request_body_schema": null,
    "request_headers": [
      {
        "type": "secret",
        "name": "Authorization",
        "secret_id": "zendesk_api_token"
      },
      {
        "type": "value",
        "name": "Content-Type",
        "value": "application/json"
      }
    ]
  },
  "response_timeout_secs": 20,
  "dynamic_variables": {
    "dynamic_variable_placeholders": {}
  }
}
```

#### zendesk_get_resolved_tickets

**Nome:** zendesk_get_resolved_tickets
**Descrição:** Recupera todos os tickets de suporte resolvidos do Zendesk.
**Método:** GET
**URL:** `https://acmecorp.zendesk.com/api/v2/search.json?query=type:ticket+status:solved`

**Cabeçalhos:**

* **Content-Type:** `application/json`
* **Authorization:** *(Segredo: `zendesk_key`)*

**JSON da ferramenta:**

```json
{
  "type": "webhook",
  "name": "zendesk_get_resolved_tickets",
  "description": "Retrieves all resolved support tickets from Zendesk.",
  "api_schema": {
    "url": "https://acmecorp.zendesk.com/api/v2/search.json?query=type:ticket+status:solved",
    "method": "GET",
    "path_params_schema": [],
    "query_params_schema": [],
    "request_body_schema": null,
    "request_headers": [
      {
        "type": "secret",
        "name": "Authorization",
        "secret_id": "zendesk_api_token"
      },
      {
        "type": "value",
        "name": "Content-Type",
        "value": "application/json"
      }
    ]
  },
  "response_timeout_secs": 20,
  "dynamic_variables": {
    "dynamic_variable_placeholders": {}
  }
}
```

#### zendesk_open_ticket

**Nome:** zendesk_open_ticket
**Descrição:** Abre um novo ticket de suporte.
**Método:** POST
**URL:** `https://acmecorp.zendesk.com/api/v2/tickets.json`

**Cabeçalhos:**

* **Content-Type:** `application/json`
* **Authorization:** *(Segredo: `zendesk_key`)*

**Parâmetros do corpo:**

* **ticket:** Um objeto que contém:
  * **comment:**
    * **body:** Descrição detalhada do problema de suporte.
  * **subject:** Uma linha de assunto curta.
  * **requester:**
    * **name:** O nome completo do solicitante.
    * **email:** Um endereço de e-mail válido.

**JSON da ferramenta:**

```json
{
  "type": "webhook",
  "name": "zendesk_open_ticket",
  "description": "API endpoint to open a customer support ticket\nMake sure the authorization header is formated as \"Authorization: Basic <auth>\".",
  "api_schema": {
    "url": "https://acmecorp.zendesk.com/api/v2/tickets.json",
    "method": "POST",
    "path_params_schema": [],
    "query_params_schema": [],
    "request_body_schema": {
      "id": "body",
      "type": "object",
      "description": "Details for the support ticket",
      "required": false,
      "properties": [
        {
          "id": "ticket",
          "type": "object",
          "description": "This is the main ticket body which contains all of the information needed to open a ticket.",
          "required": true,
          "properties": [
            {
              "id": "comment",
              "type": "object",
              "description": "This is the comment with information about the issue.",
              "required": true,
              "properties": [
                {
                  "id": "body",
                  "type": "string",
                  "description": "Body of the issue. Include all relevant details for the issue. ",
                  "dynamic_variable": "",
                  "constant_value": "",
                  "required": true,
                  "value_type": "llm_prompt"
                }
              ]
            },
            {
              "id": "subject",
              "type": "string",
              "description": "Create a short subject line for the support issue. Add \"DEMO: \" before the subject.",
              "dynamic_variable": "",
              "constant_value": "",
              "required": true,
              "value_type": "llm_prompt"
            },
            {
              "id": "requester",
              "type": "object",
              "description": "The details of the support requester",
              "required": true,
              "properties": [
                {
                  "id": "email",
                  "type": "string",
                  "description": "The email address of the requester. This should look like \njohnsmith@hotmail.com\nYou MUST use the @ symbol and remove any spaces.",
                  "dynamic_variable": "",
                  "constant_value": "",
                  "required": true,
                  "value_type": "llm_prompt"
                },
                {
                  "id": "name",
                  "type": "string",
                  "description": "The full name of the requester. ",
                  "dynamic_variable": "",
                  "constant_value": "",
                  "required": true,
                  "value_type": "llm_prompt"
                }
              ]
            }
          ]
        }
      ]
    },
    "request_headers": [
      {
        "type": "secret",
        "name": "Authorization",
        "secret_id": "zendesk_api_token"
      },
      {
        "type": "value",
        "name": "Content-Type",
        "value": "application/json"
      }
    ]
  },
  "response_timeout_secs": 20,
  "dynamic_variables": {
    "dynamic_variable_placeholders": {}
  }
}
```

> **Warning**
>
> Não se esqueça de adicionar o segredo do Zendesk do seu workspace aos segredos do agente.

## Gatilhos do Zendesk

Configure gatilhos do Zendesk para que seu agente monitore e reaja a comentários recebidos em tickets, oferecendo suporte de primeira linha.

### Configuração

#### Criar um gatilho no Zendesk

No Zendesk Admin Center, acesse **Objects and rules > Business rules > Triggers** e clique em **Add trigger**. Configure as condições que determinam a quais eventos de ticket o agente deve responder (por exemplo, novos tickets em um grupo específico ou comentários em tickets com determinada tag). Anote o nome do gatilho — você precisará dele na próxima etapa.

Se não conseguir salvar o gatilho porque falta uma ação, adicione uma ação simples, como incluir uma tag "agent is processing" no ticket.

#### Conectar o gatilho no ElevenLabs

Na página de configuração do agente, adicione um novo gatilho e selecione **Zendesk Trigger**. Configure os campos:

* **Agente**: o agente que atende às conversas recebidas.
* **Nome da regra do gatilho**: o nome do gatilho do Zendesk que você criou na etapa anterior.
* **Limite diário de tickets** (opcional): número máximo de tickets que o agente atende por dia. Deixe em branco para não definir limite.

Ao ativar o gatilho, a ElevenLabs cria um webhook na sua conta do Zendesk e o adiciona como uma ação ao gatilho especificado. Ao desativar o gatilho, o webhook e a ação são removidos.

#### (Opcional) Verificar o gatilho no Zendesk

No Zendesk Admin Center, acesse **Objects and rules > Business rules > Triggers** e abra o gatilho criado anteriormente. Você verá uma nova ação adicionada a ele.

Se tiver criado outra ação antes, agora você poderá removê-la.

### Modo de observação

Ative o modo de observação em um gatilho do Zendesk para permitir que o agente observe e elabore respostas sem responder diretamente aos clientes. Quando o modo de observação está ativo, o agente escreve as respostas como **comentários internos** no ticket, em vez de respostas públicas. Apenas agentes e administradores do Zendesk podem ver comentários internos — o usuário final não é notificado.

> **Warning**
>
> O modo de observação afeta apenas a forma como o agente publica as respostas. Se o agente usar ferramentas que modificam
> o ticket (por exemplo, alterando o status, adicionando tags ou atribuindo o ticket), essas alterações ainda
> serão aplicadas. Para evitar modificações indesejadas, use uma ramificação separada do agente sem chamadas de ferramentas
> que façam modificações.

O modo de observação é útil para avaliar a qualidade do agente antes de colocá-lo em operação. Revise os comentários internos junto às respostas reais de suporte para comparar a precisão e o tom, depois promova o agente para o modo ativo quando estiver confiante nas respostas geradas.

### Como evitar loops

Quando o agente responde a um comentário de ticket pela API do Zendesk, essa resposta é um novo comentário — o que pode acionar o agente novamente e criar um loop infinito. Adicione uma das condições a seguir ao gatilho do Zendesk para evitar isso.

**Exclua a conta de serviço do gatilho.** Crie um usuário separado do Zendesk para a integração (por exemplo, `ai-agent@yourcompany.com`) e use as credenciais dessa conta ao conectar no ElevenLabs. Em seguida, adicione esta condição ao gatilho do Zendesk:

* **Current User**, **Is Not**, **\<sua conta de serviço>**

**Exclua atualizações da API do gatilho.** Isso filtra todas as atualizações feitas pela API do Zendesk, independentemente de qual usuário as realizou:

* **Ticket > Update Via**, **Is Not**, **Web Service (API)**

## Links úteis

* [Documentação da API do Zendesk](https://developer.zendesk.com/api-reference/)
* [Gerenciamento de tokens de API](https://support.zendesk.com/hc/en-us/articles/4408889192858-Managing-API-token-access-to-the-Zendesk-API)
* [Guia de gatilhos do Zendesk](https://support.zendesk.com/hc/en-us/articles/203662246-About-triggers-and-how-they-work)