Exemplo de código JavaScript para obter a ID do cliente, validá-la e, em seguida, retorná-la no cabeçalho da resposta
Novidades
Introdução
- Guia de início rápido para admins
- Guia de início rápido para usuários
- Biblioteca de tutoriais em vídeo
- Perguntas frequentes
Administrar
- Visão geral do Admin Console
-
Gerenciamento de usuários
- Adicionar usuários
- Criar usuários focados em funções
- Verificar usuários com erros de provisionamento
- Alterar nome/endereço de email
- Editar a associação de grupo de um usuário
- Promover um usuário a uma função de admin
- Tipos de identidade de usuário e logon único
- Alternar identidade de usuário
- Autenticar usuários com o MS Azure
- Autenticar usuários com a federação do Google
- Perfis de produto
- Experiência de logon
-
Configurações de conta/grupo
- Visão geral das configurações
-
Configurações globais
- Nova experiência para destinatários
- Fluxos de trabalho de autoassinatura
- Envio em massa
- Formulários web
- Fluxos de trabalho do Power Automate
- Documentos da biblioteca
- Coletar dados de formulário com contratos
- Visibilidade de documento limitada
- Anexar uma cópia em PDF do contrato assinado
- Incluir um link no email
- Incluir uma imagem no email
- Arquivos anexados a emails receberão o nome
- Anexar relatórios de auditoria a documentos
- Mesclar vários documentos em um
- Baixar documentos individuais
- Fazer upload de um documento assinado
- Definir um fuso horário padrão
- Usuários em vários grupos (UMG)
- Permissões de admin de grupo
- Substituir destinatário
- Relatório de auditoria
- Rodapé da transação
- Cliente do setor de saúde
- Configuração da conta
-
Preferências de assinatura
- Assinaturas bem formatadas
- Divulgação do cliente e Termos de uso personalizados
- Navegar pelos destinatários em campos de formulário
- Reiniciar fluxo de trabalho do contrato
- Recusar-se a assinar
- Permitir que os signatários imprimam e insiram uma assinatura manuscrita
- Exigir que signatários usem um dispositivo móvel para criar assinaturas
- Solicitar endereço IP dos signatários
- Assinaturas digitais
- Selos eletrônicos
- Identidade digital
-
Configurações de relatório
- Configurações de segurança
-
Configurações de envio
- Solicitar nome do destinatário ao enviar
- Bloquear valores de nome para usuários conhecidos
- Funções de destinatário permitidas
- Permitir testemunhas eletrônicas
- Grupos de destinatários
- CCs
- Acesso ao contrato do destinatário
- Compactar campo
- Modificar contratos
- Mensagens privadas
- Tipos de assinatura permitidos
- Lembretes
- Enviar notificação de contrato por meio de
- Opções de identificação do signatário
- Proteção de conteúdo
- Ordem de assinatura
- Liquid Mode
- Configurações de Bio-Pharma
- Configurações de autenticação
- Integração de pagamento
- Configurações de SAML
- Governança de dados
- Configurações de carimbo de data e hora
- Arquivo externo
- Idiomas da conta
- Configurações de email
- Migração de echosign.com para adobesign.com
- Opções de configuração para destinatários
-
Orientações com respeito aos requisitos normativos
- Acessibilidade
- HIPAA
- GDPR
- 21 CFR parte 11 e EudraLex anexo 11
- Clientes do setor de saúde
- Suporte a IVES
- “Armazenamento” de contratos
- Considerações para a UE e Reino Unido
- Reivindicar um domínio
- Links para denunciar abuso
Enviar, assinar e gerenciar contratos
-
Opções do destinatário
- Cancelar um lembrete de email
-
Opções na página de assinatura eletrônica
- Visão geral da página de assinatura eletrônica
- Abrir para ler o contrato sem campos
- Recusar-se a assinar um contrato
- Delegar autoridade de assinatura
- Baixar um PDF do contrato
- Exibir o histórico do contrato
- Exibir as mensagens do contrato
- Converter de uma assinatura eletrônica para uma assinatura manuscrita
- Converter de uma assinatura manuscrita para uma assinatura eletrônica
- Navegar pelos campos do formulário
- Limpar os dados dos campos de formulário
- Ampliação e navegação da página de assinatura eletrônica
- Alterar o idioma usado nas ferramentas e informações do contrato
- Revisar os Avisos legais
- Ajustar as preferências de cookies do Acrobat Sign
- Enviar contratos
-
Criar campos em documentos
-
Ambiente de criação no aplicativo
- Detecção automática de campo
- Arrastar e soltar campos usando o ambiente de criação
- Atribuir campos de formulário aos destinatários
- Função de preenchimento prévio
- Aplicar campos com um modelo de campo reutilizável
- Transferir campos para um novo modelo de biblioteca
- Ambiente de criação atualizado ao enviar contratos
- Criar formulários e tags de texto
- Criar formulários usando o Acrobat (Acroforms)
- Campos
- Perguntas frequentes sobre criação
-
Ambiente de criação no aplicativo
- Assinar contratos
-
Gerenciar contratos
- Visão geral da página Gerenciar
- Delegar contratos
- Substituir destinatários
- Limitar a visibilidade do documento
- Cancelar um contrato
- Criar novos lembretes
- Revisar lembretes
- Cancelar um lembrete
- Acessar fluxos do Power Automate
-
Mais ações...
- Como a pesquisa funciona
- Visualizar um contrato
- Criação de um modelo a partir de um contrato
- Ocultar ou reexibir contratos
- Fazer upload de um contrato assinado
- Modificar os arquivos e campos de um contrato enviado
- Editar o método de autenticação de um destinatário
- Adicionar ou modificar uma data de expiração
- Adicionar uma nota ao contrato
- Compartilhar um contrato individual
- Deixar de compartilhar um contrato
- Baixar um contrato individual
- Baixar os arquivos individuais de um contrato
- Baixar o relatório de auditoria de um contrato
- Baixar o conteúdo dos campos de um contrato
- Relatório de auditoria
-
Relatórios e exportações de dados
- Visão geral
- Conceder aos usuários acesso aos relatórios
- Gráficos de relatório
- Exportações de dados
- Renomear um relatório ou exportação
- Duplicar um relatório ou exportação
- Agendar um relatório ou exportação
- Excluir um relatório ou exportação
Recursos e fluxos de trabalho avançados de contratos
-
Formulários web
- Criar um formulário web
- Editar um formulário web
- Desabilitar ou habilitar um formulário web
- Ocultar ou reexibir um formulário web
- Localizar o URL ou o código de script
- Preencher campos de formulário web com parâmetros de URL
- Salvar um formulário web para concluir mais tarde
- Redimensionar um formulário web
-
Modelos reutilizáveis
- Formulários do governo dos EUA na biblioteca do Acrobat Sign
- Criar um modelo de biblioteca
- Alterar o nome de um modelo de biblioteca
- Alterar o tipo de um modelo de biblioteca
- Alterar o nível de permissão de um modelo de biblioteca
- Copiar, editar e salvar um modelo compartilhado
- Baixar os dados de campo agregado de um modelo de biblioteca
- Transferir a propriedade de formulários web e modelos de biblioteca
-
Fluxos de trabalho do Power Automate
- Visão geral da integração com o Power Automate e direitos incluídos
- Habilitar a integração do Power Automate
- Ações no contexto da página Gerenciar
- Acompanhamento do uso do Power Automate
- Criar um novo fluxo (exemplos)
- Acionadores usados para fluxos
- Importação de fluxos de fora do Acrobat Sign
- Gerenciar fluxos
- Editar fluxos
- Compartilhar fluxos
- Desabilitar ou habilitar fluxos
- Excluir fluxos
-
Modelos úteis
- Somente admins
- Arquivar o contrato
- Arquivar o contrato de formulário web
- Extração de dados do contrato
- Notificações de contrato
- Geração de contrato
- Fluxos de trabalho de envio personalizados
- Compartilhar usuários e contratos
Integrar a outros produtos
- Acrobat Sign para Salesforce
- Acrobat Sign para Microsoft
- Outras integrações
- Integrações gerenciadas por parceiro
- Como obter uma chave de integração
Acrobat Sign Developer
Suporte e solução de problemas
Visão geral
Um webhook é uma solicitação HTTPS definida pelo usuário que é acionada quando um evento inscrito ocorre no site de origem (neste caso, o Adobe Acrobat Sign).
Basicamente, um webhook é um serviço REST que aceita dados ou um fluxo de dados.
Os webhooks são destinados para comunicação serviço a serviço em um modelo de PUSH.
Quando um evento inscrito é acionado, o Acrobat Sign constrói um POST HTTPS com um corpo JSON e o envia ao URL especificado.
Antes de configurar webhooks, certifique-se de que sua rede aceitará os intervalos de IP necessários para a funcionalidade.
Os webhooks oferecem vários benefícios em relação ao método de callback anterior, entre eles:
- Os administradores podem ativar seus webhooks sem precisar envolver o suporte do Acrobat Sign para listar o URL do callback
- Os webhooks oferecem dados mais atualizados, mais eficiência de comunicação e segurança. Não há necessidade de sondagem
- Os webhooks permitem diferentes níveis de escopo (Conta/Grupo/Usuário/Recurso) com facilidade.
- Os webhooks são uma solução de API mais moderna, permitindo uma configuração mais fácil de aplicativos modernos
- Vários webhooks podem ser configurados por escopo (Conta/Grupo/Usuário/Recurso), enquanto os callbacks precisavam ser exclusivos
- Os webhooks permitem selecionar os dados a serem retornados, enquanto os callbacks são uma solução “tudo ou nada”
- Os metadados transportados com um webhook podem ser configurados (básicos ou detalhados)
- Os webhooks são muito mais fáceis de criar, editar ou desativar conforme necessário, já que a interface está totalmente sob o controle do administrador.
Este documento concentra-se principalmente na interface de webhooks no aplicativo web do Acrobat Sign (anteriormente Adobe Sign).
Os desenvolvedores que estão procurando detalhes da API podem encontrar mais informações aqui:
Pré-requisitos
Você deve permitir os intervalos de IP dos webhooks na segurança da rede para que o serviço funcione.
O serviço de URL de retorno de chamada herdado em REST v5 usa os mesmos intervalos de IP que o serviço de webhook.
Admins podem fazer logon no Adobe Admin Console para adicionar usuários. Depois de fazer logon, acesse o menu de administração e role a tela para baixo até Webhooks.
Como usar
Os administradores precisarão primeiro de um serviço de webhook pronto para aceitar o push de entrada do Acrobat Sign. Há muitas opções a esse respeito e, desde que o serviço possa aceitar solicitações POST e GET, o webhook terá êxito.
Quando o serviço estiver em funcionamento, um administrador do Acrobat Sign poderá criar um novo webhook na interface do Webhook no menu Conta, do site do Acrobat Sign.
Os administradores podem configurar o acionamento do webhook para eventos de Contrato, Formulário web (Widget) ou Envio em massa (MegaSign). O recurso Modelo de biblioteca (Documento da biblioteca) também pode ser configurado por meio da API.
O escopo do webhook pode incluir a conta inteira ou grupos individuais por meio da interface do administrador. A API permite mais granularidade por meio da seleção dos escopos USUÁRIO ou RECURSO.
O tipo de dados que é enviado ao URL é configurável e pode incluir itens como informações do contrato, do participante, do documento e assim por diante.
Depois que o webhook é configurado e salvo, o Acrobat Sign envia um novo objeto JSON ao URL definido sempre que o evento inscrito é acionado. Nenhuma manipulação contínua do webhook é necessária, a menos que você queira alterar os critérios do acionador do evento ou a carga JSON.
Verificação de intenção do URL do webhook
Antes de registrar um webhook com sucesso, o Acrobat Sign verifica se o URL do webhook fornecido na solicitação de registro realmente deseja receber notificações ou não. Para essa finalidade, quando o Acrobat Sign recebe uma nova solicitação de registro de webhook, ele primeiro faz uma solicitação de verificação ao URL do webhook. Esta solicitação de verificação é uma solicitação GET HTTPS enviada ao URL do webhook. Ela tem um cabeçalho HTTP personalizado X-AdobeSign-ClientId. O valor desse cabeçalho é definido como a ID do cliente (ID do aplicativo) do aplicativo da API que está solicitando a criação/registro do webhook. Para registrar um webhook com sucesso, o URL do webhook deve responder a essa solicitação de verificação com um código de resposta 2XX E, além disso, ele DEVE enviar de volta o mesmo valor de ID de cliente de uma de duas maneiras:
- Em um cabeçalho de resposta X-AdobeSign-ClientId. Esse é o mesmo cabeçalho transmitido na solicitação e repetido na resposta.
- Ou no corpo da resposta JSON, com a chave de xAdobeSignClientId e seu valor sendo a mesma ID de cliente enviada na solicitação.
O webhook será registrado com êxito apenas em uma resposta de sucesso (código de resposta 2XX) e validação da ID do cliente no cabeçalho ou no corpo da resposta. A finalidade dessa solicitação de verificação é demonstrar que o URL do webhook realmente deseja receber notificações nesse URL. Se você inseriu acidentalmente o URL errado, ele não responderá corretamente à solicitação de verificação de intenção e o Acrobat Sign não enviará nenhuma notificação para esse URL. Além disso, o URL do webhook também pode validar que ele receberia notificações apenas por meio dos webhooks registrados por um aplicativo específico. Isso pode ser feito validando a ID do cliente do aplicativo passado no cabeçalho X-AdobeSign-ClientId. Se o URL do webhook não reconhecer essa ID de cliente, ele NÃO DEVERÁ responder com o código da resposta de sucesso e o Acrobat Sign cuidará para que o URL não seja registrado como um webhook.
A verificação da chamada de URL do webhook será feita nos seguintes cenários:
- Registro do webhook: se essa verificação da chamada de URL do webhook falhar, o webhook não será criado.
- Atualização do webhook: INATIVO para ATIVO: se essa verificação da chamada de URL do webhook falhar, o estado do webhook não será alterado para ATIVO.
Como responder a uma notificação de webhook
O Acrobat Sign executa uma verificação implícita de intenção em cada solicitação de notificação do webhook enviada ao URL do webhook. Assim, cada solicitação HTTPS de notificação do webhook também contém o cabeçalho HTTP personalizado chamado X-AdobeSign-ClientId. O valor desse cabeçalho é a ID do cliente (ID do aplicativo) do aplicativo que criou o webhook. Consideraremos que a notificação do webhook foi entregue com êxito apenas se uma resposta de sucesso (código de resposta 2XX) for retornada e a ID do cliente for enviada no cabeçalho HTTP (X-AdobeSign-ClientId) ou por meio de um corpo de resposta JSON que contém xAdobeSignClientId como chave e a mesma ID de cliente como valor. Caso contrário, tentaremos enviar a notificação novamente para o URL do webhook até que as tentativas sejam esgotadas.
Como ativar ou desativar
O acesso ao recurso Webhooks fica ativado por padrão para contas corporativas.
Os administradores de nível de grupo podem criar/controlar apenas os webhooks que operam no grupo deles.
O acesso à página do webhooks pode ser encontrado no painel esquerdo do menu Administrador.
Limitação de taxa baseada em simultaneidade
Os eventos de criação e notificação de webhook (e retorno de chamada) são limitados em termos do número de notificações simultâneas que estão sendo ativamente entregues ao cliente pelo sistema do Acrobat Sign. Esse limite aplica-se à conta, incluindo todos os grupos dentro da conta.
Esse tipo de limitação de taxa evita que uma conta mal projetada consuma uma quantidade desproporcional de recursos do servidor, afetando negativamente todos os outros clientes naquele ambiente.
O número de eventos simultâneos por conta foi calculado para garantir que contas com webhooks com comportamento correto recebam suas notificações no tempo mais curto possível e raramente encontrem uma situação em que as notificações sejam atrasadas devido a um excesso de solicitações. Os limites atuais são:
Ação |
Número máximo |
Descrição |
Criação de webhook |
10 |
São permitidas no máximo 10 solicitações simultâneas de criação de webhook por conta. |
Notificação de webhook e retorno de chamada |
30 |
Cada conta pode ter no máximo 30 notificações de webhook e callback simultâneas. |
Práticas recomendadas
- Inscreva-se em eventos específicos e necessários para limitar o número de solicitações HTTPS ao servidor - quanto mais específicos forem seus webhooks, menor será o volume necessário para examinar.
- Seja resistente a duplicidades - se você tiver mais de um aplicativo compartilhando o mesmo URL do webhook e o mesmo usuário mapeado para cada aplicativo, o mesmo evento será enviado para o webhook várias vezes (uma vez por aplicativo). Em alguns casos, o webhook pode receber eventos duplicados. Seu aplicativo de webhook deve ser tolerante a isso e remover as duplicidades por ID de evento.
- Sempre responda a webhooks rapidamente - seu aplicativo tem apenas dez segundos para responder a solicitações de webhook. Para a solicitação de verificação, isso raramente é um problema, já que seu aplicativo não terá nenhum trabalho de fato para responder. No entanto, para solicitações de notificação, seu aplicativo geralmente fará algo que consome tempo em resposta à solicitação. É recomendável trabalhar em um thread separado ou de forma assíncrona usando uma fila para garantir que você possa responder dentro de cinco segundos
- Gerenciar concorrência - quando um usuário faz várias alterações numa sequência rápida, é provável que o aplicativo receba várias notificações para o mesmo usuário, aproximadamente ao mesmo tempo. Se você não tiver cuidado com o gerenciamento de concorrência, seu aplicativo pode acabar processando as mesmas alterações do mesmo usuário mais de uma vez. Para aproveitar os webhooks do Acrobat Sign, é necessário entender claramente o uso das informações. Faça perguntas como:
- Quais dados você deseja que retornem na carga?
- Quem terá acesso a estas informações?
- Que decisões ou relatórios serão gerados?
- Recomendações para recebimento de um documento assinado - há vários fatores a serem considerados ao determinar como receber um PDF assinado do Acrobat Sign no sistema de gerenciamento de documentos.
Embora seja perfeitamente aceitável apenas selecionar a opção Documento assinado do contrato ao criar um webhook, você pode considerar o uso da API do Acrobat Sign para recuperar os documentos quando um evento de acionamento (como status de contrato concluído) é recebido.
Itens a serem considerados...
Limitação de tamanho JSON
O tamanho da carga JSON é limitado a 10 MB.
Se um evento gerar uma carga maior, um webhook será acionado, mas os atributos do parâmetro condicional, se houver na solicitação, serão removidos para reduzir o tamanho da carga.
“ConditionalParametersTrimmed” será retornado na resposta quando isso acontecer para informar ao cliente que as informações de conditionalParameters foram removidas.
“conditionalParametersTrimmed” é um objeto de matriz que contém as informações sobre as chaves que foram cortadas.
O truncamento será feito na seguinte ordem:
- includeSignedDocuments
- includeParticipantsInfo
- includeDocumentsInfo
- includeDetailedInfo
Os documentos assinados serão truncados primeiro, seguidos pelas informações do participante, informações do documento e, por fim, as informações detalhadas.
Isso pode acontecer, por exemplo, em um evento de conclusão de contrato, se este incluir um documento assinado (com codificação Base64), ou em um contrato com vários campos de formulário
Os webhooks do Acrobat Sign enviam notificações ao remetente do contrato e todos os webhooks configurados no grupo do qual o contrato foi enviado. Os webhooks no escopo da conta recebem todos os eventos.
Tentar novamente quando o serviço de escuta estiver inativo
Se o URL de destino do webhook estiver inativo por algum motivo, o Acrobat Sign enfileira o JSON e tenta executar novamente o push em um ciclo progressivo ao longo de 72 horas.
Os eventos não entregues são persistidos em uma fila de tentativas e é feito um melhor esforço nas 72 horas seguintes para entregar as notificações na ordem em que ocorreram.
A estratégia para repetir a entrega de notificações é duplicar o tempo entre tentativas, começando com um intervalo de um minuto e aumentando para a cada 12 horas, resultando em 15 tentativas em 72 horas.
Se o receptor do webhook não responder dentro de 72 horas e não houver entregas de notificação bem-sucedidas nos últimos sete dias, o webhook será desativado. Nenhuma notificação será enviada para este URL até que o webhook seja ativado novamente.
Todas as notificações entre o momento em que o webhook é desativado e ativado novamente serão perdidas.