Saturn Studio – Gmail

Gmail es el servicio de correo electrónico gratuito de Google, que ofrece una interfaz intuitiva y herramientas avanzadas para gestionar tus mensajes de manera eficiente.

banner

📌 ¿Qué es este módulo?

El módulo Gmail permite automatizar el envío, lectura, gestión y organización de correos electrónicos desde cuentas de Google directamente dentro de tus automatizaciones con Saturn Studio.

Ideal para integrar comunicaciones automáticas, notificaciones, procesamiento de emails, y gestión de bandeja de entrada.


⚙️ Comandos disponibles

icon Send email

Envía un correo electrónico utilizando una cuenta de Gmail.

Parámetro Descripción
Credential Credencial de Gmail
Recipient Destinatario(s) del correo
CC / CCO Copias visibles u ocultas
Subject Asunto del correo
Message Contenido del mensaje en HTML
Attachments Archivos adjuntos (opcional)
Is a draft Marcar como borrador
Assign result to variable Variable donde se guarda el resultado

icon Read all email

Lee los correos de una bandeja específica.

Parámetro Descripción
Credential Credencial de Gmail
Inbox folder Carpeta donde buscar (ej: INBOX)
Email status Filtra por leídos, no leídos, importantes, etc.
Limit Número de correos a obtener
Subject / From Filtros opcionales por asunto y remitente
Mark as read Marcar como leídos después de leer
Assign result to variable Variable donde se guarda el resultado

icon Get email attachment

Obtiene los adjuntos de un correo específico.

Parámetro Descripción
Credential Credencial de Gmail
Email ID ID del correo a leer
Attachment ID ID del adjunto (opcional)
File name Nombre del archivo guardado (opcional)
Assign result to variable Variable donde se guarda el archivo

icon Set email status

Cambia el estado de un correo.

Parámetro Descripción
Credential Credencial de Gmail
Email ID ID del correo
Status Nuevo estado: leído, no leído, destacado, importante, papelera, etc.

icon Reply to email

Responde a un correo electrónico.

Parámetro Descripción
Credential Credencial de Gmail
Email ID ID del correo a responder
Subject Asunto del mensaje de respuesta
Message Cuerpo del mensaje de respuesta (HTML)
Attachments Adjuntos (opcional)
Assign result to variable Variable donde se guarda la respuesta

icon Get Labels

Obtiene las etiquetas configuradas en una cuenta Gmail.

Parámetro Descripción
Credential Credencial de Gmail
Assign result to variable Variable donde se guarda el listado de etiquetas

icon Copy or Move email

Copia o mueve un correo a una carpeta específica.

Parámetro Descripción
Credential Credencial de Gmail
Email ID ID del correo a mover/copiar
Move Si se desea mover (true) o copiar (false)
Folder Nombre de la carpeta destino

🧪 Ejemplo de uso

Escenario: Automatización de notificaciones

  1. Send email
    Enviar confirmación al usuario al completar un formulario.
  2. Read all email
    Revisar cada hora la bandeja de entrada en busca de nuevas respuestas con filtro "UNREAD".
  3. Set email status
    Marcar como leído tras procesar.

🧩 Requisitos

Este módulo requiere una credencial válida de Gmail configurada en Saturn Studio para funcionar correctamente.




Saturn Studio – Logic

Logic Module – Saturn Studio

banner

📌 ¿Qué es este módulo?

El módulo Logic te brinda herramientas para controlar el flujo de tu automatización. Puedes usar condiciones, bucles, manejo de errores y agrupación de comandos.

Es ideal para crear lógica compleja que dependa de resultados, listas de datos o condiciones específicas.


⚙️ Comandos disponibles

icon IF

Evalúa una condición utilizando lógica en JavaScript.

Parámetro Descripción
Condición Condición a evaluar con JS (por ejemplo, a > 10)
Uso Controlar si ejecutar un bloque de comandos dependiendo de una condición.

icon Switch Case

Evalúa una variable o valor y permite ejecutar diferentes bloques de código según su coincidencia.

Parámetro Descripción
Valor Dato a comparar con diferentes “cases” definidos.
Uso Cuando tienes múltiples caminos posibles y quieres evitar muchos “IF”.

icon While

Ejecuta un evento cíclico mientras se cumpla una condición, utilizando lógica Python.

Parámetro Descripción
Condición Expresión lógica en Python que se evalúa en cada iteración.
Uso Para repeticiones donde no sabes cuántas veces se ejecutará.

icon Iterate over elements

Itera sobre cada elemento de una lista o colección.

Parámetro Descripción
Fuente de datos Lista o arreglo sobre el cual iterar.
Uso Para ejecutar comandos para cada elemento de una lista.

icon Break

Rompe un ciclo o estructura repetitiva.

Parámetro Descripción
Sin parámetros Se utiliza dentro de bucles para salir del mismo inmediatamente.

icon Try Catch

Permite intentar ejecutar un bloque de código y capturar el error si ocurre.

Parámetro Descripción
Bloque try/catch Define qué ejecutar e incluye manejo de errores.

icon Group

Agrupa varios comandos para ejecutarlos como una sola unidad.

Parámetro Descripción
Comandos agrupados Permite una mejor organización o ejecución conjunta.

🧪 Ejemplo de uso

Escenario: Procesar una lista de números

  1. Iterate over elements
    Fuente de datos: myList
    Dentro del bucle:
  2. IF
    Condición: item > 10
    Si se cumple:

  • Ejecuta acciones para números mayores a 10.

  1. Else (dentro del IF)

  • Ejecuta acciones para los menores o iguales.

🧩 Requisitos

Este módulo viene incluido en Saturn Studio y no requiere configuración adicional.




Saturn Studio – Webhooks

banner

📌 ¿Qué es este módulo?

El módulo Webhooks permite integrar servicios externos con tu flujo de automatización. Mediante este componente, puedes:

  • Escuchar Webhooks entrantes (desde otras aplicaciones).
  • Procesar la información recibida.
  • Enviar una respuesta inmediata o después de una ejecución.

Ideal para integraciones en tiempo real como formularios, notificaciones, bots, servicios de terceros, etc.


⚙️ Comandos disponibles

📨 Receive Webhook

Recibe un Webhook y lo procesa. Puedes seleccionar el método HTTP, definir el modo de respuesta y almacenar el resultado en una variable.

Parámetro Descripción Ejemplo
HTTP Method Método HTTP que se usará para recibir el Webhook GETPOSTPUTDELETE
Response mode Cómo se responderá al Webhook recibido ImmediatelyAfter robot executionUse 'Response Webhook' moon
Assign result to Variable Variable donde se guardará el contenido recibido (sin {}) webhookData

📤 Response Webhook

Responde a un Webhook previamente recibido. Se puede usar para enviar una respuesta personalizada después de procesar la información.

Parámetro Descripción Ejemplo
Task ID ID de tarea del Webhook recibido a la que se responderá 123456
Response Texto que se enviará como respuesta {"status":"ok"}
Assign result to Variable Variable donde se guardará el resultado responseStatus

🧪 Ejemplo de uso

Supongamos que quieres recibir datos de un formulario externo y luego responder con una confirmación. Puedes configurar el flujo así:

  1. Receive Webhook

    • HTTP Method: POST
    • Response Mode: Use 'Response Webhook' moon
    • Variable: formInput

  2. Procesas los datos con tu robot (por ejemplo, los guardas en una base de datos).
  3. Response Webhook

    • Task ID: el ID obtenido desde formInput.task_id
    • Response: {"message":"Formulario recibido con éxito"}
    • Variable: responseResult


🧩 Requisitos

Este módulo no tiene dependencias externas. Simplemente arrástralo a tu flujo y configúralo.




Saturn Studio/Rocketbot – File Storage

La sección File Storage (almacenamiento de archivos) permite gestionar archivos para el desarrollo de robots dentro de Saturn Studio.

Es importante considerar la capacidad máxima de almacenamiento disponible. Dentro del entorno de desarrollo, es necesario dirigirse al módulo File, donde se podrá configurar su uso según las necesidades del robot.

Es posible hacer uso de los archivos para diversas funciones, por ejemplo, enviar correos electrónicos (módulo Gmail) o enviar mensajes con imágenes al asistente de ChatGPT (módulo OpenAI), entre otras opciones.

Se pueden realizar las siguientes acciones:

  • Subir archivos.
  • Visualizar la cantidad de archivos almacenados.
  • Visualizar el almacenamiento utilizado y el almacenamiento máximo disponible.
  • Visualizar la información del archivo, incluyendo su nombre, proveedor (usuario), tamaño y fecha de creación.
  • Eliminar archivos de manera individual o en su totalidad.
  • Consultar las tareas asignadas a cada archivo.

Files (Desarrollo de Bots)

Para utilizar los archivos previamente cargados en el sistema, es necesario acceder al módulo Files y seleccionar el comando Get Files (obtener archivos).

En la configuración, se podrá filtrar la búsqueda de archivos por nombre.

Se puede asignar el resultado de la ejecución a una variable, para confirmar la existencia del archivo. Si el archivo existe, la variable asignada contendrá su ID, nombre, espacio ocupado en almacenamiento y el proveedor correspondiente.

Ejemplo de Desarrollo

Una vez que el archivo ha sido subido correctamente a File Storage, durante el desarrollo del bot se deberá acceder al módulo Files y seleccionar Get Files.

En este proceso:

  1. Se establecerá el nombre del archivo como criterio de búsqueda.
  2. Se asignará una variable que verificará su existencia.

Para evaluar la presencia del archivo, se utilizará un comando IF, que analizará la lógica basada en la variable asignada. Si la variable confirma la existencia del archivo, el flujo de ejecución continuará.

La función final de este bot será enviar un correo electrónico con el archivo adjunto. Para ello, se empleará el módulo Gmail, seleccionando la opción Send Email.

Una vez completados los campos requeridos, en la sección Attached Files (archivos adjuntos), se podrán visualizar los archivos contenidos en la variable. Si la carga del archivo es correcta, se procederá a asignar una variable que confirme el envío exitoso del correo.

Si todo el proceso se ejecuta correctamente, el archivo adjunto será enviado a la dirección de correo electrónico designada.




Saturn Studio/Rocketbot:Data Store/Cache

En esta sección se almacenarán y podrán compartirse datos entre distintos robots. Los robots tendrán la posibilidad de crear, actualizar, obtener registros de datos o eliminarlos durante su desarrollo.

New Data Store

Desde el dashboard, en el menú lateral, encontraremos la opción Data Store/Cache, donde ingresamos a esta sección que nos mostrará la siguiente información:

  • La cantidad de datos almacenados en el sistema.
  • El espacio de almacenamiento ocupado.

Podemos crear un almacén de datos (New Data Store), para lo cual se nos pedirá un nombre y una descripción.

Allí podremos observar el nombre, la descripción, los ítems almacenados, el espacio que ocupan y las acciones disponibles, como editar o eliminar el almacén de datos.

Data Store (desarrollo)

En el desarrollo del robot, tendremos las siguientes opciones:

  • Crear un registro en el almacén de datos (Create a record in Data Store).
  • Borrar un registro en el almacén de datos (Delete a record in Data Store).
  • Obtener registros del almacén de datos (Get records from Data Store).
  • Actualizar un registro en el almacén de datos (Update a record in Data Store).

Create Record

Luego de la creación de un almacén de datos, podemos generar un registro desde el desarrollo de un robot.

Para ello, el comando pedirá seleccionar el Data Store (datos almacenados a editar).

En Record (registro), se decidirá si se utilizará una variable o un valor directo y, posteriormente, se asignará el resultado a una variable.

En la variable donde se guardó el resultado, se obtendrá el ID y el valor asignado previamente. Este ID servirá para actualizar o borrar registros en otros comandos y/o desde otros robots.

Delete Record

Para borrar un registro, se seleccionarán los datos almacenados y se ingresará el ID que fue entregado por la variable cuando se creó el registro.

Por último, se asignará una variable para confirmar si el registro fue eliminado exitosamente. El resultado será true o false.

Get Records

Este comando permitirá obtener los registros almacenados. Para ello, se seleccionará el Data Store y luego se aplicarán los filtros necesarios.

Los filtros permiten realizar búsquedas específicas dentro de los registros. Por ejemplo, se puede establecer un filtro que busque registros en los que el campo “nombres” contenga “John”.

Para configurar el filtro:

  1. Se elige el objeto.
  2. Se selecciona la acción a realizar.
  3. Se agrega una comparación.

Finalmente, se asignará una variable que almacenará el ID y la acción realizada (por ejemplo, “contiene”).

Si otro robot utiliza este comando (Get Records), podrá acceder a los datos de la variable asignada en el robot anterior.

Update Record

Este comando permite actualizar o editar un dato almacenado.

Para ello, se debe:

  1. Seleccionar el dato almacenado.
  2. Ingresar el ID, obtenido previamente al crear el registro.
  3. Editar el registro según sea necesario.
  4. Asignar una variable para almacenar el resultado, que incluirá el ID y los valores actualizados del registro.



Saturn Studio/Rocketbot – Folder and Bots

Folder (Carpetas)

Una carpeta (folder) es un proyecto que puede contener uno o más robots.

Todos las carpetas del usuario estarán en una lista, junto con el nombre de todos sus robots. Hay un filtro para buscar carpetas por su nombre.

Crear carpeta

Cada carpeta debe tener un nombre, la descripción es opcional. Si posee una descripción, se puede utilizar la IA para generar un documento con el paso a paso del proyecto.

Y una vez se guarden los cambios aparecerá la carpeta nueva.

Folder and Bots

Cuando se selecciona una carpeta, le podrá crear/editar/elimiar robots, ver la documentación (si es que se hizo) y editar,borrar e imprimir la descripción del proyecto. Se dispone una lista con todos los robots que la carpeta posea.

New robot

Cada robot debe tener un nombre, y opcionalmente una descripción. Se puede generar una descripción con ayuda de la IA, que toma el nombre del robot.

Una vez se haya creado el robot tendremos la vista en dashboard de los robots,su descripción y las acciones que se pueden realizar (ejecutar,editar,borrar) También podemos dejarlo en modo activo y podremos observar cuántas veces se ejecutó el robot.

En la descripción tendremos las “Moons” (comandos que posee el robot) y bajo el nombre del robot tendremos la versión de este (cuantas veces se modificó el robot) y el tiempo de creación.

Para editar el robot y asignar comandos debe de entrar en la sección de Edit robot,una vez allí podrá asignarles todo los comandos que desee.




Saturn Studio/Rocketbot – Credentials

Las credenciales son las cuentas de servicio (como Google) que estarán vinculadas a los comandos de los módulos a utilizar (como el módulo de Gmail), modificando o permitiendo obtener la información de la cuenta que se desee usar.

Crear una credencial

Para ello, se debe ir a Saturn Studio y asignar un comando que requiera una credencial.
Un ejemplo sería usar un comando de Gmail.

Allí, dentro del comando, saldrá la opción para crear o seleccionar una credencial.

Podemos asignar una nueva credencial en el botón “New”.

Allí podremos iniciar con Google y asignar un nombre a la credencial.
Una vez hecho esto, en el Dashboard tendremos las otras opciones.

  • Service: el servicio que ocupa la credencial.
  • Name: El nombre que se le asignó para identificar la credencial.
  • Delete: Borrar la credencial. Cuando se borra la credencial, automáticamente se aplicará el cambio al comando al que se le asignó la credencial.




Saturn Studio/Rocketbot :Dashboard

En el dashboard se podrán ver las estadísitcas del usuario:

Reportes generales: Se mostrarán datos sobre los robots lanzados, la distancia recorrida por las “lunas” (correspondiente a los comandos ejecutados por los robots) y los problemas detectados. Se puede crear un robot en la carpeta seleccionada desde aquí (botón Create now).

Se pueden visualizar las estadísticas del mes, semana o día corriente.

Gráfico de eventos

Se nos mostrará el siguiente gráfico, el cual nos indicará los números de eventos y en qué día del mes ocurrieron.

Podremos diferenciar:

  • Los robots lanzados.
  • Los errores.
  • Las Lunas (comandos ejecutados del robot).

Tenemos las opciones del gráfico en su lateral, las cuales nos permiten:

  • Hacer zoom.
  • Reducir el zoom.
  • Seleccionar el zoom.
  • Activar el modo panorámico.
  • Restaurar el zoom.
  • Acceder al menú para descargar el gráfico.

Reporte de los últimos 10 robots ejecutados este mes

Tendremos en el reporte el nombre del robot y el tiempo.

Botón Refresh

Este botón refrescará o actualizará el reporte del dashboard.




Saturn Studio/Rocketbot – Moons

En Saturn Studio, cada comando es una luna (moon). Para que los comandos funcionen correctamente, deben estar conectados de forma secuencial: cada comando debe enlazarse al anterior, y el primer comando debe estar conectado al comando inicial (Start).

Agregar comandos

Hay dos maneras de agregar comandos al robot, desde el menú lateral o como continuación de un comando existente.

Además, existe la opción de agregar comandos directamente como continuación de un comando existente. Al posicionar el cursor junto a una moon, aparecerá la opción “Click to connect to new moon”.

Al seleccionarla, se desplegará un menú donde podrá buscar o seleccionar el comando deseado. Este menú muestra una breve descripción del módulo y de los comandos disponibles dentro de él.

Una vez seleccionado el comando, la nueva moon se agregará automáticamente al diagrama, y se abrirá el menú de configuración correspondiente para configurar comando.

Interfaz

El entorno de Saturn Studio está diseñado para ser altamente visual e intuitivo. Los usuarios pueden arrastrar y soltar las moons libremente, organizándolas según sus preferencias.

Opciones

Cuando se posiciona el cursor sobre un comando en el diagrama, se presentan las siguientes opciones rápidas:

  • Editar el comando.
  • Alternar visibilidad (visible o no).
  • Configurar punto de interrupción.

Opciones Avanzadas

Al hacer clic derecho sobre un comando, se accede a opciones avanzadas:

  • Editar comando.
  • Agregar variable.
  • Clonar comando.
  • Eliminar comando.
  • Alternar punto de interrupción.
  • Ejecutar comando.
  • Ejecutar robot.
  • Acceder a la ayuda del comando.