Skip to main content

Plataforma para gestión y firma de documentos digitales. (stable)

Download OpenAPI specification:Download

Servicio para crear documentos digitales personalizables y firmarlos conforme a la NOM 151 mexicana. Permite adaptar los documentos a diferentes necesidades y escenarios de uso. Soporta integración de múltiples campos, metadatos y elementos digitales.

Templates

Con estos endpoint se manejan todos los templates que son la base para la construcción de documentos, desde la creación de la base a través de un documento PDF así como el nombre y la descripción del propósito de este template.

Recupera una lista de plantillas disponibles.

Authorizations:
apiKeyAuth
query Parameters
search
string
Example: search=test

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Crea una nueva plantilla.

Authorizations:
apiKeyAuth
Request Body schema: multipart/form-data

Realiza una solicitud multipart/form-data para crear una plantilla. Se deben incluir los campos necesarios y el archivo base.

name
string

Nombre del template

description
string

Descripción del template

template
string <binary>

El archivo PDF del template

template_tmp_id
string <uuid>

Uuid del archivo si se subio con el api de archivos temporales

Responses

Response samples

Content type
application/json
{}

Obtiene los detalles de una plantilla específica.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

El ID del template

Responses

Response samples

Content type
application/json
{}

Actualiza una plantilla existente.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único de la plantilla a modificar.

Request Body schema: multipart/form-data

Realiza una solicitud multipart/form-data para actualizar una plantilla. Incluye campos y archivo base si se requiere reemplazo.

name
string
description
string
template
string <binary>

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Elimina una plantilla del sistema.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único de la plantilla a eliminar.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": "Ok"
}

Reemplaza el archivo base de una plantilla.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único de la plantilla cuyo archivo será reemplazado.

Request Body schema: multipart/form-data

Realiza una solicitud multipart/form-data para cambiar el archivo base de la plantilla.

template
string <binary>

Responses

Response samples

Elementos de Template

Con estos endpoint se manejan todos los elementos de los templates para indicar los campos personalizables de los documentos, desde imágenes, texto y hasta firmas así como las posiciones en el documento de estos.

Obtiene una lista de elementos asociados a plantillas.

Authorizations:
apiKeyAuth
query Parameters
template_id
string
Example: template_id=51319186-a4a0-4497-a3c9-ebdbdaca0159

Template relacionado

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Crea un nuevo elemento de plantilla.

Authorizations:
apiKeyAuth
Request Body schema: application/json

Envia una solicitud application/json para crear un elemento de plantilla.

name
string

Nombre del elemento de template

Texto (1) (integer) or Imagen (2) (integer) or Firma (3) (integer)
page
integer >= 1

Pagina donde se insertará el elemento del template

top
number >= 0

Posición desde arriba para insertar el elemento en la página

left
number >= 0

Posición desde la izquierda para insertar el elemento en la página

width
number >= 0

Ancho que ocupará el elemento en la página

height
number >= 0

Altura que ocupará el elemento en la página

object

Metadata de un elemento de tipo Texto

rules
Array of strings

Reglas de validación para el valor del elemento, referirse a la validación de laravel

template_id
string

El ID del template relacionado

Responses

Request samples

Content type
application/json
{
  • "name": "Campo Nombre",
  • "type": 3,
  • "page": 1,
  • "top": 20,
  • "left": 20,
  • "width": 50,
  • "height": 20,
  • "metadata": {
    },
  • "rules": [
    ],
  • "template_id": "51319186-a4a0-4497-a3c9-ebdbdaca0159"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Obtiene los detalles de un elemento de plantilla.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del elemento de plantilla.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Actualiza un elemento de plantilla existente.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del elemento de plantilla a actualizar.

Request Body schema: application/json

Envia una solicitud application/json para modificar un elemento de plantilla.

name
string

Nombre del elemento de template

type
integer

Tipo de elemento de template type 1 = Text, type 2 = Image, type 3 = Firma

page
integer >= 1

Pagina donde se insertará el elemento del template

top
number >= 0

Posición desde arriba para insertar el elemento en la página

left
number >= 0

Posición desde la izquierda para insertar el elemento en la página

width
number >= 0

Ancho que ocupará el elemento en la página

height
number >= 0

Altura que ocupará el elemento en la página

object

Metadata de un elemento de tipo Texto

rules
Array of strings

Reglas de validación para el valor del elemento, referirse a la validación de laravel

template_id
string

El ID del template relacionado

Responses

Request samples

Content type
application/json
{
  • "name": "Campo Nombre",
  • "type": 1,
  • "page": 1,
  • "top": 20,
  • "left": 20,
  • "width": 50,
  • "height": 20,
  • "metadata": {
    },
  • "rules": [
    ],
  • "template_id": "51319186-a4a0-4497-a3c9-ebdbdaca0159"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Elimina un elemento de plantilla.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del elemento de plantilla a eliminar.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": "Ok"
}

Define una imagen por defecto para un elemento de plantilla tipo imagen.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

ID del elemento de plantilla (debe ser un elemento tipo imagen).

Request Body schema: application/json

Solicita una carga multipart/form-data para establecer la imagen por defecto.

default_value
string <binary>

La imagen a establecer como por defecto

Responses

Request samples

Content type
application/json
{
  • "default_value": "string"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Documentos

Manejo de los documentos ya sean creados a partir de templates o documentos externos.

Obtiene una lista de documentos en el sistema.

Authorizations:
apiKeyAuth
query Parameters
search
string
Example: search=test

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Crea un nuevo documento digital.

Authorizations:
apiKeyAuth
Request Body schema: application/json

Envía una solicitud application/json para crear un documento. Incluye los datos requeridos en el cuerpo del mensaje.

name
string

El nombre del Documento

template_id
string

El ID del template relacionado con el documento

send_email
boolean

Envía un email a todos los firmantes registrados después de sellar con nom 151

autosigning
boolean

Bandera que indica si se firmara con NOM 151 el documento al terminar los usuarios de firmar

callback_url
string

URL en caso de que se quiera hacer llegar el documento al terminar el firmado de NOM 151.

expires_in
integer

Tiempo en minutos que durarán los tokens vinculados a este documento

Array of objects

Elementos del documento llenados, solo tipo Text

Responses

Request samples

Content type
application/json
{
  • "name": "Documento ejemplo",
  • "template_id": "51319186-a4a0-4497-a3c9-ebdbdaca0159",
  • "send_email": true,
  • "autosigning": false,
  • "callback_url": "http://example.com",
  • "expires_in": 15,
  • "elements": [
    ]
}

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Verifica la validez de la firma FIEL en un documento.

Authorizations:
apiKeyAuth
Request Body schema: multipart/form-data
One of
file
string <binary>

archivo pdf a verificar, tamaño maximo 2mb

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Comprueba la autenticidad de la firma FIEL en un documento.

Authorizations:
apiKeyAuth
Request Body schema: multipart/form-data
signature
string <base64>

Sello digital de la firma FIEL que aparece en el documento descriptivo

cer
string <binary>

Archivo .cer de la FIEL que se desea validar

fiel_document
string <binary>

Archivo pdf que se firma con la fiel

fiel_doc_tmp_id
string <uuid>

Uuid del archivo si se subio con el api de archivos temporales

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Consulta los detalles de un documento específico.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del documento a consultar.

query Parameters
with_template_elems
boolean
Example: with_template_elems=false

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": [
    ]
}

Actualiza un documento existente.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del documento a modificar.

Request Body schema: application/json

Realiza una solicitud application/json para actualizar un documento. Incluye los campos que se deseen modificar.

name
string

El nombre del Documento

template_id
string

El ID del template relacionado a este documento

send_email
boolean

Envía un email a todos los firmantes registrados después de sellar con nom 151

autosigning
boolean

Bandera que indica si se firmara con NOM 151 el documento al terminar los usuarios de firmar

callback_url
string

URL en caso de que se quiera hacer llegar el documento al terminar el firmado de NOM 151.

expires_in
integer

Tiempo en minutos que durarán los tokens vinculados a este documento

Responses

Request samples

Content type
application/json
{
  • "name": "Documento ejemplo",
  • "template_id": "51319186-a4a0-4497-a3c9-ebdbdaca0159",
  • "send_email": true,
  • "autosigning": false,
  • "callback_url": "http://example.com",
  • "expires_in": 15
}

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Elimina un documento existente.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del documento a eliminar.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": "Ok"
}

Obtiene una URL temporal para acceder al documento ya generado.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del documento para el cual se solicita la URL.

Responses

Response samples

Genera un token para acceso público temporal a un documento.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del documento al que se asigna el token.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Obtiene una previsualización del documento en formato PDF.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador público del documento para previsualización.

Responses

Adjunta un archivo adicional a un documento existente.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador público del documento al que se adjunta el archivo.

Request Body schema: multipart/form-data

Envia una solicitud multipart/form-data para adjuntar un archivo a un documento.

file
string <binary>

Archivo a asociar con el documento

collection
string

Nombre para agrupar los archivos subidos

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": "File uploaded"
}

Adjunta archivos al documento usando URLs o rutas de S3.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador público del documento al que se adjuntan archivos.

Request Body schema: application/json

Envía una solicitud application/json con un arreglo de URLs o rutas S3 para adjuntar archivos.

urls
Array of strings
paths
Array of strings
collection
string

Nombre para agrupar los archivos subidos

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "success": true,
  • "result": "Files Saved"
}

Obtiene la lista de archivos relacionados con un documento.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador público del documento para la consulta de archivos.

query Parameters
expires_in
required
integer
Example: expires_in=5

Duración en minutos de validez para las URLs temporales generadas.

Responses

Response samples

Content type
application/json
{}

Elimina un archivo asociado a un documento.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador público del documento vinculado al archivo.

query Parameters
collection
required
string
Example: collection=ine

Colección a la que pertenece el archivo a eliminar.

media_uuid
required
string
Example: media_uuid=bd7f4c53-c9ec-47ba-8f42-c1b2da5d03d7

Identificador UUID único del archivo multimedia.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": "Ok"
}

Si el documento ya fue firmado bajo NOM 151, los archivos se reenvían por correo a los firmantes.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador del documento cuyos firmantes recibirán los archivos.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": "Ok"
}

Completa los campos de texto de un documento.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador del documento donde se llenarán los elementos de texto.

Request Body schema: application/json

Solicitud application/json para el llenado masivo de elementos de texto de un documento.

fields
object

Objeto donde las key son los id del elemento del template y el value es el valor del elemento para el documento

Responses

Request samples

Content type
application/json
{
  • "fields": {
    }
}

Response samples

Content type
application/json
{
  • "success": true,
  • "result": [
    ]
}

Agrega firmantes permanentes al documento.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador del documento donde se agregarán firmantes permanentes.

Request Body schema: application/json
Array of objects
Array
id
string

Id del firmante permanente

password
string

Contraseña para proteger el certificado de la firma digital

expires_in
integer

Tiempo en minutos que durarán los tokens vinculados a este firmante

only_digital_signature
boolean

true en caso de que la firma autografa no se ponga en el documento

is_fiel_signature
boolean

true si la forma de firmar para este firmante es con FIEL

elements
Array of strings

Arreglo de elementos que el firmante debe firmar

Responses

Request samples

Content type
application/json
{
  • "signers": [
    ]
}

Response samples

Content type
application/json
{
  • "success": true,
  • "result": [
    ]
}

Quita un firmante de un documento.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador del documento del que se removerá un firmante.

query Parameters
signer_id
required
string
Example: signer_id=51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador del firmante que se desea eliminar del documento.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": "Ok"
}

Duplica un documento existente que fue creado desde un archivo.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador público del documento que se desea duplicar.

Request Body schema: application/json

Solicitud application/json para duplicar un documento existente.

duplicate_signers
boolean

Indica si se deben duplicar los firmantes del documento original

document_name
string

Nombre del nuevo documento duplicado

send_email
boolean

Indica si se debe enviar un email a los firmantes del documento duplicado

expires_in
integer

Tiempo en minutos que durarán los tokens vinculados a los firmantes del documento duplicado

callback_url
string

URL a la que se enviará una notificación cuando el documento sea firmado

autosigning
boolean

Indica si el documento debe ser firmado automáticamente por los firmantes

Responses

Request samples

Content type
application/json
{
  • "duplicate_signers": true,
  • "document_name": "Documento Duplicado",
  • "send_email": true,
  • "expires_in": 15,
  • "callback_url": "https://example.com/callback",
  • "autosigning": false
}

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Elementos de Documento

Apartado para el manejo de los valores que toman los campos a llenar de un template para un documento en específico

Recupera una lista de elementos asociados a documentos.

Authorizations:
apiKeyAuth
query Parameters
document_id
string
Example: document_id=51319186-a4a0-4497-a3c9-ebdbdaca0159

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Crea un nuevo elemento asociado a un documento.

Authorizations:
apiKeyAuth
Request Body schema: multipart/form-data

Envia una solicitud multipart/form-data para crear un elemento de documento.

One of
template_element_id
string

El ID del elemento del template relacionado

document_id
string

El ID del documento relacionado

value
string <binary>

La imagen a insertar en el documento

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Obtiene la información detallada de un elemento de documento.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del elemento de documento.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Actualiza un elemento asociado a un documento.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del elemento de documento a modificar.

Request Body schema: application/json

Realiza una solicitud application/json para actualizar un elemento de documento.

One of
template_element_id
string

El ID del elemento del template relacionado

document_id
string

El ID del documento relacionado

value
string <binary>

La imagen a insertar en el documento

Responses

Request samples

Content type
application/json
{
  • "template_element_id": "51319186-a4a0-4497-a3c9-ebdbdaca0159",
  • "document_id": "51319186-a4a0-4497-a3c9-ebdbdaca0159",
  • "value": "Texto ejemplo"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Elimina un elemento de documento.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del elemento de documento a borrar.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": "Ok"
}

Eventos de Documento

En este apartado se pueden modificar los elementos del historial de eventos que aparecen en la hoja extra de los documentos certificados con NOM 151, estos pueden incluir texto acompañado de imágenes para una mejor interpretación.

Consulta los eventos o historial de un documento.

Authorizations:
apiKeyAuth
query Parameters
document_id
string
Example: document_id=51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador del documento cuyos eventos serán consultados.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Registra un nuevo evento en el historial de un documento.

Authorizations:
apiKeyAuth
Request Body schema: multipart/form-data

Envía una solicitud multipart/form-data para crear eventos, incluyendo imágenes opcionalmente.

document_id
string
description
string
images
Array of strings <binary> <= 3 items
event_timestamp
string

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Recupera los detalles del evento indicado.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del evento a consultar.

Responses

Response samples

Content type
application/json
{
  • "id": "51319186-a4a0-4497-a3c9-ebdbdaca0159",
  • "document_id": "51319186-a4a0-4497-a3c9-ebdbdaca0159",
  • "description": "Validación ine",
  • "event_timestamp": "2021-03-10T19:57:06Z",
  • "created_at": "2021-03-10T19:57:06Z",
  • "updated_at": "2021-03-10T19:57:06Z"
}

Actualiza los datos de un evento existente.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del evento a modificar.

Request Body schema: application/json

Solicitud application/json para actualizar los datos del evento.

document_id
string
description
string
event_timestamp
string

Responses

Request samples

Content type
application/json
{
  • "document_id": "51319186-a4a0-4497-a3c9-ebdbdaca0159",
  • "description": "Validación ine",
  • "event_timestamp": "2021-03-10T19:57:06Z"
}

Response samples

Content type
application/json
{
  • "id": "51319186-a4a0-4497-a3c9-ebdbdaca0159",
  • "document_id": "51319186-a4a0-4497-a3c9-ebdbdaca0159",
  • "description": "Validación ine",
  • "event_timestamp": "2021-03-10T19:57:06Z",
  • "created_at": "2021-03-10T19:57:06Z",
  • "updated_at": "2021-03-10T19:57:06Z"
}

Elimina un evento del historial de un documento.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del evento a eliminar.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": "Ok"
}

Creación de Documentos

En este apartado se se crean documentos a partir de PDFs ya generados, solo para que se añadan las firmas de los firmantes.

Crea un documento a partir de un archivo proporcionado.

Authorizations:
apiKeyAuth
Request Body schema: multipart/form-data

Solicita la creación de un documento mediante multipart/form-data adjuntando el archivo base.

document_name
string
file
string <binary>
send_email
boolean
autosigning
boolean

Bandera que indica si se firmara con NOM 151 el documento al terminar los usuarios de firmar

callback_url
string

URL en caso de que se quiera hacer llegar el documento al terminar el firmado de NOM 151.

expires_in
integer

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Agrega campos de firma a un documento generado a partir de un archivo.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador público del documento donde se agregan los campos de firma.

Request Body schema: application/json

Solicitud application/json con los datos de los firmantes a agregar al documento generado desde PDF.

Array of objects
Array
name
string
email
string
country
string
state
string
locality
string
organization
string
is_fiel_signature
boolean

Indica si el firmante firmara con fiel

password
string <= 10 characters
include_name_in_signature
boolean

true en caso de que el nombre del firmante se incluya en la firma

expires_in
integer

Tiempo en minutos que durarán los tokens vinculados a este signer

external_person_id
string
Array of objects

Responses

Request samples

Content type
application/json
{
  • "signers": [
    ]
}

Response samples

Content type
application/json
{
  • "success": true,
  • "result": [
    ]
}

Proceso de firmado

Endpoints para el manejo de elementos relacionados con la firma digital

Verifica si un documento ha sido firmado previamente.

Authorizations:
apiKeyAuth
Request Body schema: multipart/form-data

Envia una solicitud multipart/form-data incluyendo el documento que se desea validar.

file
string <binary>

Archivo PDF a verificar

file_tmp_id
string <uuid>

Uuid del archivo si se subio con el api de archivos temporales

sha256
string <sha256>

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Firma un documento conforme a los requisitos de la NOM 151.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del documento a firmar.

Responses

Response samples

Content type
application/json
{}

Genera y almacena en la nube un documento completamente llenado.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del documento a generar.

Responses

Response samples

Agrega la firma digital del firmante seleccionado al documento.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del firmante cuya firma se agregará.

Request Body schema: multipart/form-data

Envía una solicitud application/json para realizar la firma digital.

value
string <binary>

La imagen a insertar en el documento, formatos aceptados png,jpg,jpeg,svg

password
string

Clave para del certificado del usuario

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Firma el documento usando la FIEL del firmante.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del firmante que firmará con FIEL.

Request Body schema: multipart/form-data
password
string

Contraseña de la FIEL

cer
string <binary>

Archivo .cer de la FIEL

key
string <binary>

Archivo .key de la FIEL

message
string <html>

Mensaje custom que aparecera junto a los detalles de la firma

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Firmantes

En este apartado se manejan los firmantes para cada documento así como la creación de token para el uso de los accesos públicos

Recupera una lista completa de firmantes registrados.

Authorizations:
apiKeyAuth
query Parameters
document_id
string
Example: document_id=51319186-a4a0-4497-a3c9-ebdbdaca0159
is_permanent
string
Enum: "true" "false"

Permite filtrar firmantes según su tipo: permanente o temporal.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Registra un nuevo firmante en un documento.

Authorizations:
apiKeyAuth
Request Body schema: application/json

Envía una solicitud application/json para crear un firmante para un documento.

document_id
string

Identificador del documento relacionado al firmante if null se creara un firmante permanente

name
string
email
string
password
string

Contraseña para proteger el certificado de la firma digital

expires_in
integer

Tiempo en minutos que durarán los tokens vinculados a este firmante

country
string = 2 characters
state
string
locality
string
organization
string
person_id
string <uuid>

Id de una persona registrada en la plataforma people vinculada al mismo cliente, en caso de estar presente se tomaran los datos de nombre y email de la misma, en caso de estar dispinibles.

external_person_id
string
only_digital_signature
boolean

true en caso de que la firma autografa no se ponga en el documento

include_name_in_signature
boolean

true en caso de que el nombre del firmante se incluya en la firma

is_fiel_signature
boolean

true si la forma de firmar para este firmante es con FIEL

elements
Array of strings

Arreglo de elementos que el firmante debe firmar

Responses

Request samples

Content type
application/json
{
  • "document_id": "51319186-a4a0-4497-a3c9-ebdbdaca0159",
  • "name": "Test Signer",
  • "email": "test@example.com",
  • "password": "12345",
  • "expires_in": 15,
  • "country": "MX",
  • "state": "México City",
  • "locality": "Iztapalapa",
  • "organization": "rem-tools",
  • "person_id": "51234686-a4a0-4497-a3c9-ebdbdaca0159",
  • "external_person_id": "1a3sd51fsd32g1sdg5",
  • "only_digital_signature": false,
  • "include_name_in_signature": false,
  • "is_fiel_signature": false,
  • "elements": [
    ]
}

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Obtiene todos los firmantes asociados a un identificador externo.

Authorizations:
apiKeyAuth
query Parameters
external_id
required
string
Example: external_id=lsdgbsjdfnpqwe

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": [
    ]
}

Recupera una lista de firmantes por id externo.

Authorizations:
apiKeyAuth
query Parameters
external_id
required
string
Example: external_id=lsdgbsjdfnpqwe

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": [
    ]
}

Obtiene los datos detallados de un firmante.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del firmante a consultar.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": [
    ]
}

Modifica los datos asociados a un firmante.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del firmante a modificar.

Request Body schema: application/json
name
string

Nombre del firmante

email
string
expires_in
integer

Tiempo en minutos que durarán los tokens vinculados a este firmante

Responses

Request samples

Content type
application/json
{
  • "name": "Test Signer",
  • "email": "test@example.com",
  • "expires_in": 15
}

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Elimina a un firmante específico.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del firmante a eliminar.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": "Ok"
}

Recupera los documentos relacionados a un firmante permanente.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del firmante permanente.

Responses

Response samples

Content type
application/json
{}

Genera un token de acceso público para el firmante.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del firmante para generación de token.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Agrega la firma digital del firmante seleccionado al documento.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del firmante cuya firma se agregará.

Request Body schema: multipart/form-data

Envía una solicitud application/json para realizar la firma digital.

value
string <binary>

La imagen a insertar en el documento, formatos aceptados png,jpg,jpeg,svg

password
string

Clave para del certificado del usuario

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Firma el documento usando la FIEL del firmante.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del firmante que firmará con FIEL.

Request Body schema: multipart/form-data
password
string

Contraseña de la FIEL

cer
string <binary>

Archivo .cer de la FIEL

key
string <binary>

Archivo .key de la FIEL

message
string <html>

Mensaje custom que aparecera junto a los detalles de la firma

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

NOM 151

En este apartado se sellan documentos solo con los certificados y no se almacena ningún archivo de los documentos sellados, solo se guardan los datos referentes a los certificados y los hash de los documentos

Consulta documentos almacenados externamente.

Authorizations:
apiKeyAuth

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Genera un documento firmado bajo NOM 151 y emite certificados digitales para cada firmante.

Authorizations:
apiKeyAuth
Request Body schema: multipart/form-data

Envía una solicitud multipart/form-data para sellar un archivo conforme NOM 151.

file
string <binary>

Archivo que se desea firmar

file_tmp_id
string <uuid>

Uuid del archivo si se subio con el api de archivos temporales

Array of objects

Firmantes de este documento

Responses

Response samples

Content type
application/json
{
  • "success": false,
  • "error": {
    }
}

Genera una constancia digital NOM 151 para el hash sha256 indicado.

Authorizations:
apiKeyAuth
Request Body schema: application/json
sha256
string <sha256> = 64 characters
filename
string <= 255 characters

Responses

Request samples

Content type
application/json
{
  • "sha256": "stringstringstringstringstringstringstringstringstringstringstri",
  • "filename": "string"
}

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Obtiene un documento vinculado al hash sha256 proporcionado.

Authorizations:
apiKeyAuth
path Parameters
sha256
required
string
Example: 65f45505a560f8aefbfc0ac31ffcddab1183b144b607df41c7b3c3424c05d4e9

Hash sha256 correspondiente al archivo PDF.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Elimina un documento externo asociado al hash sha256.

Authorizations:
apiKeyAuth
path Parameters
sha256
required
string
Example: 65f45505a560f8aefbfc0ac31ffcddab1183b144b607df41c7b3c3424c05d4e9

Hash sha256 del archivo PDF de referencia.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": "Ok"
}

Verifica si el documento enviado corresponde a uno registrado en la base de datos.

Authorizations:
apiKeyAuth
Request Body schema: multipart/form-data

Solicita una carga multipart/form-data con el documento que se va a validar.

file
string <binary>

Archivo que se desea validar

file_tmp_id
string <uuid>

Uuid del archivo si se subio con el api de archivos temporales

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Verifica la constancia digital basada en el hash sha256 del documento.

Authorizations:
apiKeyAuth
Request Body schema: multipart/form-data

Envía una solicitud POST en formato application/json.

sha256
string <sha256>

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Batch

En este apartado se pueden firmar documentos con FIEL de manera masiva

Obtiene una lista de procesos de firma por lote.

Authorizations:
apiKeyAuth

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": [
    ]
}

Crea un proceso por lotes para firmar varios documentos con FIEL.

Authorizations:
apiKeyAuth
Request Body schema: application/json

Solicitud application/json para crear un proceso de firma por lotes.

name
string

Nombre del proceso por lotes

signer_id
string

ID del firmante que ejecutará el proceso

document_ids
Array of strings

Lista de IDs de documentos a procesar

Responses

Request samples

Content type
application/json
{
  • "name": "Proceso de firma masiva",
  • "signer_id": "51319186-a4a0-4497-a3c9-ebdbdaca0159",
  • "document_ids": [
    ]
}

Response samples

Content type
application/json
{
  • "id": "51319186-a4a0-4497-a3c9-ebdbdaca0159",
  • "name": "Proceso de prueba",
  • "status": "pending",
  • "signer_id": "51319186-a4a0-4497-a3c9-ebdbdaca0159",
  • "created_at": "2021-07-29T18:29:03Z",
  • "updated_at": "2021-07-29T18:29:05Z",
  • "documents": [
    ]
}

Obtiene los detalles de un proceso por lotes específico.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del proceso por lotes a consultar.

Responses

Response samples

Content type
application/json
{
  • "id": "51319186-a4a0-4497-a3c9-ebdbdaca0159",
  • "name": "Proceso de prueba",
  • "status": "pending",
  • "signer_id": "51319186-a4a0-4497-a3c9-ebdbdaca0159",
  • "created_at": "2021-07-29T18:29:03Z",
  • "updated_at": "2021-07-29T18:29:05Z",
  • "documents": [
    ]
}

Actualiza un proceso de firma por lotes existente.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del proceso por lotes a actualizar.

Request Body schema: application/json

Envía una solicitud application/json para actualizar el proceso por lotes.

name
string

Nombre del proceso por lotes

signer_id
string

ID del firmante que ejecutará el proceso

document_ids
Array of strings

Lista de IDs de documentos a procesar

Responses

Request samples

Content type
application/json
{
  • "name": "Proceso de firma masiva actualizado",
  • "signer_id": "51319186-a4a0-4497-a3c9-ebdbdaca0159",
  • "document_ids": [
    ]
}

Response samples

Content type
application/json
{
  • "id": "51319186-a4a0-4497-a3c9-ebdbdaca0159",
  • "name": "Proceso de prueba",
  • "status": "pending",
  • "signer_id": "51319186-a4a0-4497-a3c9-ebdbdaca0159",
  • "created_at": "2021-07-29T18:29:03Z",
  • "updated_at": "2021-07-29T18:29:05Z"
}

Elimina un proceso por lotes del sistema.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del proceso por lotes a eliminar.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": "Ok"
}

Ejecuta la firma de documentos en un proceso por lotes usando FIEL.

Authorizations:
apiKeyAuth
path Parameters
id
required
string
Example: 51319186-a4a0-4497-a3c9-ebdbdaca0159

Identificador único del proceso por lotes a iniciar.

Request Body schema: multipart/form-data

Envía una solicitud multipart/form-data para iniciar el proceso por lotes. Cada llamada procesa hasta 5 documentos.

password
string

Contraseña de la FIEL del firmante

cer
string <binary>

Archivo .cer de la FIEL del firmante

key
string <binary>

Archivo .key de la FIEL del firmante

message
string <html>

Mensaje custom que aparecera junto a los detalles de la firma

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Público

Endpoints que no requieren autorización del ApiKey de Rem-Tools

Añade la firma de un firmante al documento.

Authorizations:
bearerAuthPublicSigner
Request Body schema: multipart/form-data

Envia una solicitud multipart/form-data para subir la firma digital.

value
string <binary>

La imagen a insertar en el documento, formatos aceptados png,jpg,jpeg,svg

finish
boolean

Caduca el token público, 0 o 1

password
string

Clave para del certificado del usuario

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": "Ok"
}

Firmar públicamente un documento con la FIEL de un firmante.

Authorizations:
bearerAuthPublicSigner
Request Body schema: multipart/form-data

Solicita una carga multipart/form-data para crear la firma FIEL.

password
string

Contraseña de la FIEL del firmante

cer
string <binary>

Archivo .cer que es parte de la FIEL

key
string <binary>

Archivo .key que es parte de la FIEL

message
string

Mensaje que acompaña la fecha en que se firmo el documento en el historial de eventos, no requerido

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": "Ok"
}

Genera una previsualización del PDF.

Authorizations:
bearerAuthPublicSigner

Responses

Response samples

Content type
application/json
{
  • "success": false,
  • "error": "Missing authorization token"
}

Elimina el token de acceso público para prohibir más cambios.

Authorizations:
bearerAuthPublicSigner

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": "Ok"
}

Obtiene la información del documento para el firmante autenticado.

Authorizations:
bearerAuthPublicSigner

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Adjunta varios archivos a un documento.

Authorizations:
bearerAuthPublicDoc
Request Body schema: application/json

Solicitud application/json con un arreglo de URLs para adjuntar archivos.

urls
Array of strings
paths
Array of strings
collection
string

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "success": true,
  • "result": "Files saved"
}

Crea un firmante con un token de acceso público para este documento.

Authorizations:
bearerAuthPublicDoc
Request Body schema: application/json

Solicitud application/json para registrar un nuevo firmante.

name
string
email
string
password
string

Contraseña para proteger el certificado de la firma digital

country
string = 2 characters
state
string
locality
string
organization
string
external_person_id
string
expires_in
integer

Tiempo de expiración en minutos de los token vinculados, si es 0 no expiran

metadata
object
elements
Array of strings

Responses

Request samples

Content type
application/json
{
  • "name": "Test Signer",
  • "email": "test@example.com",
  • "password": "12345",
  • "country": "MX",
  • "state": "México City",
  • "locality": "Iztapalapa",
  • "organization": "rem-tools",
  • "external_person_id": "1a3sd51fsd32g1sdg5",
  • "expires_in": 15,
  • "metadata": null,
  • "elements": [
    ]
}

Response samples

Content type
application/json
{
  • "success": true,
  • "result": {
    }
}

Crea una previsualización del PDF del documento.

Authorizations:
bearerAuthPublicDoc

Responses

Response samples

Content type
application/json
{
  • "success": false,
  • "error": "Missing authorization token"
}

Webhooks

Webhooks que se envían al configurar el campo callback_url en los documentos

Documento terminado Webhook

Webhook que se envia cuando se ha configurado el autosigning y callback_url en la creación del documento

Request Body schema: application/json

Una petición application/json con la información del documento firmado

resource
string

Tipo de recurso

event
string

Tipo de evento

resource_id
string

Identificador del recurso

Document (object) or Document (object) (Document)

Información del evento

Responses

Request samples

Content type
application/json
{}

Firmante ha firmado Webhook

Webhook que se envia cuando se ha configurado el callback_url y un firmante ha firmado de manera pública con el parámetro finish igual a 1

Request Body schema: application/json

Una petición application/json con la información del firmante

resource
string

Tipo de recurso

event
string

Tipo de evento

resource_id
string

Identificador del recurso

Temporary Signer (object) or Permanent Signer (object)

Información del evento

Responses

Request samples

Content type
application/json
{
  • "resource": "Signer",
  • "event": "Sign",
  • "resource_id": "51319186-a4a0-4497-a3c9-ebdbdaca0159",
  • "payload": {
    }
}
rem

JOIN US ON

facebooktwitterLinkedIn
CONTACThello@rem.tools55-91-03-80-54
© Copyright rem 2022 All rights reserved.