ZapSign API
Português
Português
  • Informações gerais
  • Como começar
  • Ambiente de testes
  • Todas as requisições prontas!
  • Autenticação
    • Token estático (Api Token)
    • JWT (recomendado)
      • Obter token de acesso
      • Atualize seu token de acesso
  • Tipos de Tokens e Como Localizá-los
  • Versionamento da API
  • Políticas de Rate Limit
  • Alerta de incidentes
  • Ambiente de produção: Como funciona o pagamento
  • Status de erros
  • Conta
    • Informações do Plano
    • Listar usuários da conta
    • Criar usuários na conta
    • Excluir usuário da conta
  • Documentos
    • Criar documento via Upload
    • OneClick (ClickWrap)
      • Criar documento (OneClick)
    • Criar documento via Modelo
    • Adicionar anexo (documento extra)
    • Adicionar anexo (documento extra) via Modelo
    • Detalhar documento
    • Listar documentos
    • Excluir documento
    • Histórico de atividades do documento
    • Opcional: Posicionar assinaturas
    • Reprovar documentos
  • Signatários
    • Detalhar signatário
    • Atualizar signatário
    • Adicionar signatário
    • Excluir signatário
    • Grupo de signatários
      • Definir grupos de signatários
      • Excluir grupos de signatários
    • Assinar em lote via API
    • Reprovar documentos pelo usuário
  • Modelos
    • Criar modelo DOCX
      • Atualizar formulario
    • Listar modelos
    • Detalhar modelo
    • Atualizar modelo
    • Excluir modelo
  • Antecedentes
    • Introdução
    • Entendendo o Resultado
    • Criar uma Consulta (Check)
      • Consulta de Pessoa
      • Consulta de Empresa
  • Consultar Check
  • Detalhe do Check
  • Parcerias
    • Atualizar status de pagamento
  • Criar conta
  • CARIMBO DE TEMPO
    • Como funciona Carimbo de Tempo?
    • Carimbo de Tempo padrão
    • Carimbo de tempo preservando a assinatura original
  • Webhooks
    • Como funcionam os Webhooks
    • Testando Webhooks
    • Criar webhook
    • Logs de Webhooks
    • Eventos
      • Documento
        • Documento criado
        • Documento removido
        • Signatário criado
      • Signatário
        • Notificação de assinatura
        • Documento visualizado
        • Confirmação de leitura
        • Documento assinado
        • Documento recusado
        • Email bounce
        • Falha na Validação
      • Antecedentes
        • Consulta concluída
    • Reprocessamento de Documentos e Webhooks
    • Deletar webhook
  • Widget
    • Como funciona o Widget
Powered by GitBook
On this page
  • Criar documento via upload
  • Configurando signatários
  • Exemplos de requisição
  • O que faço com a resposta?
  • Editar documento OneClick em andamento
  • Sobre o base64
  • Converse com o Gepeto!

Was this helpful?

  1. Documentos
  2. OneClick (ClickWrap)

Criar documento (OneClick)

PreviousOneClick (ClickWrap)NextCriar documento via Modelo

Last updated 12 days ago

Was this helpful?

Este endpoint permite criar um documento para assinatura com um clique a partir de um arquivo PDF ou DOCX. É recomendado quando você já possui o arquivo final e apenas precisa configurar o documento e os signatários. Para utilizá-lo, você deve enviar os dados no formato JSON e também receberá a resposta no mesmo formato.

Criar documento via upload

POST https://api.zapsign.com.br/api/v1/docs/

Dica: para enviar vários documentos em um envelope para que o signatário os assine ao mesmo tempo, primeiro crie o documento com este endpoint e, em seguida, adicione os outros documentos utilizando o endpoint

Headers

Name
Type
Description

Authorization*

string

Api token a frente do texto "Bearer".

Ex: Bearer c7f35c84-7893-4087-b4fb-d1f06c23

Request Body

Name
Type
Description

name

string

Título do documento. String de até 255 caracteres

one_click_active

boolean

Para ativar a experiência simplificada de assinatura, este parâmetro deve ser true.

require_signature

boolean

Quando a experiência simplificada de assinatura (one_click_active) está ativada e este parâmetro é definido como true, o signatário precisará aceitar o checkbox e desenhar a assinatura.

url_pdf

string

Defina o PDF a ser assinado, a partir de uma URL pública com o arquivo. Aceitamos por enquanto apenas um arquivo no formato PDF, de até 10Mb.

base64_pdf

string

Alternativa ao url_pdf: Defina o PDF a ser assinado, a partir de um base64. Você deve converter o arquivo para uma string em base64 e nos enviar neste parâmetro (mais detalhes abaixo).

url_docx

string

Alternativa ao url_pdf: Defina o Word (.docx) a ser assinado, a partir de uma URL pública com o arquivo. Aceita um arquivo no formato .docx, de até 10Mb.

base64_docx

string

Alternativa ao url_pdf: Defina o Word (.docx) a ser assinado, a partir de um base64. Você deve converter o arquivo para uma string em base64 e nos enviar neste parâmetro (mais detalhes abaixo).

signers[name]

Array<Signer>

O campo 'signers' representa os signatários do documento, ou seja, quem irá assinar. A configuração de cada signatário esta abaixo.

É um array de objetos.

lang

string

idioma do documento. Valores possíveis: "pt-br" (português), "es" (espanhol), "en" (inglês). Default: "pt-br"

disable_signer_emails

boolean

para desativar os e-mails enviados aos signatários, envie esse parâmetro como true. Default: false

brand_logo

string

(se deseja personalizar a logomarca da experiência de assinatura deste documento específico, envie a URL da imagem (precisa ser um link publicamente acessível).

Default: ""

brand_primary_color

se deseja personalizar a cor primária (do botão) da experiência de assinatura deste documento específico, envie em rgb ou hexadecimal.

Ex: "#0011ee".

Default: ""

brand_name

string

se deseja personalizar o nome do remetente dos e-mails enviados ao signatário, insira aqui o nome da marca. Por exemplo, se inserido "XPTO Advogados", o remetente do e-mail será "XPTO Advogados via ZapSign".

Max-length: 100 caracteres.

Default: ""

external_id

string

ID do documento na sua aplicação.

Default: ""

folder_path

string

caminho da pasta dentro da ZapSign em que o documento será colocado. Se as pastas não existirem, serão criadas automaticamente. Requisitos: (1) o folder_path pode ter até 255 caracteres, (2) cada pasta pode ter até 50 caracteres, (3) há um limite de 5 níveis de pasta.

Ex.: "/api/" ou "/pasta1/pasta2/pasta3/".

Default: "/" (sem pasta).

created_by

string

e-mail do usuário que será definido como criador do documento, para fins de organização interna. Caso o e-mail não exista ou não seja usuário da sua conta, este parâmetro será ignorado.

Default: ""

(documento terá como criador o proprietário da conta)

date_limit_to_sign

DateTime

Data limite para assinatura do documento.

Formatos aceitos:

YYYY-MM-DD

YYYY-MM-DDTH:m:s.ssssssZ

signature_order_active

boolean

Se verdadeiro, as assinaturas do signatário serão solicitadas sequencialmente.

Default: false

observers

array<string>

Representa os observadores do documento (limite de 20), ou seja, endereços de e-mails que serão notificados após a conclusão do fluxo de assinatura. É um array de strings.

reminder_every_n_days

integer

Representa o intervalo de dias entre os lembretes que serão enviados para os signatários.

allow_refuse_signature

boolean

Se verdadeiro, os signatários tem a opção de se recusar a assinar. Default: false.

disable_signers_get_original_file

boolean

Se verdadeiro, os signatários não tem a opção de baixar o documento original.

Default: false.

Metadata

Array

Metadados personalizados enviados na criação do documento, no formato de pares key e value. Essas informações aparecem apenas nos webhooks de criação, assinatura, recusa e exclusão.

Configurando signatários

Esses campos permitem ajustar a experiência de assinatura para cada pessoa envolvida.

Aviso: ao criar um documento com OneClick, é necessário preencher as informações de name, email ou phone, já que o signatário apenas aceitará a assinatura do documento por meio de uma checkbox (é opcional habilitar a assinatura). Além disso, não é possível definir métodos de autenticação (auth_mode, selfie_validation_type, require_document_photo, require_selfie).

Documento - raiz do JSON:

  • Signers

    • name (string): O nome do signatário. Obrigatório.

    • email (string): O e-mail do signatário. É obrigatório definir o e-mail ou o telefone, pois o signatário não poderá preencher esses dados.

    • phone_country (string): O código do país do telefone do signatário. É obrigatório definir o e-mail ou o telefone, pois o signatário não poderá preencher esses dados.

    • phone_number (string): O número de telefone do signatário. É obrigatório definir o e-mail ou o telefone, pois o signatário não poderá preencher esses dados.

    • order_group (integer): Caso "signature_order_active" esteja ativo no document, esse campo controla a ordem de assinatura. Exemplo: Se o order_group é 1, esse será o primeiro a assinar, se o order_group for 2 esse será o segundo a assinar e assim por diante.

    • custom_message (string): (apenas relevante caso send_automatic_email: true). A custom_message é a mensagem personalizada que você pode inserir no e-mail enviado pela ZapSign ao signatário. Exemplo: "Olá Fulano, \n Este é o seu contrato de trabalho. \n Abraços, Equipe XPTO". O símbolo \n serve para "pular uma linha" no texto do e-mail. Default: ""

    • blank_email (boolean): Você pode não solicitar o email do signatário. Default: false

    • hide_email (boolean): Você pode ocultar o email do signatário no relatório de assinaturas. Default: false

    • blank_phone (boolean): Você pode não solicitar o telefone do signatário. Default: false

    • hide_phone (boolean): Você pode ocultar o telefone do signatário no relatório de assinaturas. Default: false

    • qualification (string): Qualificação para aparecer no relatório de assinaturas. Ex: valor "testemunha" irá resultar em "Assinou como testemunha". Default: ""

    • external_id (string): ID do signatário na sua aplicação. Default: ""

    • redirect_link (string): link para redirecionamento após signatário assinar. Por exemplo: "https://www.seusite.com.br/agradecimento". Irá aparecer como um botão "CONTINUAR" abaixo dos botões "Baixar original" e "Baixar assinado". Lembre-se de inserir o http:// ou https:// no começo do link. Default: ""


Exemplos de requisição

{
	"name":"Termos de uso de serviço",
	"url_pdf":"https://zapsign.s3.amazonaws.com/2022/1/pdf/63d19807-cbfa-4b51-8571-215ad0f4eb98/ca42e7be-c932-482c-b70b-92ad7aea04be.pdf",
        "one_click_active": true,
        "require_signature": true,
	"external_id": null,
	"signers":[
		{
			"name":"Maria Perez",
			"email":"maria@gmail.com",
			"send_automatic_email": false
		}
	],
    "lang": "pt-br",
    "signed_file_only_finished": false,
    "folder_path":"/",
    "created_by":"",
    "date_limit_to_sign": null,
    "signature_order_active": false,
    "reminder_every_n_days": 0,
    "allow_refuse_signature": false,
    "disable_signers_get_original_file": false
}

O que faço com a resposta?

Após uma requisição bem sucedida, você deverá receber uma resposta como essa:

{
    "open_id": 5,
    "token": "eb9c367a-e62f-4992-8360-b0219deaeecc",
    "status": "pending",
    "one_click_active": true,
    "require_signature": true,
    "name": "Contrato de Admissão João",
    "original_file": "https://zapsign.s3.amazonaws.com/pdf/62xxxxx-d8fc-4392-8575-f3c46c3cfc7a/df6bac91-2766-4182-8c8b-ded5287e4c0f.pdf",
    "signed_file": null,
    "created_at": "2020-04-16T03:33:46.241747Z",
    "last_update_at": "2020-04-16T03:33:46.241775Z",
    "signers": [
        {
            "token": "921c115d-4a6e-445d-bdca-03fadedbbc0b",
            "sign_url": "https://app.zapsign.com.br/verificar/oneclick/921c115d-4a6e-445d-bdca-03fadedbbc0b",
            "status": "new",
            "name": "João da Silva",
            "email": "",
            "phone_country": "",
            "phone_number": "",
            "times_viewed": 0,
            "last_view_at": null,
            "signed_at": null,
            "resend_attempts": null
        },
        {
            "token": "07fb0a0a-4b7d-49a5-bd7b-4958265c4e46",
            "sign_url": "https://app.zapsign.com.br/verificar/oneclick/07fb0a0a-4b7d-49a5-bd7b-4958265c4e46",
            "status": "new",
            "name": "Fulano Siclano",
            "email": "",
            "phone_country": "",
            "phone_number": "",
            "times_viewed": 0,
            "last_view_at": null,
            "signed_at": null,
            "resend_attempts": null
        }
    ]
}

O próximo passo é compartilhar os links de assinatura com cada signatário através da sua aplicação. Cada link é composto pela rota base:

https://app.zapsign.com.br/verificar/oneclick/{{signer_token}}

No exemplo acima, em que temos dois signatários, você deverá enviar dois links específicos, um para cada signatário, utilizando o respectivo token:

Agora, basta aguardar que os signatários acessem os links e concluam a assinatura!


Editar documento OneClick em andamento

É possível adicionar, remover ou editar um signatário de um documento em andamento. É importante destacar que, para adicionar ou editar um signatário, não é possível utilizar os parâmetros auth_mode, selfie_validation_type, require_document_photo ou require_selfie, pois o OneClick é uma experiência de assinatura simplificada e não é compatível com métodos avançados de autenticação.

Leia a documentação para:

Sobre o base64

Quando a API já estiver integrada em seu sistema, procure a função adequada na sua linguagem de programação que pode converter o arquivo em base64.

Observação: você deve enviar o parâmetro base64_pdf apenas com a conversão do arquivo em base64. Não insira data:application/pdf;base64, na sua string.

Não quer trabalhar com base64? Suba seu PDF em uma url pública e use o parâmetro url_pdf.

Converse com o Gepeto!

Tem alguma duvida? Utilize nossa inteligência artificial treinada com toda a documentação da API =)

send_automatic_email (boolean): Se true, a ZapSign irá enviar um e-mail ao signatário com o link para assinar o documento. Se false (default), , seja pelo seu site, widget, WhatsApp, SMS, e-mail, chat etc. Observação: para isso funcionar, é obrigatório que o email do signatário seja definido.

send_automatic_whatsapp (boolean): Se true, a ZapSign irá enviar uma mensagem por WhatsApp ao signatário com o link para assinar o documento. Se false (default), , seja pelo seu site, widget, WhatsApp, SMS, e-mail, chat etc. Observação: para isso funcionar, é obrigatório que o phone_country e phone_number do signatário sejam definidos e cada envio automático via WhatsApp custa R$ 0,50. Adicione créditos em .

send_automatic_whatsapp_signed_file (boolean): Se true, a ZapSign irá enviar uma mensagem por WhatsApp ao signatário com o link para o arquivo assinado. Se false (default), , seja pelo seu site, widget, WhatsApp, SMS, e-mail, chat etc. Observação: para isso funcionar, é obrigatório que o phone_country e phone_number do signatário sejam definidos e cada envio automático via WhatsApp custa R$ 0,50. Adicione créditos em .

Atenção: os links retornados em original_file e signed_file são temporários e duram 60 minutos. Caso seu sistema necessite salvar estes links é recomendado que sejam baixados em uma CDN própria ou que o endpoint de seja consultado sempre para garantir que seu usuário sempre receberá um link válido.

João da Silva:

Fulano Siclano:

Base64 é uma maneira simples de converter um arquivo em texto. Veja aqui uma definição mais completa . Assim, converter o arquivo em base64 e enviar como texto no corpo da requisição é mais fácil do que lidar com multipart/form-data, por exemplo.

Para testar a API, você pode converter manualmente seu PDF em base64 através de vários sites, como esse:

Adicionar anexo (documento extra).
você é quem se encarregará de compartilhar o link de assinatura com o signatário
você é quem se encarregará de compartilhar o link de assinatura com o signatário
Configurações > Plano
você é quem se encarregará de compartilhar o link de assinatura com o signatário
Configurações > Plano
Detalhar documento
https://app.zapsign.com.br/verificar/onelick/921c115d-4a6e-445d-bdca-03fadedbbc0b
https://app.zapsign.com.br/verificar/oneclick/07fb0a0a-4b7d-49a5-bd7b-4958265c4e46
Adicionar signatário
Remover signatário
Editar signatário
https://pt.wikipedia.org/wiki/Base64
https://base64.guru/converter/encode/pdf
Chat
Logo