Repositorio de documentos
Arai-Documentos como Repositorio de Documentos Digitales
Resumen
La funcionalidad mas simple para utilizar Arai-Documentos es emplearlo como repositorio de documentos digitales. Como ya se menciono previamente los requisitos obligatorios son necesarios para poder utilizar Araí-Documentos como repositorio de documentos digitales.
Bajo esta funcionalidad únicamente se invocara un servicio de creación de documentos (POST) donde se subirá el documento y se obtendrá un identificador para luego poder consultar el mismo.
Requisitos
Araí-Usuarios: debe enviarse el usuario que sube el Documento
Nuxeo
Configuraciones dentro de Arai-Documentos de credenciales requeridas para Arai-Usuarios y Nuxeo
Conocer los Tipos de Documentos disponibles
Metadatos requeridos
Limitaciones
Las funcionalidades que provee Arai-Documentos no contemplan el mantenimiento del CMS, solo se tomaron decisiones orientadas a crear documentos y versionarlos en los casos de Firma Digital, pero no existen funcionalidades relacionadas a eliminar un documento, o procesos que eliminen los documentos que ya no se utilicen.
Adicionalmente, es requerido por el momento que la aplicacion de origen registre el identificador creado para el documento ya que no existen mecanismos de búsqueda.
Solo se permite almacenar documentos PDF.
Implementación
Basicamente Araí-Documentos provee un endopoint POST /backend/documentos
sobre el cual se ejecuta la acción un Post para enviar un documento. En esto punto Araí-Documentos realiza algunas validaciones sobre el contendido del documento y sobre los metadatos enviados.
POST /backend/documentos
REQUEST
Campos obligatorios (Body Json)
Nombre | Tipo | Descripcion |
---|---|---|
tipo | string | Debe validar contra el listado de tipos de documentos posible |
Archivo | string | Contiene datos del documento en si. Contenido en base 64 y solo soporta PDF |
Origen | string | Es el usuario que genera el documento, el campo id_usuario_sso debe matchear con el identificador en el Sistema de Usuarios (Arai-Usuarios). cuenta_usuario aun no tiene uso |
{
"tipo": "string",
"titulo": "string",
"descripcion": "string",
"archivo":
{
"contenido_base64": "string",
"md5": "string"
},
"origen":
{
"id_usuario_sso": "string",
"id_instalacion": "string",
"cuenta_usuario": "string"
},
"referencia_interna": {},
"identificador": {},
"atributos": {},
"forzar_autorizacion":"bool",
}
Detalle sobre campos y usos:
Nombre | Tipo | Descripcion |
---|---|---|
tipo | string | obligatorio Indica el tipo funcional del documento que se esta enviando: Por ejemplo "ACTA" |
titulo | string | Nombre o titulo del documento que se esta creando |
descripcion | string | Descripción adicional del documento que se esta creando |
archivo | json | obligatorio objeto json que contiene un string del documento en base 64 y el md5 del mismo |
origen | json | obligatorio Corresponde al usuario de creacionismos, el dato mas importante corresponde al id_usuario_sso |
referencia_interna | json | Este campo se utiliza para almacenar en formato json, los datos que requiera la aplicación que genera el documento |
identificador | json | Corresponde a un identificador del documento. Por ejemplo tipo, numero y año |
Atributos | json | Atributos adicionales del documento |
forzar_autorizacion | bool | Permite dar de alta un documento en estado autorizado, sin la necesidad de pasar por un proceso de autorizacion, por defecto en false. |
RESPONSE
En caso de que todo este correcto, Arai-Documentos devolvera una respuesta HTTP y con un json similar al siguiente:
{
"uri": "string",
"uid_documento": "string"
}
Nombre | Tipo | Descripcion |
---|---|---|
uri | string | El link devuelto en este campo puede ser inmediatamente consultado por la aplicación para ver los metadatos almacenados del documento |
uid_documento | string | Es el identificado del documento mediante el cual se consultará y descargara el documento mediante otros requests a la API de documentos. |
Ademas se proveen otros servicios para consultar y descargar el documento
GET /backend/documentos/{uid_documento}
REQUEST
Campos obligatorios (URL Param)
Nombre | Tipo | Descripcion |
---|---|---|
uid_documento | string | Identificador del documento en Araí-Documentos |
Se consulta con el identificador del documento generado al momento de crear el documento.
RESPONSE
{
"uid_documento": "string",
"tipo_documento": "string",
"titulo": "string",
"descripcion": "string",
"referencia_interna": {},
"autorizado": false,
"origen":
{
"id_usuario_sso": "string",
"id_instalacion": "string",
"cuenta_usuario": "string"
},
}
Los datos de respuesta hacen referencia a los mismos datos con los cuales se creo el documento. El campo autorizado, corresponde al estado de autorización del documento y se utilizara mas adelante.
GET /backend/documentos/{uid_documento}/archivo
Devuelve el binario del documento correspondiente al identificador enviado
Campos obligatorios (URL Param)
Nombre | Tipo | Descripcion |
---|---|---|
uid_documento | string | Identificador del documento en Araí-Documentos |
Se consulta con el identificador del documento generado al momento de crear el documento.
//TODO: Para detalle mas especifico ingresar en: API Reference