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 |
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