# **GLOSARIO**
Antes de empezar, se definirán algunos conceptos, según el uso que en esta aplicación se le dan, para mejor compresión.
- **Cliente:** Es usted (en caso de que haya contratado nuestros servicios, obvio). En nuestra aplicación se considera cliente a la persona física o jurídica que ha contratado nuestros servicios y que tiene el total potestad y responsabilidad sobre todo lo que se puede hacer con nuestras aplicaciones. Esta definición es necesaria para no confundirla con la definición de usuarios que veremos a continuación. Lo importante es entender que un cliente tiene dentro de si usuarios independientes, evitando así el igualar ambos términos.
- **Usuario:** Se trata de la unidad con capacidad para certificar una evidencia en la V1. Tiene asociada una identidad digital que será introducida en la certificación. Esta entidad tiene tanto sección propia en el dashboard como funciones propias en la API.
- **Evidencia:** Conjunto de archivos (y texto en la V1) a certificar por el conjunto de firmas definido.
- **Certificación o Evidencia certificada:** Registro inalterable en blockchain del contenido aportado.
- **Token de acceso:** Código que permite identificarse de forma univoca para realizar las acciones en la API.
- **Webhook:** Comunicación de eventos vía HTTP
# **MAPA WEB**
## **ANTES DE ACCEDER**
### **LOGIN**

Página de acceso a nuestra aplicación.
Es necesario estar dado de alta en nuestro sistema para poder acceder.
Debe introducir el email con el que se realizó el registro y la contraseña de acceso (en caso de haber olvidado o extraviado la contraseña, siga los pasos descritos en el apartado [¿OLVIDASTE LA CONTRASEÑA?](#contraseña).
Tras introducir los datos y pulsar el botón de "iniciar sesión", el sistema comprobará sus credenciales y le dará acceso a nuestras funcionalidades.
### **¿OLVIDASTE LA CONTRASEÑA?**<span id="contraseña"><span>

Si por algún motivo hubiese olvidado o extraviado su contraseña de acceso, nuestro sistema le permite, con total seguridad, crear una nueva para poder acceder de nuevo.
Para ello, debe seguir los siguientes pasos:
- En la página de login, más o menos el centro del panel principal, encontrara un link a "¿Olvidaste tu contraseña?".
- Al pulsar dicho link se abrirá un nuevo panel en el que deberá introducir el mismo email con el que realizo el registro y pulsar enviar.
- En su correo electrónico recibirá un mensaje con las instrucciones para resetear su contraseña.
- Pulse en el botón "Reset" del mensaje y será redirigido al panel de creación de la nueva contraseña.
- Introduzca el nuevo password, confírmelo y pulse el botón "enviar".
- Se le confirmará la actualización de la nueva contraseña y ya podrá iniciar sesión con ella sin problema.
Si tuviese cualquier problema en el proceso o ya no tuviese acceso al email con el que realizo el registro, póngase en contacto con nuestro <a href="mailto:development@icommunity.io">servicio técnico</a> quienes, tras verificar su identidad y propiedad de la cuenta, le ayudara a resolver cualquier problema de acceso.
## **TRAS EL ACCESO**<span id="V1"><span>
### **BARRA SUPERIOR**
#### **SELECTOR DE IDIOMA**
Este desplegable le permitirá cambiar el idioma de nuestro contenido entre español e inglés.
#### **CLIENTE**
##### **MI PERFIL**

Este apartado contiene los datos de cliente junto con sus datos de facturación.
Todos los datos son modificables por el cliente si fuese necesario.
En el apartado de datos de cliente, podrá encontrar un link que le abrirá el panel de modificación de la contraseña. Para ello deberá introducir la contraseña actual, para demostrar que es usted quien la cambia y no cualquiera que haya podido tener acceso a su sesión abierta, y crear y confirmar la nueva contraseña que desee.
##### **CONTACTO**

En esta sección podrá encontrar todas nuestras formas de contacto y redes sociales.
Nuestros contenidos en estas últimas son muy interesantes, le animamos a comprobarlo.
##### **CERRAR SESIÓN**
Si selecciona esta acción, se cerrará la sesión actual con el cliente que se haya iniciado.
### **PANTALLA COMPLETA**
Este botón de acción le permitirá visualizar nuestro contenido a pantalla completa, para salir de pantalla completa vuelva a pulsarlo.
### **MENU LATERAL**
#### **SECCIÓN DEL CLIENTE**
##### **RESUMEN**

Panel de bienvenida a nuestro dashboard. En él se puede acceder de manera resumida a la información más relevante para el cliente de nuestra plataforma I.B.S.
En primer lugar, se podrá encontrar cuatro accesos directos a las funciones mas usadas normalmente por nuestros clientes.
- **Usuarios:** acceso al listado completo de usuarios creados por el cliente.
- **Registrar usuario:** acceso al panel para realizar alta de un nuevo usuario.
- **Tokens de acceso:** acceso al panel de gestión y generación de tokens de acceso de cliente para el uso de la API.
- **Documentación técnica:** Le redirigirá al apartado de documentación técnica de uso de la API.
En segundo lugar, aparece el listado de últimos usuarios creados por el cliente. Para ver el listado completo deberá acceder a él desde el menú lateral o el acceso directo antes comentado. En este listado podrá ver la información, como máximo, de los últimos 5 usuarios creados. Para mas detalles acerca del contenido del listado, véase [LISTADO DE USUARIOS](#ListadoUsuarios)
En último lugar se puede ver un listado de ultimas 5 evidencias, como máximo, creadas por los usuarios. Para más detalles acerca del contenido del listado, véase [LISTADO DE EVIDENCIAS](#ListadoEvidenciasV1)
##### **USUARIOS**
###### **LISTADO DE USUARIOS**<span id="ListadoUsuarios"><span>

En este apartado encontrara el listado completo de usuarios creados por el cliente.
Los campos de información que podrá encontrar en el listado son los siguientes:
- **Creado el:** fecha de creación del usuario.
- **Nombre del usuario:** Identificador univoco del usuario.
- **Acceder:** En esta columna encontrara los links para entrar en la sección de cada usuario y operar como tal. Al acceder como usuario, el menú lateral cambiara y las funciones posibles a realizar también (véase la [SECCION DEL USUARIO](#SeccionUsuario) para más información). Si desea regresar de la sección de usuario a la sección de cliente de nuevo, encontrara un link en la parte superior del menú lateral para este cometido. Solo aparecerá este campo en los usuarios que tengan el registro completado.
- **Estado:** Se reflejara en qué estado se encuentra la alta del usuario, siendo posible la correlación siguiente:
- **Inscrito sin documentos:** Este estado significa que el usuario ha sido inscrito en nuestro sistema, pero que aún no ha enviado los documentos para la verificación de su identidad y la creación de su identidad digital. Solo es posible si el usuario ha sido dado de alta a través de una invitación por correo electrónico. (La función de invitación por correo ha quedado obsoleta en el proceso de eliminación de la V1)
- **Pendiente de verificación:** El usuario (o el cliente en nombre de este) ha enviado los documentos para la verificación de su identidad. Estos se encuentran a la espera de ser revisados por nuestro personal. En caso de confirmación se procederá a crear la identidad digital del usuario.
- **Registro completado:** Tras la verificación de identidad del usuario, este ya está completamente operativo y podrá realizar todas las acciones de usuario de nuestra API. A partir de este momento aparecerá el link de acceso a la sección de usuario.
###### **REGISTRAR USUARIO**

Para dar de alta a un usuario desde este panel, lo primero que deberá hacer es introducir el nombre identificativo de usuario que desea dar de alta. Este nombre será el identificador univoco del usuario, y por tanto requerirá de la comprobación previa por parte del sistema de la disponibilidad del nombre elegido. Se aconseja, para mantener la privacidad del usuario en todo momento, elegir un nombre que no se relacione directamente con el (evitando poner emails, nombres reales, etc.). El nombre admitirá cualquier combinación entre letras, números y símbolos con una longitud mínima de 6 caracteres.
Una vez validada, de forma automática la disponibilidad del nombre elegido, será visible el resto del formulario para rellenarlo.
En segundo lugar, deberá introducir la contraseña de acceso de usuario para acceder a las funciones específicas directamente. (La función de acceso directo como usuario ha quedado obsoleta en el proceso de eliminación de la V1)
En la tercera línea del formulario se introducirán los datos de identificación del usuario. Estos datos no serán almacenados y solo serán usados durante el proceso para confirmar la identidad del usuario. Después de dicho proceso, estos datos serán eliminados.
De la misma forma se solicita evidencia grafica de un documento de identificación, tanto del anverso como del reverso, y una foto del usuario sosteniendo dicho documento. Al igual que con la información anterior, estos datos serán eliminados de nuestro sistema tras la verificación de identidad, pero serán introducidos, de forma encriptada, en la identidad digital para el usuario que se creara.
Lo siguiente es introducir y confirmar la contraseña de encriptación para la identidad digital del usuario. Hay que tener en cuenta que la identidad digital será encriptada con la contraseña que introduzca y nadie más que usted tendrá acceso. Esta contraseña no se almacena en ninguna base de datos y por tanto no será modificable. Es necesario para la verificación de que es usted y solo usted quien ha firmado las evidencias. La custodia de esta contraseña queda bajo su responsabilidad.
Por último, tendrá que realizar la aceptación de los "Términos de uso y Condiciones" y la "Política de Privacidad y Protección de Datos" de nuestra plataforma. Tiene acceso a leer los textos completos, antes de aceptarlos, accediendo desde la misma página de registro.
Una vez introducidos todos los datos y enviados a nuestro sistema al pulsar el botón "registrarse", el usuario pasara a estar en el estado "Pendiente de verificación" comentado en el apartado anterior.
##### **HERRAMIENTAS**

Panel con enlaces de acceso a herramientas exteriores pertenecientes a nuestro ecosistema. Actualmente solo se puede acceder a nuestro comprobador de evidencias. Se iran añadiendo nuevas herramientas a futuro.
##### **API**
###### **TOKENS DE ACCESO**

Panel de creación y gestión de tokens de acceso del cliente para el uso directo de la API.
Al tratarse de la V1 cabe que recordar que en la API este token solo le dará acceso a las funciones propias del cliente, no a las de usuario.
En primer lugar, encontrara el formulario de creación de tokens. Tan solo es necesario introducir una descripción o identificador para el token solicitado y seleccionar la duración de validez que se desea para dicho token. Una vez hecho esto, el sistema generara un token de acceso basado en un algoritmo de clave aleatoria que le mostrara en pantalla.
**Atención:** Tenga en cuenta que este toquen de acceso solo estará disponible en este momento, una vez cierre el mensaje en que se le entrega, el token no volverá a ser accesible ni podremos volver a mostrárselo. Esto se hace para asegurar que usted y solo usted tiene acceso al token para que nadie más (ni siquiera nosotros) pueda interactuar con la API en su nombre. Si no copia el token en ese momento o lo extraviase, no tendría más remedio que revocarlo y crear uno nuevo.
Tras el formulario, podremos encontrar el listado de los tokens de acceso creados por el cliente. en este listado podrá encontrar los siguientes campos:
- **Descripción:** Identificador asignado al token por el cliente en el momento de crearlo. No tiene por qué ser único.
- **Creado el:** Fecha de creación del token a partir de la cual empieza su validez.
- **Expiración:** Fecha final de validez del token. En caso de haber elegido crear un token sin fecha de expiración aparecerá la palabra "nunca".
- **Acciones:** botón de borrar para poder revocar un token. Esta acción dejara el token sin validez (en caso de que aún no haya expirado) y lo eliminara del listado.
###### **WEBHOOKS**

Panel de creación y gestión de webhooks.
En primer plano se podrá encontrar el listado de los webhooks creados por el cliente para recibir los eventos.
Al pulsar el botón "crear nuevo webhook" aparecerá el formulario para introducir la información necesaria para ello. Los datos a introducir serian:
Nombre: Identificador personalizado para reconocer el webhook.
- **Url:** Dirección HTTP en la que se quiere recibir la información. Solo se aceptarán formatos validos de direcciones web.
- **Autorización (Opcional):** Aquí puede introducir el token de autorización para la dirección introducida, si esta es de acceso restringido. En caso contrario, dejar en blanco.
- **Eventos a comunicar:** Existen tres tipos de evento a comunicar via webhook. Usted puede escoger que evento/s quiere recibir en cada dirección que registre. Los eventos en cuestión son:
- **Evidencia certificada:** Se enviará a la confirmación de que una evidencia ha sido registrada de forma exitosa en blockchain.
(Se ha retirado la opción de seleccionar otros eventos como parte del proceso de eliminación de la V1)
###### **DOCUMENTACIÓN TÉCNICA**

Panel con enlaces a la documentación técnica de la versión V1 de la API, tales como:
- **Swagger:** Documentación técnica de la API con posibilidad de interacción. Muestra todos los formatos de llamada y respuestas.
- **Redoc:** Documentación técnica de la API con todas las definiciones y ejemplos de código para realizar las llamadas.
#### **SECCION DEL USUARIO**<span id="SeccionUsuario"><span>
##### **RESUMEN**

En este panel se puede tener acceso de manera resumida a la información más relevante para el usuario de nuestra plataforma I.B.S.
En primer lugar, se podrá encontrar tres accesos directos a las funciones más usadas normalmente por nuestros usuarios.
- **Evidencias:** acceso al listado completo de evidencias creadas por el usuario.
- **Nueva evidencia:** acceso al panel para crear evidencias.
- **Tokens de acceso:** acceso al panel de gestión y generación de tokens de acceso de usuario para el uso de la API.
En segundo lugar, aparece el listado de ultimas evidencias creadas por el usuario. Para ver el listado completo deberá acceder a él desde el menú lateral o el acceso directo antes comentado.
En este listado podrá ver la información, como máximo, de las ultimas 5 evidencias creadas. Para más detalles acerca del contenido del listado, véase [LISTADO DE EVIDENCIAS](#ListadoEvidenciasV1)
##### **EVIDENCIAS**
###### **NUEVA EVIDENCIA**

Desde este panel podremos crear una evidencia para que se certifique.
Los campos a rellenar serían los siguientes:
- **Titulo:** Nombre identificativo de la evidencia. Permite la introducción de letras números y símbolos con una longitud mínima de 4 caracteres y máxima de 128.
- **Texto:** En este campo se puede introducir un texto para que sea certificado en blockchain. El texto en sí, no será almacenado en la certificación, solo su sistema de verificación.
- **Archivos:** panel de carga de los archivos a certificar. No tiene límite en el número de archivos a certificar, pero si en el tamaño total de estos. Dicho limite está en 16MB. Se ha de tener en cuenta que, a la hora de verificar una evidencia certificada, se tienen que verificar todos los archivos originales, si uno solo no coincidiese, la verificación saldría negativa.
En una misma evidencia, se puede certificar tanto texto como archivos, o solo una de las dos opciones. No se permite (ni tendría sentido) la certificación de evidencias sin texto ni archivos adjuntos.
Junto al formulario podremos observar la huella digital del contenido, que es una representación de la codificación de los archivos y/o del texto que se registrara en blockchain.
Cabe recordar que blockchain no es un sistema de almacenamiento en la nube ni nada similar. La certificación en blockchain supone el guardado de un sistema de verificación de la no alteración del archivo o texto introducido. Por tanto, para realizar la verificación será necesario conservar los originales.
###### **LISTADO DE EVIDENCIAS**<span id="ListadoEvidenciasV1"><span>

Listado de todas las evidencias creadas por el cliente.
Podrá realizar búsquedas en el listado según el titulo asignado a la evidencia cuando se creo.
Los campos que podrá encontrar en el listado son los siguientes:
- **Fecha:** Fecha y hora de la creación de la evidencia. No confundir con la timestamp en blockchain. En un símil documental, esta fecha es la fecha de entrada de una solicitud para un trámite y el timestamp es la fecha de registro en el tomo correspondiente tras los trámites necesarios.
- **Titulo:** Identificador de la evidencia propuesto por el cliente a la hora de realizar la evidencia. Tenga en cuenta que este campo no tiene por qué ser único.
- **Estado:** Estado en que se encuentre cada evidencia, siendo dichos estados los siguientes:
- **Recibido:** La evidencia ha sido recibida por nuestra API y se encuentra a la espera para proceder a su certificación.
- **Enviado:** La evidencia ha comenzado su proceso de certificación y registro en blockchain.
- **Certificado:** La certificación de la evidencia ha sido registrada en blockchain de forma exitosa. A partir de este momento dicha certificación es inalterable.
- **Fallido:** La certificación de la evidencia no se ha podido registrar en blockchain. Este estado no debería aparecer en su listado en ningún momento pues nuestro servicio se encarga de relanzar una certificación en la que se haya podido producir algún problema, asegurándose así de que toda evidencia sea certificada y registrada correctamente. Pero, como es lógico, nada es 100% infalible y por esto se ha tenido en cuenta este estado. Si llegase a aparecer en su listado, no dude en ponerse en contacto con nuestro servicio técnico para que revisemos y solucionemos el problema.
- **Evidencia:** Link directo a la certificación correspondiente en nuestro verificador de evidencias, donde podrá ver los datos grabados en blockchain, comprobar la integridad de los archivos y/o textos certificados y consultar la identidad digital del usuario firmante.
##### **HERRAMIENTAS**

Panel con enlaces de acceso a herramientas exteriores pertenecientes a nuestro ecosistema.
Actualmente solo se puede acceder a nuestro comprobador de evidencias. Se iran añadiendo nuevas herramientas a futuro.
##### **API**
###### **TOKENS DE ACCESO**

Panel de creación y gestión de tokens de acceso del usuario para el uso directo de la API.
Al tratarse de la V1 cabe que recordar que en la API este token solo le dará acceso a las funciones propias del usuario, no a las de cliente.
En primer lugar, encontrara el formulario de creación de tokens. Tan solo es necesario introducir una descripción o identificador para el token solicitado y seleccionar la duración de validez que se desea para dicho token. Una vez hecho esto, el sistema generara un token de acceso basado en un algoritmo de clave aleatoria que le mostrara en pantalla.
**Atención:** Tenga en cuenta que este toquen de acceso solo estará disponible en este momento, una vez cierre el mensaje en que se le entrega, el token no volverá a ser accesible ni podremos volver a mostrárselo. Esto se hace para asegurar que usted y solo usted tiene acceso al token para que nadie más (ni siquiera nosotros) pueda interactuar con la API en su nombre. Si no copia el token en ese momento o lo extraviase, no tendría más remedio que revocarlo y crear uno nuevo.
Tras el formulario, podremos encontrar el listado de los tokens de acceso creados por el cliente. en este listado podrá encontrar los siguientes campos:
- **Descripción:** Identificador asignado al token por el cliente en el momento de crearlo. no tiene por qué ser único.
- **Creado el:** Fecha de creación del token a partir de la cual empieza su validez.
- **Expiración:** Fecha final de validez del token. En caso de haber elegido crear un token sin fecha de expiración aparecerá la palabra "nunca".
- **Acciones:** botón de borrar para poder revocar un token. Esta acción dejara el token sin validez (en caso de que aún no haya expirado) y lo eliminara del listado.
###### **DOCUMENTACIÓN TÉCNICA**

Panel con enlaces a la documentación técnica de la versión V1 de la API, tales como:
- **Swagger:** Documentación técnica de la API con posibilidad de interacción. Muestra todos los formatos de llamada y respuestas.
- **Redoc:** Documentación técnica de la API con todas las definiciones y ejemplos de código para realizar las llamadas.