Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a: Aplicativos Lógicos do Azure (Consumo + Padrão)
Em vez de usar um gatilho que verifica ou sonda regularmente um ponto de extremidade de serviço ou uma ação que chama esse ponto de extremidade, você pode usar um gatilho ou uma ação de webhook HTTP que assina um ponto de extremidade de serviço, aguarda eventos específicos e executa ações específicas no fluxo de trabalho.
Aqui estão alguns exemplos de fluxos de trabalho baseados em webhook:
- Aguarde até que um evento chegue dos Hubs de Eventos do Azure antes de disparar uma execução de fluxo de trabalho.
- Aguarde uma aprovação antes de continuar um fluxo de trabalho.
Este guia mostra como usar o gatilho de webhook HTTP e a ação de webhook HTTP para que o seu fluxo de trabalho possa receber eventos e responder a eles em um ponto de extremidade de serviço.
Como os webhooks funcionam?
Um gatilho de webhook é baseado em eventos, o que não depende da verificação nem da sondagem regular de novos dados ou eventos. Depois que você adiciona um gatilho de webhook a um fluxo de trabalho vazio e salva o fluxo de trabalho ou depois que habilita novamente um recurso de aplicativo lógico desabilitado, o gatilho de webhook assina o ponto de extremidade de serviço especificado registrando uma URL de retorno de chamada nesse ponto de extremidade. Em seguida, o gatilho aguarda o ponto de extremidade de serviço chamar a URL, o que aciona o gatilho e inicia o fluxo de trabalho. Semelhante ao gatilho de solicitação, um gatilho de webhook é acionado imediatamente.
O gatilho de webhook também permanece inscrito no ponto de extremidade de serviço, a menos que você realize manualmente as seguintes ações:
- Altere os valores de parâmetro do gatilho.
- Exclua o gatilho e salve o fluxo de trabalho.
- Desabilite o recurso de aplicativo lógico.
Semelhante ao gatilho de webhook, uma ação de webhook também é baseada em eventos. Depois que você adiciona uma ação de webhook a um fluxo de trabalho existente e salva o fluxo de trabalho ou depois que habilita novamente um recurso de aplicativo lógico desabilitado, a ação de webhook assina o ponto de extremidade de serviço especificado registrando uma URL de retorno de chamada nesse ponto de extremidade. Quando o fluxo de trabalho é executado, a ação de webhook pausa o fluxo de trabalho e aguarda até que o ponto de extremidade de serviço chame a URL antes que o fluxo de trabalho retome a execução. Uma ação de webhook cancela a assinatura do ponto de extremidade de serviço quando as seguintes condições ocorrem:
- A ação de webhook é concluída sucesso.
- A execução do fluxo de trabalho é cancelada enquanto uma resposta é aguardada.
- Antes que um fluxo de trabalho atinja o tempo limite.
- Você altera os valores de parâmetro da ação de webhook usados como entradas por um gatilho de webhook.
Por exemplo, a ação de Enviar email de aprovação do conector do Outlook do Office 365 é um exemplo de uma ação de webhook que segue esse padrão. É possível estender esse padrão para qualquer serviço por meio de ação de webhook.
Para saber mais, confira a seguinte documentação:
Para obter informações sobre criptografia, segurança e autorização para chamadas de entrada para seu aplicativo lógico, como TLS (Transport Layer Security) ou Microsoft Entra ID Open Authentication, consulte Access para chamadas de entrada para gatilhos baseados em solicitação.
Referência técnica do conector
Para saber mais sobre parâmetros de gatilho e ação, confira Parâmetros de webhook HTTP.
Pré-requisitos
Uma conta e assinatura do Azure. Se você não tiver uma assinatura do Azure, inscreva-se em uma conta gratuita do Azure.
A URL de uma API ou de um ponto de extremidade já implantado que dê suporte ao padrão de assinatura e cancelamento de assinatura de webhook para gatilhos de webhook em fluxos de trabalho ou ações de webhook em fluxos de trabalho, conforme apropriado.
O fluxo de trabalho do aplicativo lógico Standard ou Consumo no qual você deseja aguardar eventos específicos no ponto de extremidade de destino.
Para começar com o disparador Webhook HTTP, crie um Logic App com um fluxo de trabalho em branco.
Para usar a ação HTTP Webhook, inicie seu fluxo de trabalho com qualquer gatilho desejado. Este exemplo usa o gatilho HTTP como a primeira etapa.
Incluir um gatilho de webhook HTTP
Esse gatilho integrado chama o ponto de extremidade de assinatura no serviço de destino e registra uma URL de retorno de chamada nesse serviço. Em seguida, o fluxo de trabalho aguardará até que o serviço de destino envie uma solicitação HTTP POST à URL de retorno de chamada. Quando esse evento ocorre, o gatilho é acionado e passa todos os dados da solicitação para o fluxo de trabalho.
No portal do Azure, abra o recurso do aplicativo lógico padrão.
No menu da barra lateral do recurso, em Fluxos de Trabalho, selecione Fluxos de Trabalho e selecione seu fluxo de trabalho em branco.
No menu da barra lateral do fluxo de trabalho, em Ferramentas, selecione o designer para abrir o fluxo de trabalho.
Adicione o gatilho de Webhook HTTP ao fluxo de trabalho seguindo as etapas gerais para adicionar um gatilho.
Este exemplo renomeia o gatilho para gatilho de webhook HTTP para que a etapa tenha um nome mais descritivo. Além disso, o exemplo adiciona posteriormente uma ação de webhook HTTP e ambos os nomes devem ser exclusivos.
Forneça os valores dos parâmetros do gatilho de webhook HTTP que você deseja usar para as chamadas de assinatura e cancelamento de assinatura.
Propriedade Obrigatório Descrição Método de assinatura Sim O método a ser usado ao assinar o ponto de extremidade de destino URI de assinatura Sim A URL a ser usada para assinar o ponto de extremidade de destino Corpo da assinatura Não Qualquer corpo da mensagem a ser incluído na solicitação de assinatura. Este exemplo inclui a URL de retorno de chamada que identifica exclusivamente o assinante, ou seja, seu aplicativo lógico, por meio da expressão @listCallbackUrl()a fim de recuperar a URL de retorno de chamada dele.Conteúdo para cancelar assinatura Não Um corpo de mensagem opcional a ser incluído na solicitação de cancelamento de assinatura
Observação: essa propriedade não fornece suporte ao uso da funçãolistCallbackUrl(). No entanto, o gatilho inclui e envia automaticamente os cabeçalhosx-ms-client-tracking-idex-ms-workflow-operation-name, que o serviço de destino pode usar para identificar exclusivamente o assinante.Método Desinscrever Não O método a ser usado ao cancelar a assinatura do ponto de extremidade de destino URI de Cancelamento de Assinatura Não A URL a ser usada para cancelar a assinatura do ponto de extremidade de destino Observação
Para as propriedades Desinscreva Método e Cancelar assinatura de URI , adicione-as à sua ação abrindo a lista de parâmetros Avançados .
Por exemplo, o gatilho a seguir inclui os métodos, os URIs e os corpos de mensagens a serem usados na execução das operações de assinatura e cancelamento de assinatura.
Se você precisar usar a autenticação, poderá adicionar as propriedades Autenticação de Assinatura e Autenticação de Cancelamento de Assinatura. Para obter mais informações sobre os tipos de autenticação disponíveis para o Webhook HTTP, consulte Adicionar autenticação a chamadas de saída.
Continue criando o fluxo de trabalho com as ações que são executadas quando o gatilho é acionado.
Quando terminar, salve o fluxo de trabalho. Selecione Salvar na barra de ferramentas do designer.
Salvar o fluxo de trabalho chama o ponto de extremidade de assinatura no serviço de destino e registra a URL de retorno de chamada. Em seguida, o fluxo de trabalho aguardará até que o serviço de destino envie uma solicitação HTTP POST à URL de retorno de chamada. Quando esse evento ocorre, o gatilho é acionado e passa todos os dados da solicitação para o fluxo de trabalho. Se essa operação for concluída com sucesso, o gatilho cancelará a assinatura do ponto de extremidade e o fluxo de trabalho prosseguirá para a próxima ação.
Incluir uma ação de webhook HTTP
Esta ação integrada chama o ponto de extremidade de assinatura no serviço de destino e registra uma URL de retorno de chamada nele. Depois, o fluxo de trabalho faz uma pausa e aguarda até que o serviço de destino envie uma solicitação HTTP POST à URL de retorno de chamada. Quando esse evento ocorre, a ação passa todos os dados da solicitação para o fluxo de trabalho. Se a operação for concluída com sucesso, a ação cancelará a assinatura do ponto de extremidade e o fluxo de trabalho prosseguirá para a próxima ação.
No portal do Azure, abra o recurso do aplicativo lógico padrão.
No menu da barra lateral do recurso, em Fluxos de Trabalho, selecione Fluxos de Trabalho e selecione seu fluxo de trabalho.
No menu da barra lateral do fluxo de trabalho, em Ferramentas, selecione o designer para abrir o fluxo de trabalho.
Este exemplo usa o gatilho de webhook HTTP como a primeira etapa.
Adicione a ação de Webhook HTTP ao fluxo de trabalho seguindo as etapas gerais para adicionar uma ação.
Este exemplo renomeia a ação para ação de webhook HTTP para que a etapa tenha um nome mais descritivo.
Forneça os valores para os parâmetros de ação do Webhook HTTP , que são semelhantes aos parâmetros de gatilho do Webhook HTTP, que você deseja usar para as chamadas de assinatura e cancelamento de assinatura.
Propriedade Obrigatório Descrição Método de assinatura Sim O método a ser usado ao assinar o ponto de extremidade de destino URI de assinatura Sim A URL a ser usada para assinar o ponto de extremidade de destino Corpo da assinatura Não Qualquer corpo da mensagem a ser incluído na solicitação de assinatura. Este exemplo inclui a URL de retorno de chamada que identifica exclusivamente o assinante, ou seja, seu aplicativo lógico, por meio da expressão @listCallbackUrl()a fim de recuperar a URL de retorno de chamada dele.Conteúdo para cancelar assinatura Não Um corpo de mensagem opcional a ser incluído na solicitação de cancelamento de assinatura
Observação: essa propriedade não fornece suporte ao uso da funçãolistCallbackUrl(). No entanto, a ação inclui e envia automaticamente os cabeçalhosx-ms-client-tracking-idex-ms-workflow-operation-name, que o serviço de destino pode usar para identificar exclusivamente o assinante.Método Desinscrever Não O método a ser usado ao cancelar a assinatura do ponto de extremidade de destino URI de Cancelamento de Assinatura Não A URL a ser usada para cancelar a assinatura do ponto de extremidade de destino Observação
Para as propriedades Desinscreva Método e Cancelar assinatura de URI , adicione-as à sua ação abrindo a lista de parâmetros Avançados .
Por exemplo, a ação a seguir inclui os métodos, os URIs e os corpos de mensagens a serem usados na execução das operações de assinatura e cancelamento de assinatura.
Para adicionar outras propriedades de ação, abra a lista Parâmetros avançados.
Por exemplo, se você precisar usar autenticação, poderá adicionar as propriedades Autenticação de Assinatura e Autenticação de Cancelamento de Assinatura. Para obter mais informações sobre os tipos de autenticação disponíveis para o Webhook HTTP, consulte Adicionar autenticação a chamadas de saída.
Quando terminar, salve o fluxo de trabalho. Selecione Salvar na barra de ferramentas do designer.
Após a execução dessa ação, o fluxo de trabalho chama o ponto de extremidade de assinatura no serviço de destino e registra a URL de retorno de chamada. Depois, o fluxo de trabalho faz uma pausa e aguarda até que o serviço de destino envie uma solicitação HTTP POST à URL de retorno de chamada. Quando esse evento ocorre, a ação passa todos os dados da solicitação para o fluxo de trabalho. Se a operação for concluída com sucesso, a ação cancelará a assinatura do ponto de extremidade e o fluxo de trabalho prosseguirá para a próxima ação.
Saídas de gatilho e ação
Aqui estão mais informações sobre os resultados de um disparador ou ação de Webhook HTTP, que retorna essas informações:
| Nome da propriedade | Tipo | Descrição |
|---|---|---|
| headers | objeto | Os cabeçalhos da solicitação |
| body | objeto | O objeto com o conteúdo do corpo da solicitação |
| código de status | INT | O código de status da solicitação |
| Código de status | Descrição |
|---|---|
| 200 | OKEY |
| 202 | Aceitado |
| 400 | Solicitação incorreta |
| 401 | Não Autorizado |
| 403 | Proibido |
| 404 | Não encontrado |
| 500 | Erro interno do servidor. Ocorreu um erro desconhecido. |
Gerar URL de retorno de chamada com chave de acesso secundária
Um fluxo de trabalho de aplicativo lógico tem duas chaves de acesso: primária e secundária. Por padrão, os Aplicativos Lógicos do Azure usam a chave primária para gerar a URL de retorno de chamada para o gatilho do webhook HTTP.
Para usar a chave secundária na geração da URL de retorno de chamada, siga estas etapas:
No designer de fluxo de trabalho, alterne para o modo de exibição de código.
Na definição do
HttpWebhookgatilho, localize oaccessKeyTypeparâmetro.Especifique a palavra
Secondarycomo o valor do parâmetro.Lembre-se de salvar suas alterações.
O exemplo a seguir mostra a definição do gatilho de webhook com o accessKeyType parâmetro definido como Secondary:
{
"type": "HttpWebhook",
"inputs": {
"subscribe": {
"method": "POST",
"uri": "<subscription-URL>",
"body": "@listCallbackUrl()"
},
"accessKeyType": "Secondary"
},
"runAfter": {}
}