{
  "info": {
    "name": "Zynzap API",
    "description": "Coleção gerada da especificação OpenAPI (docs-site/openapi/zynzap.yaml). Defina as variáveis `baseUrl` e `apiKey` (use uma chave `zz_test_` para testar). Operações pagas exigem `billing.quoteId` de `POST /billing/quotes`.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://api.zynzap.com.br/v1"
    },
    {
      "key": "apiKey",
      "value": "zz_test_SUA_CHAVE"
    }
  ],
  "item": [
    {
      "name": "Visão geral",
      "item": [
        {
          "name": "Descrever a API",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/",
              "host": [
                "{{baseUrl}}"
              ],
              "path": []
            },
            "description": "Lista as operações disponíveis, limites e rotas. Não exige chave e pode ser cacheado por 5 minutos."
          }
        },
        {
          "name": "Identidade da chave (GetApiKeyIdentity)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetApiKeyIdentity",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetApiKeyIdentity"
              ]
            },
            "description": "Devolve a conta, as permissões e os números que a chave usada alcança. Útil para validar a configuração no início da integração.\n\n**Permissão:** `sessions:read`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Números do painel (GetDashboardStats)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetDashboardStats",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetDashboardStats"
              ]
            },
            "description": "Totais da Visão geral (números, mensagens, campanhas). Exige chave sem restrição de números.\n\n**Permissão:** `dashboard:read`.\n\nDashboard aggregate stats",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        }
      ]
    },
    {
      "name": "Cobrança e cotações",
      "item": [
        {
          "name": "Criar cotação",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/billing/quotes",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "billing",
                "quotes"
              ]
            },
            "description": "Calcula e reserva o preço máximo de uma operação paga **antes** de executá-la. A cotação vale por 15 minutos e fica presa ao `method`, ao `request` exato e aos números envolvidos: mudou o conteúdo, peça outra.\n\n**Operações cotáveis:** `SendMessage`, `SendImageMessage`, `SendVoiceNote`, `SendVideoMessage`, `SendDocumentMessage`, `SendConversationMessage`, `StartCampaign`, `StartCampaignWithTemplate`, `StartWarmup`, `ResumeWarmupRun`, `ResumeCampaign`, `CorrectMessage`, `SummarizeConversation`, `SuggestReply`, `SuggestLeadClassification`.\n\n**Permissão:** a mesma da operação cotada. Limite: 60 cotações por minuto por conta.\n\nRespostas grátis dentro da janela de 24 horas do atendimento voltam com `coverage: \"inbox_window\"` e custo zero, mas ainda assim precisam do `quoteId`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"method\": \"SendMessage\",\n  \"request\": {\n    \"session_id\": \"8c1f7a52-4d1e-4b8a-9a43-2f6f5d0c9e11\",\n    \"to_jid\": \"5511987654321\",\n    \"text\": \"Olá! Seu pedido #1234 saiu para entrega.\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        }
      ]
    },
    {
      "name": "Números (sessões)",
      "item": [
        {
          "name": "Criar número e parear (SSE)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/sessions/create",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "sessions",
                "create"
              ]
            },
            "description": "Cria um número e devolve, por **Server-Sent Events**, o QR Code (`qr.data`) ou o código de pareamento (`pair_code.code`) e o progresso até `connected` ou `failed`. Exige chave com **Permitir criar e parear números** e vaga no plano.\n\nCada mensagem chega como `event: message` com um `SessionEvent` em JSON; o fim é `event: end`; falhas, `event: error` com o corpo de erro padrão. Prazo máximo do stream: 5 minutos. Limite: 10 aberturas por minuto por conta.\n\n**Permissão:** `sessions:manage`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {\n    \"name\": \"Loja Centro\",\n    \"qr\": {}\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Reconectar número (SSE)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/sessions/resume",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "sessions",
                "resume"
              ]
            },
            "description": "Reconecta um número já pareado e transmite o progresso por SSE. Se o WhatsApp pedir novo pareamento, chega um novo `qr`.\n\nCada mensagem chega como `event: message` com um `SessionEvent` em JSON; o fim é `event: end`; falhas, `event: error` com o corpo de erro padrão. Prazo máximo do stream: 5 minutos. Limite: 10 aberturas por minuto por conta.\n\n**Permissão:** `sessions:manage`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {\n    \"session_id\": \"8c1f7a52-4d1e-4b8a-9a43-2f6f5d0c9e11\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar números conectados (ListConnectedDevices)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListConnectedDevices",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListConnectedDevices"
              ]
            },
            "description": "Só os números com conexão ativa agora.\n\n**Permissão:** `sessions:read`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar números (ListSessions)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListSessions",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListSessions"
              ]
            },
            "description": "Todos os números que a chave alcança, com status de conexão.\n\n**Permissão:** `sessions:read`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {\n    \"pagination\": {\n      \"page\": 1,\n      \"page_size\": 20\n    }\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Limpar números inativos (PruneSessions)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/PruneSessions",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "PruneSessions"
              ]
            },
            "description": "Remove números que nunca conectaram ou estão parados há muito tempo.\n\n**Permissão:** `sessions:manage`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Consultar um número (GetSession)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetSession",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetSession"
              ]
            },
            "description": "**Permissão:** `sessions:read`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Desconectar um número (DisconnectSession)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/DisconnectSession",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "DisconnectSession"
              ]
            },
            "description": "Encerra a conexão com o WhatsApp sem excluir o número. Para reconectar use `POST /sessions/resume`.\n\n**Permissão:** `sessions:manage`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Excluir um número (DeleteSession)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/DeleteSession",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "DeleteSession"
              ]
            },
            "description": "Desconecta e remove o número da conta. Não pode ser desfeito.\n\n**Permissão:** `sessions:manage`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        }
      ]
    },
    {
      "name": "Mensagens",
      "item": [
        {
          "name": "Enviar mensagem de texto (atalho)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/messages/send",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "messages",
                "send"
              ]
            },
            "description": "Atalho de `POST /rpc/SendMessage` com o mesmo corpo e a mesma resposta.\n\nOperação paga: peça uma cotação em `POST /billing/quotes` e envie `billing.quoteId`. `to_jid` aceita só dígitos (E.164 sem `+`, ex.: `5511987654321`) ou um JID completo (`...@s.whatsapp.net` ou `...@g.us`). O atalho `POST /messages/send` aceita o mesmo corpo.\n\n**Permissão:** `messages:send`.\n\n**Operação paga:** peça a cotação em [`POST /billing/quotes`](/api-reference/billing/create-quote) e envie `billing.quoteId`. Sem cotação: `428 BILLING_QUOTE_REQUIRED`. Veja [Cobrança e cotações](/billing-quotes).",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {\n    \"session_id\": \"8c1f7a52-4d1e-4b8a-9a43-2f6f5d0c9e11\",\n    \"to_jid\": \"5511987654321\",\n    \"text\": \"Olá! Seu pedido #1234 saiu para entrega.\"\n  },\n  \"billing\": {\n    \"quoteId\": \"0b8f2c1e-3a4d-4e5f-8a9b-1c2d3e4f5a6b\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Enviar mensagem de texto (SendMessage)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SendMessage",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SendMessage"
              ]
            },
            "description": "Operação paga: peça uma cotação em `POST /billing/quotes` e envie `billing.quoteId`. `to_jid` aceita só dígitos (E.164 sem `+`, ex.: `5511987654321`) ou um JID completo (`...@s.whatsapp.net` ou `...@g.us`). O atalho `POST /messages/send` aceita o mesmo corpo.\n\n**Permissão:** `messages:send`.\n\n**Operação paga:** peça a cotação em [`POST /billing/quotes`](/api-reference/billing/create-quote) e envie `billing.quoteId`. Sem cotação: `428 BILLING_QUOTE_REQUIRED`. Veja [Cobrança e cotações](/billing-quotes).",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {\n    \"session_id\": \"8c1f7a52-4d1e-4b8a-9a43-2f6f5d0c9e11\",\n    \"to_jid\": \"5511987654321\",\n    \"text\": \"Olá! Seu pedido #1234 saiu para entrega.\"\n  },\n  \"billing\": {\n    \"quoteId\": \"0b8f2c1e-3a4d-4e5f-8a9b-1c2d3e4f5a6b\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Enviar imagem (SendImageMessage)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SendImageMessage",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SendImageMessage"
              ]
            },
            "description": "Operação paga. `image_bytes` vai em Base64 (até 12 MiB no corpo inteiro). Legenda opcional em `caption`.\n\n**Permissão:** `messages:send`.\n\n**Operação paga:** peça a cotação em [`POST /billing/quotes`](/api-reference/billing/create-quote) e envie `billing.quoteId`. Sem cotação: `428 BILLING_QUOTE_REQUIRED`. Veja [Cobrança e cotações](/billing-quotes).",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {\n    \"session_id\": \"8c1f7a52-4d1e-4b8a-9a43-2f6f5d0c9e11\",\n    \"to_jid\": \"5511987654321\",\n    \"image_bytes\": \"iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==\",\n    \"mimetype\": \"image/png\",\n    \"caption\": \"Seu comprovante\"\n  },\n  \"billing\": {\n    \"quoteId\": \"0b8f2c1e-3a4d-4e5f-8a9b-1c2d3e4f5a6b\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Enviar áudio (mensagem de voz) (SendVoiceNote)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SendVoiceNote",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SendVoiceNote"
              ]
            },
            "description": "Operação paga. Envie o áudio em Base64; o formato recomendado é OGG/Opus.\n\n**Permissão:** `messages:send`.\n\n**Operação paga:** peça a cotação em [`POST /billing/quotes`](/api-reference/billing/create-quote) e envie `billing.quoteId`. Sem cotação: `428 BILLING_QUOTE_REQUIRED`. Veja [Cobrança e cotações](/billing-quotes).",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {},\n  \"billing\": {\n    \"quoteId\": \"0b8f2c1e-3a4d-4e5f-8a9b-1c2d3e4f5a6b\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Enviar vídeo (SendVideoMessage)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SendVideoMessage",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SendVideoMessage"
              ]
            },
            "description": "Operação paga. Vídeo MP4 em Base64, com legenda opcional.\n\n**Permissão:** `messages:send`.\n\n**Operação paga:** peça a cotação em [`POST /billing/quotes`](/api-reference/billing/create-quote) e envie `billing.quoteId`. Sem cotação: `428 BILLING_QUOTE_REQUIRED`. Veja [Cobrança e cotações](/billing-quotes).",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {},\n  \"billing\": {\n    \"quoteId\": \"0b8f2c1e-3a4d-4e5f-8a9b-1c2d3e4f5a6b\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Enviar documento (SendDocumentMessage)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SendDocumentMessage",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SendDocumentMessage"
              ]
            },
            "description": "Operação paga. PDF, planilha ou qualquer arquivo em Base64, com nome do arquivo e legenda opcionais.\n\n**Permissão:** `messages:send`.\n\n**Operação paga:** peça a cotação em [`POST /billing/quotes`](/api-reference/billing/create-quote) e envie `billing.quoteId`. Sem cotação: `428 BILLING_QUOTE_REQUIRED`. Veja [Cobrança e cotações](/billing-quotes).",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {\n    \"session_id\": \"8c1f7a52-4d1e-4b8a-9a43-2f6f5d0c9e11\",\n    \"to_jid\": \"5511987654321\",\n    \"document_bytes\": \"JVBERi0xLjQK\",\n    \"mimetype\": \"application/pdf\",\n    \"file_name\": \"boleto.pdf\",\n    \"caption\": \"Segue o boleto\"\n  },\n  \"billing\": {\n    \"quoteId\": \"0b8f2c1e-3a4d-4e5f-8a9b-1c2d3e4f5a6b\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Definir presença (digitando, gravando…) (SetPresence)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SetPresence",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SetPresence"
              ]
            },
            "description": "Mostra \"digitando\" ou \"gravando áudio\" para o contato por alguns segundos. Gratuito.\n\n**Permissão:** `messages:send`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Apagar mensagem para todos (RevokeMessage)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/RevokeMessage",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "RevokeMessage"
              ]
            },
            "description": "Apaga uma mensagem já enviada. Em grupos, administradores podem apagar mensagens de outros participantes (`original_sender`).\n\n**Permissão:** `messages:revoke`.\n\nMessage revoke (gated by ENABLE_MESSAGE_DELETE — see message comments above)",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Ler mídia de visualização única (GetViewOnceMedia)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetViewOnceMedia",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetViewOnceMedia"
              ]
            },
            "description": "**Permissão:** `messages:view_once`.\n\nView-once media (gated by ENABLE_VIEW_ONCE_MEDIA — see message comments above)",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar mídias de visualização única (ListViewOnceMedia)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListViewOnceMedia",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListViewOnceMedia"
              ]
            },
            "description": "**Permissão:** `messages:view_once`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Apagar mídia de visualização única guardada (DeleteViewOnceMedia)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/DeleteViewOnceMedia",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "DeleteViewOnceMedia"
              ]
            },
            "description": "**Permissão:** `messages:view_once`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        }
      ]
    },
    {
      "name": "Eventos",
      "item": [
        {
          "name": "Stream de eventos em tempo real (SSE)",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/events",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "events"
              ]
            },
            "description": "Abre um stream **Server-Sent Events** com os eventos dos números da chave (mensagens recebidas, status de entrega, conexão...). Cada evento persistido vem como `event: domain` com `id:` (cursor) e `data:` = JSON do evento. Há também `ping` (a cada 25 s), `refresh` (refaça uma consulta completa), `error` e `end`.\n\nPara continuar de onde parou, reconecte com o cabeçalho `Last-Event-ID` (ou `?after_cursor=`). O stream valida a chave a cada poucos segundos e fecha se ela for revogada.\n\n**Permissão:** `events:read`. Limite: 10 aberturas por minuto por conta. Veja [Eventos em tempo real](/events)."
          }
        },
        {
          "name": "Histórico de eventos (ReplayEvents)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ReplayEvents",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ReplayEvents"
              ]
            },
            "description": "Lê eventos persistidos depois de um cursor (`after_cursor`), em páginas de até 1000. Use para recuperar o que perdeu do stream `/events` ou de um webhook. `reset_required: true` indica que o cursor expirou: faça uma nova consulta completa.\n\n**Permissão:** `events:read`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {\n    \"after_cursor\": \"1042\",\n    \"limit\": 100\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        }
      ]
    },
    {
      "name": "Mídias",
      "item": [
        {
          "name": "Baixar mídia",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/media/:id",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "media",
                ":id"
              ]
            },
            "description": "Baixa os bytes de uma mídia da biblioteca (até 64 MiB), com `Content-Disposition: attachment`. O caminho vem de `GetMediaUrl`. Mídias de outra conta ou inexistentes respondem 404.\n\n**Permissão:** `product:media`. Limite: 60 downloads por minuto por conta."
          }
        },
        {
          "name": "Enviar arquivo para a biblioteca (UploadMedia)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/UploadMedia",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "UploadMedia"
              ]
            },
            "description": "Arquivo em Base64 no corpo JSON (até 12 MiB no corpo inteiro).\n\n**Permissão:** `product:media`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar mídias da biblioteca (ListMedia)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListMedia",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListMedia"
              ]
            },
            "description": "**Permissão:** `product:media`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Obter caminho de download de uma mídia (GetMediaUrl)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetMediaUrl",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetMediaUrl"
              ]
            },
            "description": "Na API pública, `url` é sempre o caminho autenticado `/media/{id}` (relativo à base da API). Baixe com o mesmo cabeçalho `Authorization`.\n\n**Permissão:** `product:media`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Excluir mídia da biblioteca (DeleteMedia)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/DeleteMedia",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "DeleteMedia"
              ]
            },
            "description": "**Permissão:** `product:media`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        }
      ]
    },
    {
      "name": "Contatos",
      "item": [
        {
          "name": "Listar contatos (ListContacts)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListContacts",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListContacts"
              ]
            },
            "description": "**Permissão:** `product:contacts`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {\n    \"pagination\": {\n      \"page\": 1,\n      \"page_size\": 50\n    }\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Criar contato (CreateContact)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/CreateContact",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "CreateContact"
              ]
            },
            "description": "**Permissão:** `product:contacts`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {\n    \"name\": \"Ana Souza\",\n    \"phone\": \"5511987654321\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Atualizar contato (UpdateContact)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/UpdateContact",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "UpdateContact"
              ]
            },
            "description": "**Permissão:** `product:contacts`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Excluir contato (DeleteContact)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/DeleteContact",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "DeleteContact"
              ]
            },
            "description": "**Permissão:** `product:contacts`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Importar contatos em lote (ImportContacts)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ImportContacts",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ImportContacts"
              ]
            },
            "description": "**Permissão:** `product:contacts`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar contatos da agenda do WhatsApp (ListWhatsAppContacts)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListWhatsAppContacts",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListWhatsAppContacts"
              ]
            },
            "description": "Contatos sincronizados pelo próprio número conectado.\n\n**Permissão:** `sessions:read`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Importar contatos do WhatsApp para a conta (ImportWhatsAppContacts)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ImportWhatsAppContacts",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ImportWhatsAppContacts"
              ]
            },
            "description": "**Permissão:** `product:contacts`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        }
      ]
    },
    {
      "name": "Grupos",
      "item": [
        {
          "name": "Listar grupos (ListGroups)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListGroups",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListGroups"
              ]
            },
            "description": "**Permissão:** `groups:read`.\n\nGroups (read-only; gated by ENABLE_GROUP_SUPPORT — see message comments above)",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Detalhes de um grupo (GetGroupMetadata)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetGroupMetadata",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetGroupMetadata"
              ]
            },
            "description": "Nome, descrição, participantes e administradores.\n\n**Permissão:** `groups:read`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Criar grupo (CreateGroup)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/CreateGroup",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "CreateGroup"
              ]
            },
            "description": "**Permissão:** `groups:manage`.\n\nGroup administration (gated by ENABLE_GROUP_ADMIN — see message comments above)",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Adicionar participantes (AddGroupParticipants)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/AddGroupParticipants",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "AddGroupParticipants"
              ]
            },
            "description": "O resultado vem por participante (`results`): alguns podem falhar por privacidade.\n\n**Permissão:** `groups:manage`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Remover participantes (RemoveGroupParticipants)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/RemoveGroupParticipants",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "RemoveGroupParticipants"
              ]
            },
            "description": "**Permissão:** `groups:manage`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Promover a administrador (PromoteGroupParticipants)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/PromoteGroupParticipants",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "PromoteGroupParticipants"
              ]
            },
            "description": "**Permissão:** `groups:manage`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Remover administrador (DemoteGroupParticipants)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/DemoteGroupParticipants",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "DemoteGroupParticipants"
              ]
            },
            "description": "**Permissão:** `groups:manage`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Alterar nome do grupo (SetGroupSubject)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SetGroupSubject",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SetGroupSubject"
              ]
            },
            "description": "**Permissão:** `groups:manage`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Alterar descrição do grupo (SetGroupDescription)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SetGroupDescription",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SetGroupDescription"
              ]
            },
            "description": "**Permissão:** `groups:manage`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Só administradores enviam mensagens (SetGroupAnnounce)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SetGroupAnnounce",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SetGroupAnnounce"
              ]
            },
            "description": "**Permissão:** `groups:manage`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Só administradores editam dados do grupo (SetGroupLocked)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SetGroupLocked",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SetGroupLocked"
              ]
            },
            "description": "**Permissão:** `groups:manage`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Sair do grupo (LeaveGroup)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/LeaveGroup",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "LeaveGroup"
              ]
            },
            "description": "**Permissão:** `groups:manage`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Link de convite do grupo (GetGroupInviteLink)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetGroupInviteLink",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetGroupInviteLink"
              ]
            },
            "description": "**Permissão:** `groups:manage`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Importar participantes como contatos (ImportGroupContacts)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ImportGroupContacts",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ImportGroupContacts"
              ]
            },
            "description": "Exige as duas permissões: `groups:read` e `product:contacts`.\n\n**Permissão:** `groups:read` ou `product:contacts`.\n\nGroup contact import (requires groups:read AND product:contacts — see message comments above)",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        }
      ]
    },
    {
      "name": "Atendimento",
      "item": [
        {
          "name": "Listar conversas (ListConversations)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListConversations",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListConversations"
              ]
            },
            "description": "Filtre por fila, número, status e responsável. Paginação por cursor.\n\n**Permissão:** `product:inbox`.\n\nAtendimento (product:inbox; envio também messages:send + cotação)",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {\n    \"limit\": 20\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Consultar conversa (GetConversation)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetConversation",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetConversation"
              ]
            },
            "description": "**Permissão:** `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Histórico de mensagens da conversa (ListMessages)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListMessages",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListMessages"
              ]
            },
            "description": "Paginação por cursor (`next_cursor`).\n\n**Permissão:** `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Buscar mensagens (SearchMessages)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SearchMessages",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SearchMessages"
              ]
            },
            "description": "**Permissão:** `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Responder pela conversa (SendConversationMessage)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SendConversationMessage",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SendConversationMessage"
              ]
            },
            "description": "Operação paga (pode sair gratuita pela janela de 24 horas, ver Cobrança e cotações). `idempotency_key` (8 a 128 caracteres ASCII) garante que repetir a chamada nunca reenvia.\n\n**Permissão:** `product:inbox` ou `messages:send`.\n\n**Operação paga:** peça a cotação em [`POST /billing/quotes`](/api-reference/billing/create-quote) e envie `billing.quoteId`. Sem cotação: `428 BILLING_QUOTE_REQUIRED`. Veja [Cobrança e cotações](/billing-quotes).",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {},\n  \"billing\": {\n    \"quoteId\": \"0b8f2c1e-3a4d-4e5f-8a9b-1c2d3e4f5a6b\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Marcar conversa como lida (MarkConversationRead)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/MarkConversationRead",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "MarkConversationRead"
              ]
            },
            "description": "**Permissão:** `product:inbox` ou `messages:send`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Assumir ou atribuir conversa (AssignConversation)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/AssignConversation",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "AssignConversation"
              ]
            },
            "description": "Use `assignment_version` da conversa para evitar sobrescrever uma atribuição feita por outra pessoa (`ASSIGNMENT_CONFLICT`).\n\n**Permissão:** `product:inbox` ou `messages:send`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Transferir conversa (TransferConversation)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/TransferConversation",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "TransferConversation"
              ]
            },
            "description": "**Permissão:** `product:inbox` ou `messages:send`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Alterar status da conversa (aberta, pendente, resolvida) (SetConversationStatus)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SetConversationStatus",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SetConversationStatus"
              ]
            },
            "description": "**Permissão:** `product:inbox` ou `messages:send`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Adicionar nota interna (AddConversationNote)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/AddConversationNote",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "AddConversationNote"
              ]
            },
            "description": "**Permissão:** `product:inbox` ou `messages:send`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar notas internas (ListConversationNotes)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListConversationNotes",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListConversationNotes"
              ]
            },
            "description": "**Permissão:** `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Iniciar conversa com um número (StartConversation)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/StartConversation",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "StartConversation"
              ]
            },
            "description": "**Permissão:** `product:inbox` ou `messages:send`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Atualizar contato da conversa (UpdateConversationContact)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/UpdateConversationContact",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "UpdateConversationContact"
              ]
            },
            "description": "**Permissão:** `product:inbox` ou `messages:send`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar respostas rápidas (ListQuickReplies)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListQuickReplies",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListQuickReplies"
              ]
            },
            "description": "**Permissão:** `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Obter mídia de uma mensagem da conversa (GetConversationMediaUrl)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetConversationMediaUrl",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetConversationMediaUrl"
              ]
            },
            "description": "**Permissão:** `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar números do atendimento (ListInboxChannels)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListInboxChannels",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListInboxChannels"
              ]
            },
            "description": "**Permissão:** `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Dados do grupo de uma conversa (GetConversationGroupInfo)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetConversationGroupInfo",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetConversationGroupInfo"
              ]
            },
            "description": "**Permissão:** `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        }
      ]
    },
    {
      "name": "Chamadas",
      "item": [
        {
          "name": "Atender chamada (AcceptCall)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/AcceptCall",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "AcceptCall"
              ]
            },
            "description": "**Permissão:** `product:inbox` ou `messages:send`.\n\nChamadas do painel (D-13): product:inbox + messages:send, autorização por número e regra\ndo responsável (D-16).",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Recusar chamada (RejectCall)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/RejectCall",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "RejectCall"
              ]
            },
            "description": "**Permissão:** `product:inbox` ou `messages:send`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Encerrar chamada (HangupCall)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/HangupCall",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "HangupCall"
              ]
            },
            "description": "**Permissão:** `product:inbox` ou `messages:send`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Iniciar chamada (StartCall)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/StartCall",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "StartCall"
              ]
            },
            "description": "A mídia da chamada só trafega pelo painel (navegador). Pela API você controla e consulta as chamadas.\n\n**Permissão:** `product:inbox` ou `messages:send`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Histórico de chamadas (ListCalls)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListCalls",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListCalls"
              ]
            },
            "description": "**Permissão:** `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Vincular gravação à chamada (AttachCallRecording)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/AttachCallRecording",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "AttachCallRecording"
              ]
            },
            "description": "**Permissão:** `product:inbox` ou `messages:send`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Obter gravação da chamada (GetCallRecordingUrl)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetCallRecordingUrl",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetCallRecordingUrl"
              ]
            },
            "description": "**Permissão:** `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        }
      ]
    },
    {
      "name": "CRM",
      "item": [
        {
          "name": "Listar etiquetas (ListCrmTags)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListCrmTags",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListCrmTags"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; só com `product:inbox`, apenas contatos das conversas dos números liberados para a chave (alterações exigem também `messages:send`).\n\n**Permissão:** `product:contacts` ou `product:inbox`.\n\nCRM do atendimento (Etapa 2): product:contacts (empresa inteira) ou product:inbox (só contatos\ndas conversas dos números liberados; escrita com messages:send).",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Criar ou editar etiqueta (SaveCrmTag)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SaveCrmTag",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SaveCrmTag"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; com `product:inbox`, apenas contatos das conversas dos números liberados, e a chave precisa também de `messages:send`.\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Arquivar etiqueta (DeleteCrmTag)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/DeleteCrmTag",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "DeleteCrmTag"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; com `product:inbox`, apenas contatos das conversas dos números liberados, e a chave precisa também de `messages:send`.\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Adicionar ou remover etiquetas de contatos (ChangeCrmTags)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ChangeCrmTags",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ChangeCrmTags"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; com `product:inbox`, apenas contatos das conversas dos números liberados, e a chave precisa também de `messages:send`.\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar campos personalizados (ListCrmFieldDefs)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListCrmFieldDefs",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListCrmFieldDefs"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; só com `product:inbox`, apenas contatos das conversas dos números liberados para a chave (alterações exigem também `messages:send`).\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Criar ou editar campo personalizado (SaveCrmFieldDef)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SaveCrmFieldDef",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SaveCrmFieldDef"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; com `product:inbox`, apenas contatos das conversas dos números liberados, e a chave precisa também de `messages:send`.\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Dados de CRM de um contato (GetContactCrm)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetContactCrm",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetContactCrm"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; só com `product:inbox`, apenas contatos das conversas dos números liberados para a chave (alterações exigem também `messages:send`).\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Atualizar dados de CRM de um contato (UpdateContactCrm)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/UpdateContactCrm",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "UpdateContactCrm"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; com `product:inbox`, apenas contatos das conversas dos números liberados, e a chave precisa também de `messages:send`.\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar contatos com dados de CRM (ListCrmContacts)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListCrmContacts",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListCrmContacts"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; só com `product:inbox`, apenas contatos das conversas dos números liberados para a chave (alterações exigem também `messages:send`).\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar funis e etapas (ListCrmPipelines)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListCrmPipelines",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListCrmPipelines"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; só com `product:inbox`, apenas contatos das conversas dos números liberados para a chave (alterações exigem também `messages:send`).\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Criar ou editar funil (SaveCrmPipeline)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SaveCrmPipeline",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SaveCrmPipeline"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; com `product:inbox`, apenas contatos das conversas dos números liberados, e a chave precisa também de `messages:send`.\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Criar ou editar motivo de perda (SaveCrmLossReason)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SaveCrmLossReason",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SaveCrmLossReason"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; com `product:inbox`, apenas contatos das conversas dos números liberados, e a chave precisa também de `messages:send`.\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Excluir definitivamente itens arquivados (PurgeCrmArchived)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/PurgeCrmArchived",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "PurgeCrmArchived"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; com `product:inbox`, apenas contatos das conversas dos números liberados, e a chave precisa também de `messages:send`.\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar oportunidades (ListCrmOpportunities)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListCrmOpportunities",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListCrmOpportunities"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; só com `product:inbox`, apenas contatos das conversas dos números liberados para a chave (alterações exigem também `messages:send`).\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Consultar oportunidade (GetCrmOpportunity)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetCrmOpportunity",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetCrmOpportunity"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; só com `product:inbox`, apenas contatos das conversas dos números liberados para a chave (alterações exigem também `messages:send`).\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Criar oportunidade (CreateCrmOpportunity)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/CreateCrmOpportunity",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "CreateCrmOpportunity"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; com `product:inbox`, apenas contatos das conversas dos números liberados, e a chave precisa também de `messages:send`.\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Atualizar oportunidade (UpdateCrmOpportunity)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/UpdateCrmOpportunity",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "UpdateCrmOpportunity"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; com `product:inbox`, apenas contatos das conversas dos números liberados, e a chave precisa também de `messages:send`.\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Mover oportunidade de etapa (ganhar/perder) (MoveCrmOpportunity)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/MoveCrmOpportunity",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "MoveCrmOpportunity"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; com `product:inbox`, apenas contatos das conversas dos números liberados, e a chave precisa também de `messages:send`.\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Excluir oportunidade (DeleteCrmOpportunity)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/DeleteCrmOpportunity",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "DeleteCrmOpportunity"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; com `product:inbox`, apenas contatos das conversas dos números liberados, e a chave precisa também de `messages:send`.\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar tarefas (ListCrmTasks)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListCrmTasks",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListCrmTasks"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; só com `product:inbox`, apenas contatos das conversas dos números liberados para a chave (alterações exigem também `messages:send`).\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Criar ou editar tarefa (SaveCrmTask)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SaveCrmTask",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SaveCrmTask"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; com `product:inbox`, apenas contatos das conversas dos números liberados, e a chave precisa também de `messages:send`.\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Concluir ou reabrir tarefa (SetCrmTaskDone)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SetCrmTaskDone",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SetCrmTaskDone"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; com `product:inbox`, apenas contatos das conversas dos números liberados, e a chave precisa também de `messages:send`.\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Excluir tarefa (DeleteCrmTask)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/DeleteCrmTask",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "DeleteCrmTask"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; com `product:inbox`, apenas contatos das conversas dos números liberados, e a chave precisa também de `messages:send`.\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        }
      ]
    },
    {
      "name": "Público",
      "item": [
        {
          "name": "Listar listas (ListCrmLists)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListCrmLists",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListCrmLists"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.\n\nPúblico (Etapa 3): product:campaigns; Set/GetContactCommStatus seguem a regra do CRM.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Criar ou editar lista (SaveCrmList)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SaveCrmList",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SaveCrmList"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Arquivar lista (DeleteCrmList)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/DeleteCrmList",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "DeleteCrmList"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar membros da lista (ListCrmListMembers)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListCrmListMembers",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListCrmListMembers"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Adicionar contatos à lista (AddCrmListMembers)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/AddCrmListMembers",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "AddCrmListMembers"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Remover contatos da lista (RemoveCrmListMembers)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/RemoveCrmListMembers",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "RemoveCrmListMembers"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar segmentos (ListCrmSegments)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListCrmSegments",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListCrmSegments"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Criar ou editar segmento (SaveCrmSegment)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SaveCrmSegment",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SaveCrmSegment"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Arquivar segmento (DeleteCrmSegment)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/DeleteCrmSegment",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "DeleteCrmSegment"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Pré-visualizar segmento (PreviewCrmSegment)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/PreviewCrmSegment",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "PreviewCrmSegment"
              ]
            },
            "description": "Conta e lista amostras dos contatos que entram nas regras, sem salvar.\n\n**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Definir status de comunicação (opt-out) (SetContactCommStatus)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SetContactCommStatus",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SetContactCommStatus"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; com `product:inbox`, apenas contatos das conversas dos números liberados, e a chave precisa também de `messages:send`.\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Consultar status de comunicação (GetContactCommStatus)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetContactCommStatus",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetContactCommStatus"
              ]
            },
            "description": "Alcance: com `product:contacts`, a empresa inteira; só com `product:inbox`, apenas contatos das conversas dos números liberados para a chave (alterações exigem também `messages:send`).\n\n**Permissão:** `product:contacts` ou `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Regras de envio da conta (GetAudienceSettings)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetAudienceSettings",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetAudienceSettings"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Salvar regras de envio da conta (SaveAudienceSettings)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SaveAudienceSettings",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SaveAudienceSettings"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar sequências de recuperação (ListRecoverySequences)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListRecoverySequences",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListRecoverySequences"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Criar ou editar sequência de recuperação (SaveRecoverySequence)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SaveRecoverySequence",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SaveRecoverySequence"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Arquivar sequência de recuperação (DeleteRecoverySequence)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/DeleteRecoverySequence",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "DeleteRecoverySequence"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Excluir sequência arquivada (PurgeRecoverySequence)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/PurgeRecoverySequence",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "PurgeRecoverySequence"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Inscrever contatos numa sequência (EnrollRecovery)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/EnrollRecovery",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "EnrollRecovery"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar inscrições em recuperação (ListRecoveryRuns)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListRecoveryRuns",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListRecoveryRuns"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Consultar inscrição em recuperação (GetRecoveryRun)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetRecoveryRun",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetRecoveryRun"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Cancelar inscrição em recuperação (CancelRecoveryRun)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/CancelRecoveryRun",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "CancelRecoveryRun"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        }
      ]
    },
    {
      "name": "Campanhas",
      "item": [
        {
          "name": "Iniciar campanha (StartCampaign)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/StartCampaign",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "StartCampaign"
              ]
            },
            "description": "Operação paga: a cotação cobre o custo máximo da campanha inteira.\n\n**Permissão:** `product:campaigns`.\n\n**Operação paga:** peça a cotação em [`POST /billing/quotes`](/api-reference/billing/create-quote) e envie `billing.quoteId`. Sem cotação: `428 BILLING_QUOTE_REQUIRED`. Veja [Cobrança e cotações](/billing-quotes).",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {},\n  \"billing\": {\n    \"quoteId\": \"0b8f2c1e-3a4d-4e5f-8a9b-1c2d3e4f5a6b\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Iniciar campanha a partir de um modelo (StartCampaignWithTemplate)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/StartCampaignWithTemplate",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "StartCampaignWithTemplate"
              ]
            },
            "description": "Operação paga.\n\n**Permissão:** `product:campaigns`.\n\n**Operação paga:** peça a cotação em [`POST /billing/quotes`](/api-reference/billing/create-quote) e envie `billing.quoteId`. Sem cotação: `428 BILLING_QUOTE_REQUIRED`. Veja [Cobrança e cotações](/billing-quotes).",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {},\n  \"billing\": {\n    \"quoteId\": \"0b8f2c1e-3a4d-4e5f-8a9b-1c2d3e4f5a6b\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar campanhas (ListCampaigns)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListCampaigns",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListCampaigns"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Entregas de uma campanha (ListCampaignDeliveries)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListCampaignDeliveries",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListCampaignDeliveries"
              ]
            },
            "description": "Status por destinatário.\n\n**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Pausar campanha (PauseCampaign)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/PauseCampaign",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "PauseCampaign"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Retomar campanha (ResumeCampaign)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ResumeCampaign",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ResumeCampaign"
              ]
            },
            "description": "Operação paga: retomar reserva de novo o saldo do restante.\n\n**Permissão:** `product:campaigns`.\n\n**Operação paga:** peça a cotação em [`POST /billing/quotes`](/api-reference/billing/create-quote) e envie `billing.quoteId`. Sem cotação: `428 BILLING_QUOTE_REQUIRED`. Veja [Cobrança e cotações](/billing-quotes).",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {},\n  \"billing\": {\n    \"quoteId\": \"0b8f2c1e-3a4d-4e5f-8a9b-1c2d3e4f5a6b\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Cancelar campanha (CancelCampaign)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/CancelCampaign",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "CancelCampaign"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Criar preset de campanha (CreateCampaignPreset)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/CreateCampaignPreset",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "CreateCampaignPreset"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.\n\nCampaign presets",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar presets de campanha (ListCampaignPresets)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListCampaignPresets",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListCampaignPresets"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Consultar preset de campanha (GetCampaignPreset)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetCampaignPreset",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetCampaignPreset"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Atualizar preset de campanha (UpdateCampaignPreset)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/UpdateCampaignPreset",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "UpdateCampaignPreset"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Excluir preset de campanha (DeleteCampaignPreset)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/DeleteCampaignPreset",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "DeleteCampaignPreset"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Duplicar preset de campanha (DuplicateCampaignPreset)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/DuplicateCampaignPreset",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "DuplicateCampaignPreset"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Pré-visualizar variações de texto (PreviewVariations)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/PreviewVariations",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "PreviewVariations"
              ]
            },
            "description": "Mostra como o spintax/variações do texto ficam para alguns destinatários.\n\n**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Pré-visualizar público da campanha (PreviewCampaignAudience)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/PreviewCampaignAudience",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "PreviewCampaignAudience"
              ]
            },
            "description": "Aplica listas, segmentos e regras de envio e devolve quantos contatos receberiam.\n\n**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Histórico de campanhas (ListCampaignHistory)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListCampaignHistory",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListCampaignHistory"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Resultados da campanha (GetCampaignResults)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetCampaignResults",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetCampaignResults"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Destinatários da campanha (ListCampaignAudience)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListCampaignAudience",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListCampaignAudience"
              ]
            },
            "description": "**Permissão:** `product:campaigns`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        }
      ]
    },
    {
      "name": "Aquecimento",
      "item": [
        {
          "name": "Iniciar aquecimento (StartWarmup)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/StartWarmup",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "StartWarmup"
              ]
            },
            "description": "Operação paga.\n\n**Permissão:** `product:warmup`.\n\n**Operação paga:** peça a cotação em [`POST /billing/quotes`](/api-reference/billing/create-quote) e envie `billing.quoteId`. Sem cotação: `428 BILLING_QUOTE_REQUIRED`. Veja [Cobrança e cotações](/billing-quotes).",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {},\n  \"billing\": {\n    \"quoteId\": \"0b8f2c1e-3a4d-4e5f-8a9b-1c2d3e4f5a6b\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Parar aquecimento (StopWarmup)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/StopWarmup",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "StopWarmup"
              ]
            },
            "description": "**Permissão:** `product:warmup`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Números em aquecimento (ListWarmupDevices)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListWarmupDevices",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListWarmupDevices"
              ]
            },
            "description": "**Permissão:** `product:warmup`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Pausar aquecimento (PauseWarmupRun)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/PauseWarmupRun",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "PauseWarmupRun"
              ]
            },
            "description": "**Permissão:** `product:warmup`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Retomar aquecimento (ResumeWarmupRun)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ResumeWarmupRun",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ResumeWarmupRun"
              ]
            },
            "description": "Operação paga.\n\n**Permissão:** `product:warmup`.\n\n**Operação paga:** peça a cotação em [`POST /billing/quotes`](/api-reference/billing/create-quote) e envie `billing.quoteId`. Sem cotação: `428 BILLING_QUOTE_REQUIRED`. Veja [Cobrança e cotações](/billing-quotes).",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {},\n  \"billing\": {\n    \"quoteId\": \"0b8f2c1e-3a4d-4e5f-8a9b-1c2d3e4f5a6b\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Configuração padrão do aquecimento (GetWarmupDefaults)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetWarmupDefaults",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetWarmupDefaults"
              ]
            },
            "description": "**Permissão:** `product:warmup`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Salvar configuração padrão do aquecimento (SetWarmupDefaults)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SetWarmupDefaults",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SetWarmupDefaults"
              ]
            },
            "description": "**Permissão:** `product:warmup`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        }
      ]
    },
    {
      "name": "Modelos e diálogos",
      "item": [
        {
          "name": "Criar modelo de mensagem (CreateMessageTemplate)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/CreateMessageTemplate",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "CreateMessageTemplate"
              ]
            },
            "description": "**Permissão:** `product:templates`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar modelos de mensagem (ListMessageTemplates)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListMessageTemplates",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListMessageTemplates"
              ]
            },
            "description": "**Permissão:** `product:templates`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Atualizar modelo de mensagem (UpdateMessageTemplate)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/UpdateMessageTemplate",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "UpdateMessageTemplate"
              ]
            },
            "description": "**Permissão:** `product:templates`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Excluir modelo de mensagem (DeleteMessageTemplate)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/DeleteMessageTemplate",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "DeleteMessageTemplate"
              ]
            },
            "description": "**Permissão:** `product:templates`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar diálogos do aquecimento (ListDialogTrees)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListDialogTrees",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListDialogTrees"
              ]
            },
            "description": "**Permissão:** `product:templates`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Consultar diálogo (GetDialogTree)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetDialogTree",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetDialogTree"
              ]
            },
            "description": "**Permissão:** `product:templates`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Criar ou editar diálogo (SaveDialogTree)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SaveDialogTree",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SaveDialogTree"
              ]
            },
            "description": "Envie `revision` para evitar sobrescrever uma edição concorrente (`DIALOG_REVISION_CONFLICT`).\n\n**Permissão:** `product:templates`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Excluir diálogo (DeleteDialogTree)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/DeleteDialogTree",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "DeleteDialogTree"
              ]
            },
            "description": "**Permissão:** `product:templates`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Importar diálogos (ImportDialogTrees)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ImportDialogTrees",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ImportDialogTrees"
              ]
            },
            "description": "**Permissão:** `product:templates`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        }
      ]
    },
    {
      "name": "Fluxos (bots)",
      "item": [
        {
          "name": "Listar fluxos (ListFlows)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListFlows",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListFlows"
              ]
            },
            "description": "**Permissão:** `product:flows`.\n\nFluxos (D-12): gerenciar/testar com product:flows; na conversa com product:inbox (+messages:send).",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Consultar fluxo (GetFlow)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetFlow",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetFlow"
              ]
            },
            "description": "**Permissão:** `product:flows`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Salvar rascunho do fluxo (SaveFlowDraft)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SaveFlowDraft",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SaveFlowDraft"
              ]
            },
            "description": "**Permissão:** `product:flows`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Publicar fluxo (PublishFlow)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/PublishFlow",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "PublishFlow"
              ]
            },
            "description": "**Permissão:** `product:flows`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Ativar, pausar ou arquivar fluxo (SetFlowStatus)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SetFlowStatus",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SetFlowStatus"
              ]
            },
            "description": "**Permissão:** `product:flows`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Excluir fluxo arquivado (DeleteFlow)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/DeleteFlow",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "DeleteFlow"
              ]
            },
            "description": "**Permissão:** `product:flows`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Listar execuções (ListFlowRuns)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ListFlowRuns",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ListFlowRuns"
              ]
            },
            "description": "**Permissão:** `product:flows`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Consultar execução (GetFlowRun)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetFlowRun",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetFlowRun"
              ]
            },
            "description": "**Permissão:** `product:flows`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Cancelar execução (CancelFlowRun)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/CancelFlowRun",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "CancelFlowRun"
              ]
            },
            "description": "**Permissão:** `product:flows`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Testar fluxo no simulador (TestFlow)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/TestFlow",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "TestFlow"
              ]
            },
            "description": "Executa o fluxo num simulador. Nada é enviado pelo WhatsApp.\n\n**Permissão:** `product:flows`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Fluxo ativo na conversa (GetConversationFlow)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetConversationFlow",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetConversationFlow"
              ]
            },
            "description": "**Permissão:** `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Pausar fluxo na conversa (PauseConversationFlow)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/PauseConversationFlow",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "PauseConversationFlow"
              ]
            },
            "description": "**Permissão:** `product:inbox` ou `messages:send`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Retomar fluxo na conversa (ResumeConversationFlow)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/ResumeConversationFlow",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "ResumeConversationFlow"
              ]
            },
            "description": "**Permissão:** `product:inbox` ou `messages:send`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Encerrar fluxo na conversa (EndConversationFlow)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/EndConversationFlow",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "EndConversationFlow"
              ]
            },
            "description": "**Permissão:** `product:inbox` ou `messages:send`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        }
      ]
    },
    {
      "name": "IA",
      "item": [
        {
          "name": "Corrigir texto com IA (CorrectMessage)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/CorrectMessage",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "CorrectMessage"
              ]
            },
            "description": "Operação paga (tarifa de IA). Exige provedor de IA configurado na conta.\n\n**Permissão:** `product:ai`.\n\n**Operação paga:** peça a cotação em [`POST /billing/quotes`](/api-reference/billing/create-quote) e envie `billing.quoteId`. Sem cotação: `428 BILLING_QUOTE_REQUIRED`. Veja [Cobrança e cotações](/billing-quotes).",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {},\n  \"billing\": {\n    \"quoteId\": \"0b8f2c1e-3a4d-4e5f-8a9b-1c2d3e4f5a6b\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Consumo de IA (GetAiUsage)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetAiUsage",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetAiUsage"
              ]
            },
            "description": "**Permissão:** `product:ai`.\n\nAI usage tracking",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Resumir conversa com IA (SummarizeConversation)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SummarizeConversation",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SummarizeConversation"
              ]
            },
            "description": "Operação paga (tarifa de IA). Nunca envia nada ao contato.\n\n**Permissão:** `product:inbox` ou `messages:send`.\n\n**Operação paga:** peça a cotação em [`POST /billing/quotes`](/api-reference/billing/create-quote) e envie `billing.quoteId`. Sem cotação: `428 BILLING_QUOTE_REQUIRED`. Veja [Cobrança e cotações](/billing-quotes).",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {},\n  \"billing\": {\n    \"quoteId\": \"0b8f2c1e-3a4d-4e5f-8a9b-1c2d3e4f5a6b\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Sugerir resposta com IA (SuggestReply)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SuggestReply",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SuggestReply"
              ]
            },
            "description": "Operação paga (tarifa de IA). Nunca envia nada ao contato.\n\n**Permissão:** `product:inbox` ou `messages:send`.\n\n**Operação paga:** peça a cotação em [`POST /billing/quotes`](/api-reference/billing/create-quote) e envie `billing.quoteId`. Sem cotação: `428 BILLING_QUOTE_REQUIRED`. Veja [Cobrança e cotações](/billing-quotes).",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {},\n  \"billing\": {\n    \"quoteId\": \"0b8f2c1e-3a4d-4e5f-8a9b-1c2d3e4f5a6b\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Sugerir qualificação do lead com IA (SuggestLeadClassification)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SuggestLeadClassification",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SuggestLeadClassification"
              ]
            },
            "description": "Operação paga (tarifa de IA). Nunca altera o contato sozinho.\n\n**Permissão:** `product:inbox` ou `messages:send`.\n\n**Operação paga:** peça a cotação em [`POST /billing/quotes`](/api-reference/billing/create-quote) e envie `billing.quoteId`. Sem cotação: `428 BILLING_QUOTE_REQUIRED`. Veja [Cobrança e cotações](/billing-quotes).",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {},\n  \"billing\": {\n    \"quoteId\": \"0b8f2c1e-3a4d-4e5f-8a9b-1c2d3e4f5a6b\"\n  }\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        }
      ]
    },
    {
      "name": "Indicadores e retenção",
      "item": [
        {
          "name": "Indicadores do atendimento (GetInsights)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetInsights",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetInsights"
              ]
            },
            "description": "Com `dashboard:read` a chave vê a empresa inteira; sem ela, só os números liberados.\n\n**Permissão:** `product:inbox`.\n\nIndicadores, retenção e IA de apoio (Etapa 6). Leitura dos indicadores: product:inbox,\nempresa inteira com dashboard:read, senão só os números liberados e o próprio membro.\nRetenção, configuração de SLA e exclusão por titular: admin. IA: product:inbox +\nmessages:send, cotada como `ai` (mesma tarifa de CorrectMessage); nunca envia nada.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Metas de SLA (GetInsightsSettings)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetInsightsSettings",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetInsightsSettings"
              ]
            },
            "description": "**Permissão:** `product:inbox`.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Salvar metas de SLA (SaveInsightsSettings)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SaveInsightsSettings",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SaveInsightsSettings"
              ]
            },
            "description": "Somente chaves de administrador (Administração completa).\n\n**Permissão:** operação administrativa (`admin`), fora das permissões selecionáveis de uma chave comum.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Política de retenção (GetRetentionPolicy)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/GetRetentionPolicy",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "GetRetentionPolicy"
              ]
            },
            "description": "Somente chaves de administrador.\n\n**Permissão:** operação administrativa (`admin`), fora das permissões selecionáveis de uma chave comum.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Salvar política de retenção (SaveRetentionPolicy)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/SaveRetentionPolicy",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "SaveRetentionPolicy"
              ]
            },
            "description": "Somente chaves de administrador.\n\n**Permissão:** operação administrativa (`admin`), fora das permissões selecionáveis de uma chave comum.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        },
        {
          "name": "Excluir dados de um titular (LGPD) (EraseContactData)",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{apiKey}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/rpc/EraseContactData",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "rpc",
                "EraseContactData"
              ]
            },
            "description": "Somente chaves de administrador. Não pode ser desfeito.\n\n**Permissão:** operação administrativa (`admin`), fora das permissões selecionáveis de uma chave comum.",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"request\": {}\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          }
        }
      ]
    }
  ]
}
