API RC Sign

Reachcore ha creado una interfaz (API) para permitir la comunicación entre dos sistemas o plataformas diferentes para su nuevo servicio de firmado, mediante el cual se podrá:

  • Solicitar firma de un documento
  • Dar seguimiento al estatus de un documento
  • Descarga del documento original, documento firmado y el archivo de la constancia NOM 151

Contenido

  • ¿Qué necesito?
  • Autenticación
  • Solicitud de firma
  • Seguimiento solicitud de firma
  • Descarga de documentos

¿Qué necesito?

Generar un API Key desde el portal web de RC Sign , guardar los datos del App ID y API Secret ya que se usan para autenticar la solicitud en el API REST. El API Key debe corresponder al ambiente en el que se realiza la solicitud.

El usuario deberá tener permisos necesarios para poder generar el API Key desde el portal de RC Sign

Dirección del servicio

Ambiente URL
Piloto https://pruebas-api.rcsign.reachcore.com/[Método]
Producción https://api.rcsign.reachcore.com/[Método]


Todas las solicitudes se deberán hacer por el canal de comunicación seguro (https). Las conexiones realizadas por http serán rechazadas

Autenticación

Método [Authentication]

Para realizar cualquier petición por API es necesario usar un token de autenticación el cuál tiene una vigencia de 90 min.

Encabezado HTTP, método POST

Parámetro Valor Uso Descripción
appId string Requerido Valor generado al crear un API Key en el portal web de RC Sign.
secret string Requerido Valor generado al crear un API Key en el portal web de RC Sign.
appId application/json Requerido El API Rest solo procesa estructuras JSON, por la cual se debe declarar.


Ejemplo de petición:


{
 "appId": "0a000ce0-0cda-0c00-a000-0c0b000cb00d",
 "secret": "TYzO#VPa!B3u.HVK6NmLwBH!"
}


Ejemplo de respuesta exitosa


{
"username": "0a010aa0-0ada-0a00-a000-4c3b958cb82d",
"accessToken": "eyJraWQiOiJwcWJRaExcL25KNmtUdz0iLCJhbGciOiJSUzI1NiJ9…. ",
"tokenType": "Bearer",
"expires": 5400
}

Solicitud de firma

Método [SignatureRequest]

En este método se podrá realizar la petición de firmado de un documento (PDF).

Encabezado HTTP, método POST

Authorization Valor Uso Descripción
Bearer Token accessToken Requerido Se requiere el valor del accessToken. Token generado en la etapa de autenticación.


Ejemplo de petición:


{
"fileName": "Contrato Api.pdf",
"documentContent": "  JVBERi0xLjQNJeLjz9MNCjE0IDAgb2JqDTw8L …",
"creatorFriendlyName": "Juan Rodríguez",
"enableOrder": false,
"signers": [
	{
	 "fullName": "Hilda Paredes M.",
	 "email": "hilda.paredes@mail.com"
	}
],
"instructions": "Contrato de usuario, firmar lo antes posible"
}


Elementos de la petición

Elemento Uso Descripción Tipo de dato
fileName Requerido Nombre del documento a firmar string
maxLength: 350
minLength: 5
documentContent Requerido PDF codificado en Base64 Base64
creatorFriendlyName Requerido Nombre del solicitante string
maxLength: 350
minLength: 3
enableOrder Requerido Establecer orden de firmado Boolean
(True, False)
fullName Requerido Nombre del firmante string
maxLength: 350
minLength: 3
email Requerido Correo del firmante string
maxLength: 350
minLength: 3
instructions Opcional Mensaje para los firmantes. Se incluirá en la notificación de correo electrónico string
maxLength: 450


Ejemplo de respuesta exitosa:


{
"id": "a000c00c-0ec0-0ecd-0d0b-00d000e0da0e"
}

Seguimiento solicitud de firma

Método [SignatureRequest/id/status]

En este método se podrá realizar el seguimiento de la petición de firmado obteniendo información sobre las firmas que se ya se realizarón y las que aun estan pendientes.

Encabezado HTTP, método GET

Authorization Valor Uso Descripción
Bearer Token accessToken Requerido Se requiere el valor del accessToken. Token generado en la etapa de autenticación.


Parámetro Valor Uso Descripción
id id Requerido Se obtiene como resultado de la solicitud de firmado



Ejemplo de respuesta pendiente de firmas:


{
"isCompleted": **false**,
"documentId": **null**,
"pendingInfo": {
		"signers": [
			{
			"fullName": " Hilda Paredes M.",
			"email": " hilda.paredes@mail.com",
			"signatureDate": **null**,
			"isCompleted": **false**
			}
		],
	"checkDate": "2021-07-14T04:14:11.198355Z"
	}
}


Ejemplo de respuesta flujo completo de firmas:


{
"isCompleted": **true**,
"documentId": "0000a0cf-00c0-0000-0000-000005b2e000",
"pendingInfo": **null**
}

Descarga de documentos

Método [Document/documentId/content]

Método para obtener el documento original en base 64

Encabezado HTTP, método GET

Authorization Valor Uso Descripción
Bearer Token accessToken Requerido Se requiere el valor del accessToken. Token generado en la etapa de autenticación.


Parámetro Valor Uso Descripción
documentId id Requerido Id del documento a consultar, se obtiene en la consulta de seguimiento una vez que todos los firmantes han firmado el documento



Ejemplo de respuesta:


{
"fileName": "Prueba Api.pdf",
"content": "JVBERi0xLjQNJeLjz9MNCjE0IDAgb2JqDTw8L0xpbmVhcml6ZWQgMS9MIDE2Njc0MzMvTyAxNi9FIDE2NDg5NDQvTiA2L1QgMTY2NzEwNi9IIFsgMjAxNiA2NzhdPj4NZW5kb2JqDSAgICAgICAgICAgDQp4cmVmDQoxNCA4Ng0KMDAwMDAwMDAxNiAwMDAwMCBuDQow… "
}

Método [Document/documentId/signed]

Método para obtener el documento firmado en base 64

Encabezado HTTP, método GET

Authorization Valor Uso Descripción
Bearer Token accessToken Requerido Se requiere el valor del accessToken. Token generado en la etapa de autenticación.


Parámetro Valor Uso Descripción
documentId id Requerido Id del documento a consultar, se obtiene en la consulta de seguimiento una vez que todos los firmantes han firmado el documento



Ejemplo de respuesta:


{
"fileName": "Prueba Api.pdf",
"content": "JVBERi0xLjQNJeLjz9MNCjE0IDAgb2JqDTw8L0xpbmVhcml6ZWQgMS9MIDE2Njc0MzMvTyAxNi9FIDE2NDg5NDQvTiA2L1QgMTY2NzEwNi9IIFsgMjAxNiA2NzhdPj4NZW5kb2JqDSAgICAgICAgICAgDQp4cmVmDQoxNCA4Ng0KMDAwMDAwMDAxNiAwMDAwMCBuDQow…”
}

Método [Document/documentId/nom151]

Método para obtener el archivo ASN1 de la constancia Nom151 en base 64

Encabezado HTTP, método GET

Authorization Valor Uso Descripción
Bearer Token accessToken Requerido Se requiere el valor del accessToken. Token generado en la etapa de autenticación.


Parámetro Valor Uso Descripción
documentId id Requerido Id del documento a consultar, se obtiene en la consulta de seguimiento una vez que todos los firmantes han firmado el documento



Ejemplo de respuesta:


{
"fileName": "Prueba Api.asn1",
"content": "MIIUWjAVAgEAMBAMDk9wZXJhdGlvbiBPa2F5MIIUPwYJKoZIhvcNAQcCoIIUMDCCFCwCAQMxDzANBglghkgBZQMEAgEFADCCAewGCyqGSIb3DQEJEAEEoIIB2wSCAdcwg… "
}


Regresar