Preparação de documento(s)

A preparação de documentos é um processo destinado a obter um arquivo já preparado para receber a assinatura e também o hash a ser assinado.

O processo é feito de forma assíncrona. Ao iniciar-se o processo é gerado um TCN (Token de controle da transação), o TCN deve ser utilizado para identificar a transação no momento da recuperação do documento.

O parâmetro que identifica que o documento será preparado ao invés de assinado é o prepare_only que deve receber o valor "true".

Também é necessário passar a cadeia de certificados no parâmetro certificartes. Que recebe os PEM da cadeia de certificados em URL encode.

Os campos retornados para cada documento são:

prepared_checksum - Hash para verificação da integridade do documento preparado;

prepared_result - URL para download do documento preparado;

prepared_hash - Hash a ser assinado e incorporado ao documento preparado.

POST http://cess.local/signature-service

Headers

NameTypeDescription

Authorization

string

Basic, Bearer ou VCSchema (Veja "Autenticação e Autorização")

Content-Type

string

application/json

Accept

string

application/json

Request Body

NameTypeDescription

certificate_alias

string

Identifica qual certificado será utilizado para realizar assinatura.

documents_destination

string

- AWS_S3 (o arquivo assinado será salvo no bucket S3) - GCP_STORAGE (o arquivo assinado será salvo no bucket Google Cloud Platform Storage)

mode

string

Modo de operação - sync - async

type

string

Tipo de assinatura - CMS-attached - CMS-detached - PDFSignature - CAdEs-attached - CAdEs-detached - PAdEs - XAdES

notification_callback

string

URL de callback para notificação, o sistema irá notificar quando o processo de assinatura for finalizado, será feito uma requisição HTTP(s) - POST na URL informada, na chamada será concatenado o código transação no final da url informada neste parâmetro. URL informada: http://endpointx.com?tcn= URL que será feita a requisição HTTP: http://endpointx.com?tcn=tcn_aqui_123456

policy

string

Políticas por tipo de assinatura - CMS: - Default ( Assinatura padrão CMS ) - TSA ( Assinatura padrão CMS incluindo assinatura da carimbadora do tempo ) - PDFSignature: - Default ( Assinatura padrão PDF - Adobe ) - TSA ( Assinatura padrão de PDF - Adobe incluindo assinatura da carimbadora do tempo ) - CAdEs/PAdEs: - AD_RB ( ICP Brasil ) - AD_RT ( ICP Brasil ) - XAdES: - AD_RB - AD_RT - AD_RC - AD_RA

hash_algorithm

string

Algoritmo de hash que será utilizado na assinatura (SHA1,SHA256, SHA384 ou SHA512)

signature_settings

object

Parâmetros adicionais de configuração de assinatura, devem ser enviados para configuração de assinatura visível (PDFSignature/PAdES) - id ( Identificador da configuração de assinatura ) - contact ( Contato do assinante ) - location ( Localização da assinatura, Ex: Washington-DC ) - reason ( Motivo da assinatura ) -visible_signature (true or false, desabilita a assinatura visível) - visible_sign_page ( Página onde será inserido a assinatura visível. Envie "1" para a primeira página, "-1" para última e "*" para todas) - visible_sign_x ( Coordenada X na página onde será inserido a assinatura visível ) - visible_sign_y ( Coordenada Y na página onde será inserido a assinatura visível ) - visible_sign_width ( Largura da imagem da assinatura visível ) - visible_sign_height ( Altura da imagem da assinatura visível ) - visible_sign_scale ( Escala (%) da imagem da assinatura visível ) - visible_sign_img ( Bytes de uma imagem PNG no formato DATA URI com a assinatura do usuário - RFC 2397 ) - extraInfo (Array para adicionar metadados no PDF, útil para prescrição médica. Contendo as chaves name e value. Exemplo: "extraInfo": [{ "name": "2.16.1.12.1.2", "value": "Atestado Médico" }] ) -prepare_fields_value (Array para adicionar valores aos formulários do PDF. Contendo as chaves name, type e value. Exemplo: "prepare_fields_value": [ { "name": "03_Cidade Local de Atendimento", "type": "text", "value": "Goiania" }] ) Parâmetros adicionais para configuração de assinatura devem ser enviados para assinatura padrão XAdES - tag_name (Nome da tag a ser assinada) - tag_id (Id da tag a ser assinada)

auto_fix_document

boolean

Habilita autocorreção do documento caso disponível

tsa_server_id

string

Identificador da carimbadora do tempo

tsa_hash_algorithm

string

Algoritmo de hash que será utilizado na assinatura do carimbo do tempo (SHA1,SHA256, SHA384 ou SHA512)

documents_source

string

Origem dos documentos: - DATA_URL ( Arquivo encodado na URL - https://tools.ietf.org/html/rfc2397 ) - FILE_PATH ( Caminho do arquivo local do arquivo ) - UPLOAD_REFERENCE ( O conteúdo do arquivo deverá ser enviado posteriormente via API ) - AWS_S3 (nome do objeto no bucket do S3) - GCP_STORAGE (nome do objeto no bucket do GCP) - HASH (o hash deverá ser em hexadecimal - enviado na chave data de documents)

documents

string

Caso o documents_source seja do tipo DATA_URL ou FILE_PATH esse parâmetro deve ser enviado. Lista de especificação de documento(s) a ser(em) assinado(s), caso seja enviado mais de um item na lista, automaticamente a requisição será reconhecida como transação de assinatura em lote. - id ( Identificador do documento na transação ) - data ( Conteúdo compatível com especificado no data source ) - destination_file_name (Caso esteja utilizando documents_destination com valor AWS_S3 ou GCP_STORAGE, poderá ser definido o nome do objeto. Se o nome não for definido, será criado um identificar aleatório com a seguinte lei de formação: ano/mês/dia/timestamp_númeroAleatório8dígitos

prepare_only

boolean

Informa que o documento apenas será preparado para receber a assinatura porém não será assinado

certificates

array[string]

Lista de URL encode do PEM da cadeia de certificados. . Ex.: ["-----BEGIN%20CERTIFICATE-----%0AMIIHDTCCB...toLNr8DF%0A-----END%20CERTIFICATE-----"]

{
    "tcn": "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa",
    "certificate_alias": "VVVVV..VVVVVV",
    "type": "PDFSignature",
    "hash_algorithm": "SHA256",
    "checksum_algorithm": "SHA1",
    "status": 200,
    "visible_signature": true,
    "tsa": false,
    "eot": true,
    "documents_source": "DATA_URL",
    "documents": [
        {
            "id": "0",
            "original_file_name": "meu-arquivo.pdf",
            "mediatype": "data:application/pdf",
            "status": "WAITING",
            "prepared_checksum": "cccccc...cccc",
            "prepared_result": "http://cess.local/file-transfer/aaa...aa/0?prepared=true",
            "prepared_hash": "bbbbbbbbbbbbbbbb....bbbbb"
        }
    ]
}

Download do documento preparado

Para fazer o download do documento preparado, basta acessar a url retornada em prepared_result.

GET http://cess.local/file-transfer/<tcn>/<document id>?prepared=true

Path Parameters

NameTypeDescription

tcn*

string

document_id*

String

bytes do documento preparado

Last updated