Saltar al contenido principal

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

POSTDocumentoBackend

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)

NombreTipoDescripcion
tipostringDebe validar contra el listado de tipos de documentos posible
ArchivostringContiene datos del documento en si. Contenido en base 64 y solo soporta PDF
OrigenstringEs 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:

NombreTipoDescripcion
tipostringobligatorio Indica el tipo funcional del documento que se esta enviando: Por ejemplo "ACTA"
titulostringNombre o titulo del documento que se esta creando
descripcionstringDescripción adicional del documento que se esta creando
archivojsonobligatorio objeto json que contiene un string del documento en base 64 y el md5 del mismo
origenjsonobligatorio Corresponde al usuario de creacionismos, el dato mas importante corresponde al id_usuario_sso
referencia_internajsonEste campo se utiliza para almacenar en formato json, los datos que requiera la aplicación que genera el documento
identificadorjsonCorresponde a un identificador del documento. Por ejemplo tipo, numero y año
AtributosjsonAtributos adicionales del documento
forzar_autorizacionboolPermite 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"
}
NombreTipoDescripcion
uristringEl link devuelto en este campo puede ser inmediatamente consultado por la aplicación para ver los metadatos almacenados del documento
uid_documentostringEs 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)

NombreTipoDescripcion
uid_documentostringIdentificador 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)

NombreTipoDescripcion
uid_documentostringIdentificador del documento en Araí-Documentos

Se consulta con el identificador del documento generado al momento de crear el documento.