Add new webhook

Create webhooks so EVO will notify outside systems every time a certain event happens:
headers is optional*
filters are optional, filters are only available for webhooks of type 'NewSale' and won't be stored for other event types
POST
{
"IdBranch": "Branch number that webhook will be registered (Only available when using a multilocation key, ignored otherwise)"
"eventType": "Type: String. Specifies the type of event that will trigger this webhook. Available Types: 'NewSale', 'CreateMember', 'AlterMember', 'EndedSessionActivity', 'ClearedDebt', 'AlterReceivables', 'Freeze', 'RecurrentSale', 'entries', 'ActivityEnroll', 'SalesItensUpdated', 'CreateMembership', 'AlterMembership', 'CreateService', 'AlterService', 'CreateProduct', 'AlterProduct', 'TransferMember', 'TransferProspect', 'NewInvoice', 'CancelInvoice'",
"urlCallback": "Type: String. Url that will be called after the event. The API that will receive the request must accept the type POST and the content in the following format",
"headers": [
{"name": "Type: string", "value": "Type string"}
],
"filters": [
{
"FilterType": "Type: string. Specifies the filter that will be executed. Available Types: 'SaleItemDescription',
"Value": "Type: string. String that will be used to filter"
}
]
}

POST 
{
   "IdW12": "Type: Int. Unique gym ID",
   "IdBranch": "Type: Int. Branch number",
   "IdRecord": "Type: Int. Generate resource primary key",
   "EventType": "Type: String. Webhook event type. Ex: 'NewSale'"
}

Criar Webhook

Descrição

Os webhooks permitem que o EVO notifique sistemas externos sempre que ocorrer um evento específico. Com isso, é possível integrar outros sistemas ao EVO e automatizar ações baseadas nos eventos capturados.

Parâmetros do Webhook

ParâmetroTipoDescrição
idBranchStringNúmero da filial onde o webhook será registrado. Apenas disponível ao usar uma chave multilocalização, ignorado caso contrário.
eventTypeStringEspecifica o tipo de evento que acionará este webhook.
urlCallbackStringURL que será chamada após o evento ocorrer. A API que receberá a requisição deve aceitar o tipo POST e o conteúdo no formato especificado.
headersArrayOpcional. Lista de cabeçalhos personalizados que serão incluídos na requisição. Cada cabeçalho é um objeto com name (tipo: string) e value (tipo: string).
filtersArrayOpcional. Lista de filtros aplicáveis somente para webhooks do tipo 'NewSale'. Ler explicação abaixo.

Campo filters

Cada filtro deve ser um objeto com os campos:

FilterType (string) → Tipo de filtro a ser aplicado. Atualmente, o tipo disponível é 'SaleItemDescription'.

Value (string) → Valor utilizado para filtragem. A correspondência é feita por contém (substring), ou seja, se o valor informado estiver presente em qualquer parte da descrição do item de venda, o filtro será satisfeito.

Regras de Avaliação de Múltiplos Filtros

Quando mais de um filtro for cadastrado, a validação é feita como uma condição OU. Exemplo:

"filters": [
  { "FilterType": "SaleItemDescription", "Value": "ANUAL" },
  { "FilterType": "SaleItemDescription", "Value": "MENSAL" }
]

Nesse caso, o webhook será disparado sempre que a descrição do item de venda contiver "ANUAL" ou "MENSAL".


Eventos Disponíveis

🛒 Vendas

eventTypeDescrição
NewSaleAtivado sempre que uma nova venda é realizada no sistema EVO ou pelo Site/Totem.
Obs.: Não inclui vendas geradas automaticamente pela recorrência.
RecurrentSaleAtivado sempre que um contrato é renovado automaticamente na recorrência.
SalesItensUpdatedAtivado sempre que um novo item de venda é adicionado em uma Página de Vendas.

👤 Clientes (Membros)

eventTypeDescrição
CreateMemberAtivado sempre que uma oportunidade é convertida em cliente.
AlterMemberAtivado sempre que as informações pessoais de um cliente são alteradas ou quando o cliente é excluído.
Obs.: Não inclui mudança de status de ativo para inativo.
FreezeAtivado sempre que é feita uma suspensão em um aluno ou quando a suspensão é removida.
TransferMemberAtivado sempre que um cliente (membro) é transferido de uma filial para outra.

🎯 Oportunidades (Prospects)

eventTypeDescrição
TransferProspectAtivado sempre que uma oportunidade (prospect) é transferida de uma filial para outra.

💳 Financeiro

eventTypeDescrição
ClearedDebtAtivado sempre que um cliente paga um saldo devedor em aberto, seja manualmente pela recepção ou pela cobrança automatizada do sistema.
AlterReceivablesAtivado sempre que as informações de um recebimento no Contas a Receber são editadas.
NewInvoiceAtivado sempre que uma nova fatura é gerada no sistema (independente se foi criada por venda recorrente, avulsa ou lançamento manual).
CancelInvoiceAtivado sempre que uma fatura existente é cancelada no sistema.

📄 Contratos (Membership)

eventTypeDescrição
CreateMembershipAtivado sempre que um novo tipo de contrato é criado.
AlterMembershipAtivado sempre que uma informação do contrato é alterada.

🛠️ Serviços

eventTypeDescrição
CreateServiceAtivado sempre que um novo tipo de serviço é criado.
AlterServiceAtivado sempre que um tipo de serviço é alterado.

📦 Produtos

eventTypeDescrição
CreateProductAtivado sempre que um novo tipo de produto é criado.
AlterProductAtivado sempre que um tipo de produto é alterado.

🏋️ Atividades e Acessos

eventTypeDescrição
EndedSessionActivityAtivado sempre que uma sessão da Grade é finalizada.
EntriesAtivado sempre que uma entrada é registrada pelo controle de acesso.
ActivityEnrollAtivado sempre que um aluno se agenda para uma atividade da grade.

Exemplo de Criação do Webhook

{
  "idBranch": 1,
  "eventType": "NewSale",
  "urlCallback": "https://minhaapi.com/webhook/evo",
  "headers": [
    { "name": "Authorization", "value": "Bearer token_123" },
    { "name": "Content-Type", "value": "application/json" }
  ],
  "filters": [
    {
      "FilterType": "SaleItemDescription",
      "Value": "Plano Premium"
    }
  ]
}
Language
Credentials
Basic
base64
:
Click Try It! to start a request and see the response here!