Gerar documentos
Como gerar documentos no Zeev utilizando API?
Para gerar documentos utilizando API siga os passos abaixo:
Obtenha o InstanceId: Obtenha o código identificador da instância de solicitação. Para uma execução manual ou externa é possível encontra-lo na página Monitorar > Solicitações, ou através de consultas de API como explicado em Listar todas as solicitações do sistema. Se o endpoint for utilizado dentro de uma integração do Zeev, considere usar {Instance.Id} conforme explicado em Tokens de instâncias de solicitações;
Obtenha o xmlProcess: É um texto estruturado contendo as informações dos campos que vão preencher o template. Se utilizado a partir de uma Integração do Zeev, considere utilizar {Instance.Xml} para enviar os dados do formulário de uma instancia durante a execução. Tamém é possível utilizar o padrão especificado em Exemplo de XML de processo
Obtenha o templatePath: Informe aqui o caminho relativo do template criado. Veja com obter emComo configurar um template;
Defina o generatedFilename: Defina o nome do arquivo gerado;
Defina o tipo de documento gerado: Utilize 0 para que o resultado do arquivo gerado seja um PDF ou 1 para que seja um DOCX;
Envie a requisição: Com todos os dados elabore o corpo da requisição e envie a requisição para Gerar documentos
Exemplo de XML de processo
<workflow><execute><form><formField name=\"campoA\" order=\"1\" codFieldGroup=\"\" fieldGroupName=\"\">Valor do Campo A</formField></form></execute></workflow>
Exemplo simples do corpo de requisição para gerar arquivo
{
"instanceId": 1251,
"xmlProcess": "<workflow><execute><form><formField name=\"nomePessoal\" order=\"1\" codFieldGroup=\"\" fieldGroupName=\"\">Lucas da Silva</formField></form></execute></workflow>",
"templatePath": "/attachments/template/example.docx",
"generatedFilename": "CreateFile Example",
"outputFileFormat": 0
}
Exemplo de requisição utilizando tokens de variável do Zeev
{
"instanceId": {Instance.Id},
"xmlProcess": "{Instance.Xml}",
"templatePath": "/attachments/template/example.docx",
"generatedFilename": "CreateFile Example",
"outputFileFormat": 0
}
Gerar um documento PDF ou DOCX populando-o com informações e variáveis da instância da solicitação (Auth)
Identificador da instância
Xml de valores do formulário
Endereço absoluto/relativo do arquivo de template docx
UID do arquivo de template html
Nome do arquivo a ser gerado, sem extensão
Formato do arquivo de saída (Pdf/Docx)
Mostrar informações básicas sobre o documento
Assinar o documento digitalmente
Incluir QRCODE e dados para consulta de autenticidade
Incluir marca d'água no documento
Sucesso
Solicitação ou dados da solicitação são inválidas
Pessoa não autorizada
Pessoa não tem permissão de executar essa operação
O registro não foi encontrado
Muitas requisições em um determinado período de tempo
Ocorreu algum erro interno no servidor
POST /api/2/files/createfile HTTP/1.1
Host: seu_endereco.do.zeev
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 431
{
"instanceId": 1251,
"xmlProcess": "<workflow><execute><form><formField name=\"nomePessoal\" order=\"1\" codFieldGroup=\"\" fieldGroupName=\"\">Lucas da Silva</formField></form></execute></workflow>",
"templatePath": "/attachments/template/example.docx",
"htmlTemplateUid": "",
"generatedFilename": "CreateFile Example",
"outputFileFormat": 0,
"showInfoAboutDocument": false,
"shouldSign": false,
"shouldTrackQrcode": false,
"shouldWatermark": false
}
{
"result": "text"
}
Exemplo de requisição para criação de documentos
const myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");
myHeaders.append("Accept", "application/json");
myHeaders.append("Authorization", "Bearer TOKEN_DO_USUARIO");
const raw = JSON.stringify({
"instanceId": 1251,
"xmlProcess": "<workflow><execute><form><formField name=\"nomePessoal\" order=\"1\" codFieldGroup=\"\" fieldGroupName=\"\">Lucas da Silva</formField></form></execute></workflow>",
"templatePath": "/attachments/template/example.docx",
"generatedFilename": "CreateFile Example",
"outputFileFormat": 0
});
const requestOptions = {
method: "POST",
headers: myHeaders,
body: raw
};
try {
const response = await fetch("https://seu_endereco.do.zeev/api/2/files/createfile", requestOptions);
const result = await response.text();
console.log(result)
} catch (error) {
console.error(error);
};
Links relacionados:
Atualizado