API Studio

API Studio es la plataforma integral de Stamping.io diseñada para simplificar y potenciar la creación, gestión y orquestación de procesos, servicios y funciones en el contexto de blockchain y tecnologías descentralizadas. Se trata de una herramienta No-code que permite a los usuarios diseñar, implementar y gestionar flujos de trabajo y servicios sin la necesidad de programación manual.

API Studio de Stamping.io se presenta como una plataforma completa, adaptable y centrada en el desarrollador, que abarca desde la automatización de tareas hasta la integración con diversas cadenas de bloques, simplificando el desarrollo en el mundo de blockchain y tecnologías descentralizadas.

Características destacadas

  • Diseño visual: La creación de procesos se realiza de manera visual y sin necesidad de programación. Los usuarios pueden diseñar flujos de trabajo mediante una interfaz intuitiva y amigable que permite a los usuarios diseñar flujos de trabajo mediante la conexión de bloques funcionales.
  • Automatización de tareas No-code: Permite la automatización de tareas complejas mediante la definición visual de flujos de trabajo, eliminando la necesidad de escribir código manualmente.
  • Secuencia de tareas: Los procesos consisten en una secuencia de tareas que están vinculadas entre sí. Estas tareas se ejecutan de manera ordenada, permitiendo una ejecución paso a paso del flujo de trabajo. Facilita la creación y gestión de procesos, desde la definición de tareas hasta la orquestación de servicios y funciones.
  • Conexión con blockchain: Permite la integración sencilla con blockchain, especialmente con Ethereum, para estampar evidencias digitales, interactuar con contratos inteligentes y realizar transacciones.
  • Parametrización: Se pueden enviar parámetros a las tareas del proceso, lo que brinda flexibilidad y personalización en la ejecución de las tareas. Asimismo, las tareas pueden devolver respuestas que son gestionadas por el propio proceso.
  • Gestión de datos: Proporciona herramientas para gestionar y transformar datos, así como para interactuar con bases de datos y servicios externos.
  • Integración con servicios externos: Facilita la integración con servicios externos, como IPFS, oráculos, bases de datos y más, ampliando las capacidades de la plataforma.
  • Estampado de evidencias digitales: Incluye funcionalidades específicas para el estampado de evidencias digitales, asegurando la integridad y verificabilidad de datos y documentos.

Generadores automáticos No-code

  • Creación de API REST: Posibilita la creación de APIs REST personalizadas basadas en los procesos diseñados, permitiendo la exposición de funcionalidades específicas. Al concluir, un proceso se convierte en una nueva API REST, permitiendo su invocación desde las aplicaciones descentralizadas (dApps) de los clientes. Esto facilita la integración de la lógica del proceso en diversas aplicaciones.
  • Documentación automática de APIs REST: Ofrece la capacidad de documentar de forma automática cada API REST generada, facilitando la comprensión y el uso por parte de otros desarrolladores.
  • Generación de entrada de datos: Ofrece la capacidad de documentar de forma automática cada API REST generada, facilitando la comprensión y el uso por parte de otros desarrolladores.
  • Exportación y compartición de Procesos: Facilita la exportación de procesos diseñados, lo que permite a los usuarios compartir y transportar sus creaciones. Esto fomenta la colaboración y la reutilización de flujos de trabajo.
  • Creación de oráculos: Permite la creación de oráculos, estableciendo conexiones entre el mundo exterior y contratos inteligentes en distintas redes blockchain. Esto posibilita la integración de datos externos en los contratos.
  • Multichain: Stanping.io es una plataforma multichain, lo que significa que ofrece compatibilidad con múltiples cadenas de bloques. Puede integrarse con distintas redes blockchain para una mayor flexibilidad y versatilidad.

Beneficios

Stamping.io en una herramienta NoCode (sin código), los procesos desempeñan un papel clave al permitir a los usuarios definir la lógica y comportamientos específicos de un procesos de negocios para conectarla con sus aplicaciones descentralizadas sin la necesidad de escribir código tradicional. Estos procesos son implementados desde interfaces gráficas por cada tarea, en lugar de escribir código manualmente.

Un desarrollador podría utilizar API Studio para diseñar un proceso que involucre la creación de un contrato inteligente, la interacción con servicios externos mediante APIs REST documentadas automáticamente y la exportación de dicho proceso para compartirlo con otros miembros del equipo.

En resumen, los procesos en Stamping.io ofrecen una solución No-code para la automatización de flujos de trabajo, brindando a los usuarios la capacidad de diseñar, ejecutar y gestionar tareas de manera visual y eficiente, incluso integrando operaciones complejas de Web3 y Web2. A continuación se muestra la lista de tareas disponibles en el apificador de Stamping.io:

Opciones

A continuación se muestra una imagen con las características del API Editor:
Opciones del API Editor

Variables

El proceso variables(name) en Stamping.io permite recuperar valores asociados a una variable específica, considerando el entorno en el que se ejecuta el proceso (desarrollo, testing o producción). Este mecanismo facilita la gestión de configuraciones y la adaptabilidad del código a diferentes contextos.

Entradas
  • name: Nombre de la variable cuyo valor se desea recuperar.
  • value: Valor dependiendo el scope del proyecto (desarrollo, testing o producción).
El valor asociado a la variable puede ser recuperado en cualquier tarea diseñada en el API Studio de Stamping.io mediante el uso de la función: getVariable(name).

Contracts

El proceso getContracts(name) en Stamping.io facilita la obtención de información sobre un contrato registrado o creado previamente en la plataforma. Retorna detalles relevantes, incluyendo el contrato y la red blockchain en la que está desplegado.

Entradas
  • name: Nombre o identificador único del contrato del cual se desea obtener información.
  • value: Selección del contrato dependiendo el scope del proyecto (desarrollo, testing o producción).
El valor asociado a la variable puede ser recuperado en cualquier tarea diseñada en el API Studio de Stamping.io mediante el uso de la función: getContracts(name), sin embargo, por lo general, es usado en tareas que hacen uso de smart contacts para lectura (call) o escritura (send). El contrato debe ser registrado o creado en Stamping.io para que la plataforma tenga conocimiento de su existencia.

Services

El proceso getServices(name) en Stamping.io permite acceder a servicios externos, como enviar correos electrónicos, mensajes SMS o ejecutar servicios de proveedores, de forma segura y controlada. Esta función ofrece una gestión segura de la autenticación, utilizando métodos como API KEYs, evitando la exposición directa de información sensible al desarrollador.

Entradas
  • name: Nombre o identificador único del servicio del cual se desea obtener información.
  • value: Valor del servicio dependiendo el scope del proyecto (desarrollo, testing o producción).
Características
  • Autenticación Segura: Se utiliza un método seguro de autenticación, como API KEYs u otros mecanismos respaldados por la sección de seguridad de Stamping.io.
  • Acceso al Servicio: Se establece la conexión con el servicio externo identificado por el nombre proporcionado.
  • Gestión de Operaciones: Dependiendo del servicio, se pueden ejecutar diversas operaciones, como enviar correos electrónicos, mensajes SMS o cualquier acción admitida por el proveedor.
  • Retorno de Resultados: Los resultados de las operaciones realizadas se devuelven para su uso en el flujo de trabajo o proceso que invocó la función.
El uso de getServices(name) proporciona una capa adicional de seguridad al acceder a servicios externos, ya que permite gestionar la autenticación de manera controlada.

Open

La opción "open" en Stamping.io API Studio facilita la búsqueda y apertura rápida de procesos previamente guardados en el equipo del desarrollador. Esta función agiliza el flujo de trabajo al proporcionar un acceso directo a los proyectos almacenados localmente.

Instrucciones
  • Abra Stamping.io API Studio.
  • Seleccione la opción "open" desde el menú o barra de herramientas correspondiente.
  • Navegue a través de las carpetas locales para encontrar y seleccionar el proceso deseado.
  • Confirme la selección para cargar el proceso en el entorno de desarrollo o testing.

Save

La función "save" en Stamping.io API Studio permite a los desarrolladores almacenar de manera segura y conveniente sus proyectos en el entorno de desarrollo. Esta opción asegura que los cambios realizados en un proceso se guarden adecuadamente para futuras ediciones y recuperación.

Instrucciones
  • Edite el proceso en Stamping.io API Studio.
  • Seleccione la opción "save" desde el menú o barra de herramientas correspondiente.
  • Confirme la acción de guardado y proporcione detalles adicionales si es necesario.
La función "save" en Stamping.io API Studio proporciona una manera esencial de preservar y almacenar el progreso realizado durante la edición de procesos, asegurando que los cambios estén disponibles para futuras sesiones de desarrollo.

Run

La función "Run" en Stamping.io API Studio permite a los desarrolladores ejecutar un proceso con valores específicos como parámetros. Además, brinda la flexibilidad de seleccionar el scope en el cual se ejecutará el proceso, ya sea en entorno de desarrollo (dev) o en un entorno de pruebas (testing).

Instrucciones
  • Abra Stamping.io API Studio.
  • Edite el proceso y configure los parámetros según sea necesario.
  • Seleccione el scope de ejecución (desarrollo o pruebas).
  • Elija la opción "execute" para iniciar la ejecución del proceso.
La función "Run" en Stamping.io API Studio brinda a los desarrolladores la capacidad de probar y validar sus procesos de manera controlada, permitiendo la especificación de parámetros y la elección del entorno de ejecución.

Input

La función "Input" en Stamping.io API Studio simplifica el proceso de ingreso de datos de prueba al generar un micrositio. Este micrositio permite a cualquier usuario o equipo de pruebas ingresar fácilmente los datos requeridos para ejecutar o probar un proceso desarrollado en el API Studio.

Instrucciones
  • Diseñe una tarea en el API Studio y utilice la tarea "Query Params" para definir los datos de entrada.
  • Seleccione la función "Input" para generar automáticamente el micrositio.
  • Comparta el enlace del micrositio con los usuarios de prueba o el equipo.
  • Los datos ingresados a través del micrositio se utilizarán como entrada para ejecutar el proceso.

La función "Input" en Stamping.io API Studio simplifica la recolección de datos de prueba al generar un micrositio interactivo, mejorando la eficiencia en la recopilación y colaboración durante el proceso de desarrollo.

Compile

La función "Compile" en Stamping.io API Studio desempeña un papel crucial al transformar el código de un proceso en un archivo hexadecimal. Este archivo hex se utiliza con la Stamping Virtual Machine (SVM), permitiendo el despliegue del proceso en un entorno productivo. La compilación aísla el código, evitando modificaciones, y crea un ambiente independiente de variables, metadata y logs de ejecución.

Uso de la función "compile"

Desarrollo del Proceso:
Luego de diseñar y probar un proceso en el API Studio, se utiliza la función "Compile" para preparar el código para su despliegue en entorno productivo.

Generación de Archivo autoejecutable:
Al seleccionar la función "Compile", el código del proceso se transforma en un archivo autoejecutable en SVM que encapsula la lógica del proceso. Aísla el código del proceso para evitar modificaciones no autorizadas, mejorando la seguridad en entornos productivos.

Despliegue con SVM:
El archivo hexadecimal generado se integra con la Stamping Virtual Machine (SVM) para su despliegue en un entorno productivo, donde el código queda aislado y seguro. Stamping.io crea un ambiente de ejecución independiente de variables, metadata y logs, optimizando la eficiencia y seguridad del proceso.
Instrucciones
  • Abra Stamping.io API Studio.
  • Diseñe y pruebe un proceso en Stamping.io API Studio.
  • Elija la opción "Compile" para generar el archivo autoejecutable del código del proceso.
  • Utilice el archivo autoejecutable en Stamping Virtual Machine (SVM) que haya desplegado en un entorno productivo.
La función "Compile" en Stamping.io API Studio es esencial para asegurar la integridad y seguridad del código del proceso durante su despliegue en entornos productivos, proporcionando un ambiente independiente y protegiendo contra modificaciones no autorizadas.

Barra de tareas

La "Sidebar" en Stamping.io API Studio es una caja de herramientas que alberga una lista de tareas utilizadas por el editor de procesos. Contiene varios tipos de procesos (wallet, EDV, contracts, etc.). Estos procesos se agregan a la ejecución del proceso principal y se configuran mapeando los datos de entrada o salida.

Actúa como una caja de herramientas esencial para el editor de procesos, ofreciendo funciones clave para la configuración, mapeo y acceso a metadata. Mejora la eficiencia y coherencia en el diseño y ejecución de procesos.

Funciones claves
  • Agregar procesos: La Sidebar permite agregar diferentes tipos de procesos, como wallet, EDV, contracts, etc., para su inclusión en el proceso principal que se está creando.
  • Configuración y mapeo: Cada proceso agregado se configura y mapea con los datos de entrada del proceso actual o con los datos de salida de procesos anteriores, mejorando la integración y flujo de datos.
  • Funciones de acceso a metadata: Se hacen uso de funciones específicas, como getQuery, getResponse y getPrivateKey, para acceder a la metadata. Estas funciones facilitan la obtención de información clave necesaria durante la ejecución del proceso.
  • Transformación de datos: Las "funciones" se utilizan para transformar datos de entrada o salida de cada proceso, optimizando el funcionamiento y la coherencia en el flujo de trabajo.
Instrucciones
  • Abra Stamping.io API Studio.
  • Haga clic en el objeto que representa la tarea que desea agregar en su zona de diseño del proceso.
  • Configure la tarea, ingresando los valores de entrada con valores constantes, datos de entrada del proceso (query params) y/o mapeando datos con las respuestas de otras tareas.
  • Guarde la tarea.
Facilita la integración de diferentes procesos en el flujo de trabajo principal, mejorando la coherencia en la ejecución del proceso, además permite el acceso eficiente a la metadata a través de funciones específicas, simplificando la obtención de información clave.

task

Una "task" en Stamping.io API Studio puede ser configurada e integrada al proceso que se está creando. El desarrollador tiene la tarea de mapear los datos de entrada con valores constantes, variables, datos de entrada (query params) o respuestas de otras tareas. La tarea se compone de 5 secciones esenciales para una configuración completa.

Componentes
  • taskDescription: Muestra los datos de la tarea, así como el valor en gas que la tarea consume para su ejecución. Este "gas" es análogo al utilizado en Ethereum y representa el uso de recursos computacionales por parte de SVM (Stamping Virtual Machine).
  • mapping: Contiene los datos de entrada generales, parámetros u opciones necesarios para configurar la tarea correctamente y garantizar su funcionamiento adecuado.
  • taskResponse: Define la respuesta de la tarea, que se promueve al flujo del proceso en desarrollo. Puede utilizarse en tareas subsiguientes o como respuesta final del flujo. También puede emplearse en funciones de transformación de datos que se utilizan en tareas posteriores.
  • taskDocumentation: Permite la documentación detallada de la tarea. Se pueden utilizar etiquetas HTML enriquecidas como {code}, {pre}, {b}, {i}, {h5}, {h4}, etc., para mejorar la presentación y comprensión de la documentación.
  • taskOptions: Proporciona opciones para guardar o cancelar la tarea, ofreciendo flexibilidad al desarrollador durante la configuración.
Beneficios
  • Configuración completa: Facilita una configuración completa de la tarea, desde la descripción y mapeo de datos hasta la documentación detallada.
  • Flexibilidad en respuestas: Permite la gestión flexible de respuestas, promoviendo datos al flujo del proceso para un uso posterior.
  • Documentación enriquecida: Facilita la documentación detallada con la opción de utilizar etiquetas HTML enriquecidas para mejorar la presentación.
Instrucciones
  • Acceda a la sección de tareas en Stamping.io API Studio.
  • Configure la tarea utilizando la sección mapping para mapear datos de entrada. Puede usar la respuesta de tareas anteriores que se encuentran promovidas en la sección response para su uso en el flujo del proceso.
  • Documente la tarea detalladamente utilizando la sección documentation.
  • Guarde la tarea.
La configuración detallada de una tarea en Stamping.io API Studio garantiza un flujo de proceso coherente y eficiente, permitiendo a los desarrolladores gestionar datos de entrada, respuestas y documentación de manera efectiva.

Diseñador de proceso

El "DesignZone" es la zona central donde el desarrollador configura y diseña el flujo del proceso en construcción. Esta área se divide en tres partes esenciales para la creación eficiente de procesos.

API Studio ofrece un enfoque visual y eficiente para diseñar y configurar flujos de procesos, permitiendo a los desarrolladores crear soluciones específicas y conectarlas con aplicaciones descentralizadas (dApps).

Partes Principales
  • Query Params: Representa las entradas del proceso. Aquí, el desarrollador define los parámetros de entrada que serán utilizados en el proceso. Estos pueden incluir datos estáticos, variables, o incluso respuestas de tareas anteriores.
  • Tasks: Lista las tareas que han sido agregadas desde la barra lateral (sideBar) y que pueden ser mapeadas con las respuestas de tareas previas. Esto permite la creación de una secuencia de procesos orquestada y sincronizada para resolver un caso de negocio específico.
  • Response: Muestra la respuesta generada por el proceso. Aquí se visualiza el resultado final del flujo del proceso que ha sido diseñado y configurado en el DesignZone.
Instrucciones
  • Abra Stamping.io API Studio.
  • Configure las entradas del proceso en Query Params.
  • Organice y mapee las tareas en Tasks para crear una secuencia orquestada.
  • Visualice la respuesta final del proceso en la sección Response.
  • Complete y valide el diseño antes de invocar como una nueva API para su conexión con dApps.
La zona de diseño de procesos permite un diseño eficiente del flujo del proceso, desde las entradas hasta la respuesta final. Facilita la creación de una secuencia orquestada de tareas, sincronizando respuestas para resolver casos de negocio específicos, además de ofrece una visualización clara del proceso, permitiendo al desarrollador revisar y validar cada etapa de la ejecución.

Opciones de ejecución

La sección executionOptions brinda funcionalidades clave para gestionar y ejecutar eficientemente el proceso creado en Stamping.io API Studio. Aquí se encuentran diversas opciones para controlar la ejecución, acceder a registros, y mejorar la documentación del proceso.

Proporciona herramientas esenciales para ejecutar, gestionar el acceso, revisar registros y mejorar la documentación del proceso de manera eficiente. Este conjunto de opciones es fundamental para un desarrollo y mantenimiento efectivos del proceso creado.

Opciones disponibles
  • Run: Permite ingresar parámetros configurados en "Query Params" y seleccionar el ámbito (scope) donde se ejecutará el proceso. Muestra la respuesta del proceso para una validación inmediata.
  • Access: Permite visualizar los userID autorizados para ejecutar el proceso. También facilita la adición de nuevos usuarios que podrán ejecutar el proceso.
  • Logs: Proporciona un registro detallado de las ejecuciones del proceso. Permite revisar el historial de ejecuciones y ofrece la opción de eliminar registros si es necesario.
  • Documentation: Permite mejorar la documentación del proceso ingresando el título del mismo y proporcionando una descripción detallada..
  • Utils: Facilita la invocación de funciones específicas de Stamping.io para probar sus resultados. Útil durante las fases de prueba y depuración del proceso.
  • Reports: Reportes de uso del proceso.
Instrucciones
  • Abra Stamping.io API Studio.
  • Acceda a executionOptions en Stamping.io API Studio.
  • Utilice "Run" para ejecutar el proceso con parámetros y selección de ámbito.
  • Gestione el acceso en "Access" para autorizar usuarios a ejecutar el proceso.
  • Revise registros detallados en "Logs" para un seguimiento histórico.
  • Mejore la documentación en "Documentation" para una comprensión clara del proceso.
  • Explore las utilidades de prueba en "Utils" para verificar funciones de Stamping.io.
  • Revise los reportes de uso del proceso.
Permite ejecutar el proceso bajo diferentes condiciones y revisar la respuesta resultante, además de gestiar el acceso de usuarios autorizados para ejecutar el proceso, permitiendo agregar o remover usuarios según sea necesario.