Introducción a N8N, automatiza tus flujos de trabajo

Duration

24:08

Captions

1

Language

ES

Published

Nov 26, 2025

Description

🚀 ¡OFERTA INCREÍBLE EN HOSTINGER!→ https://hostinger.com/miduvps Aprovecha los descuentos salvajes del Black Friday en servidores VPS: 🔥 Hasta 67% OFF en todos los planes. 🎁 +10% EXTRA usando el cupón: MIDU En este video veremos paso a paso que es n8n, y como este automatiza tus flujos de trabajo [00:00] Introducción a N8N [00:46] Configuración del Servidor VPS en Hostinger [02:40] Configuración inicial de N8N [05:00] Creando el primer flujo (Trigger) [06:59] Obtención de datos (HTTP Request) [09:48] Configuración de Gmail y Credenciales [16:11] Integración con Inteligencia Artificial (OpenAI) [22:18] Prueba final y resultado ⚠️ En el minuto 13 hay un problema con el zoom de la pantalla. Los pasos que hay que dar es: 1. En N8N crear una Credencial del tipo OAuth 2. 2. Ir a https://console.cloud.google.com/apis/library 3. Seleccionar un proyecto (o crear uno desde cero) 4. Buscar Gmail API 5. Habilitarlo 6. ¡Y ya se puede seguir el vídeo sin problemas!

Captions (1)

00:00

¿Estás cansado de hacer tareas

00:01

repetitivas? Hacer cosas a mano, tener

00:03

que revisar un dashboard, enviar un

00:05

email, entonces empieza un proceso todo

00:07

de memoria o hacerlo cuando te acuerdas,

00:09

1000 herramientas, procesos, locura.

00:11

Pues olvídate de eso porque hoy te voy a

00:13

enseñar N8N, un constructor de

00:16

automatizaciones. Construir flujos de

00:18

trabajo complejos con toda la precisión

00:21

que te puede dar el código con

00:23

inteligencia artificial e integraciones

00:25

de todo tipo. Y es que puedes utilizar

00:27

de todo, apps, lls, herramientas,

00:30

llamadas o comandos del propio servidor,

00:32

llamar a otros flujos de trabajo. Y lo

00:34

mejor de todo es que esto lo puedes

00:35

decidir si lo ejecutas en el cloud o en

00:38

tu propio servidor. Eso te voy a enseñar

00:40

también cómo lo puedes hacer en tu

00:41

propio servidor, porque hoy para hacer

00:43

esta magia vamos a pillar un servidor

00:46

VPS de Hostinger, que es el patrocinador

00:48

de este vídeo y que además va como un

00:50

cohete. Así que vamos a empezar por ahí

00:52

para ver cómo puedes tener un ejército

00:54

de robots trabajando para ti. Ten en

00:56

cuenta que si tú ya tienes tu propio

00:58

servidor VPS, te puede saltar este paso

01:00

de instalación porque no lo necesitas.

01:02

Todo lo que vas a ver en este vídeo lo

01:04

vas a poder utilizar sin ningún tipo de

01:06

problema. Y si tú quieres utilizar N8N

01:09

en el cloud, también lo que vamos a

01:10

estar comentando te va a servir. Lo

01:12

primero que necesitamos es un servidor

01:14

VPS y además que lo tienes en Black

01:16

Friday con un hasta 67% de descuento,

01:19

puedes elegir el que mejor te encaje.

01:21

Normalmente el que más se vende es el

01:23

KVM2, que lo tienes por 6 € al mes,

01:26

bueno, durante 24 meses. Tú eleges el

01:30

plan y aquí, además, le puedes aplicar

01:32

un descuento extra utilizando mi cupón

01:35

de descuento. Fíjate que serían 143,76 €

01:39

que pagas de golpe, pero tienes 2 años

01:41

de servidor y estos son los 599 al mes.

01:45

Pero puedes poner un cupón de descuento

01:47

que es el de Midu, lo aplicas y tienes

01:51

un 10% extra que te sale espectacular el

01:54

precio. se te queda 129,38,

01:57

así que ahí puedes aprovechar. Y además

02:00

aquí ya directamente lo que puedes hacer

02:02

es buscar tu sistema operativo y pones

02:05

N8N. Fíjate que tienes tres. N que sería

02:09

uno recomendado que te viene N8N, pero

02:11

totalmente limpio. Pero luego tienes uno

02:14

con el modo cola, que es un poquito más

02:17

avanzado, y luego tendríamos uno que

02:19

viene ya con 100 flujos de trabajo

02:21

preparados por si quieres tener ya pues

02:23

una colección lista. En este caso,

02:25

nosotros le vamos a decir N8N, el más

02:28

recomendado, el típico, el que nos va a

02:31

permitir automatizar flujos de trabajo.

02:33

Y ya está. Le damos a confirmar. Aquí se

02:36

queda el mismo precio. Le daríamos a

02:38

continuar y ya procedería a instalarlo,

02:40

pero yo ya lo he hecho.

02:43

Así que voy a entrar a mi panel de

02:45

administración de Hostinger, a la

02:46

sección de VPS y aquí tengo mi servidor.

02:50

Me voy a administrar y fíjate que está

02:53

utilizando el sistema operativo Wuntuc

02:55

2402. Me dice consumo de memoria de CPU

02:58

y todo esto. Y ya tengo N8N totalmente

03:02

instalado y puedo administrar la

03:04

aplicación. Le vamos a dar aquí y me

03:06

abre en una nueva página web el

03:09

registro. Importante que tú seas la

03:11

primera persona que se registra, ¿vale?

03:13

Porque si no la puedes liar. Así que

03:16

vamos a poner correo electrónico, mi

03:18

nombre y mi contraseña, que vamos a

03:20

poner 1 2 3 4 5 6 7 8. Es broma. Venga,

03:24

siguiente. Y ahora pues simplemente

03:26

tenemos que personalizar nuestro N8N.

03:30

Le decimos, "Oye, ¿cómo es mi empresa?"

03:32

Pues nada, software a service, me lo voy

03:34

a inventar un poquito, pero bueno, como

03:35

veis, todo esto en realidad es opcional.

03:37

Le das a get started y ya está. Ahora

03:39

nos ofrece tener las características de

03:41

pago, pues gratuitas para siempre. Pues

03:43

le voy a decir que sí, hombre. Envíame

03:45

la licencia gratuita a mi correo. Le

03:47

decimos que sí, que me lo envíe y ya

03:49

está. Ya lo tenemos totalmente preparado

03:52

para iniciar y crear nuestro primer

03:55

flujo de trabajo. Así que le damos al

03:57

start from scratch y ya tenemos el

03:59

editor visual. Aquí es donde vamos a

04:02

crear nuestro flujo visualmente,

04:04

arrastrando algunos nodos, configurando

04:06

cosas y bueno, vas a ver que vamos a

04:07

empezar desde el principio, pero luego

04:09

vamos a hacer peticiones a una API,

04:11

llamar a una inteligencia artificial,

04:13

enviarnos un email y esto poco a poco.

04:16

Ahora que sepas que no hace falta que lo

04:19

hagas tú manualmente porque también hay

04:21

plantillas que ya ha creado la gente.

04:23

Además, fíjate una cosa, cada vez que

04:26

cierras y le das, te salen plantillas

04:27

totalmente distintas. Y si le das a este

04:30

botón de see More Templates, vas a la

04:32

página oficial de N8N y vas a tener,

04:35

bueno, creo que hay más de 7,000 flujos

04:38

de trabajos personalizados, que a lo

04:40

mejor tienes uno que buscas Instagram,

04:42

¿vale? Pues aquí tienes todos los flujos

04:44

de trabajo que tienen que ver con

04:46

Instagram, ya sea que cada vez que

04:48

recibes un mensaje de Instagram, pues

04:50

voy a guardar ese mensaje directo en una

04:52

hoja de cálculo de Google. Es que tienes

04:55

un montón, esto no te lo terminas. Pero

04:57

bueno, yo lo que quiero explicarte hoy

04:59

es cómo lo puedes crear tú desde cero.

05:01

Ya sabes que a mí me encantan mucho las

05:04

carreras de running, o sea, porque

05:06

últimamente estoy corriendo bastante.

05:08

Así que lo que me gustaría es que cada

05:10

día me llegue un email que me avise

05:13

cuáles son las próximas carreras en mi

05:15

área. Así que lo primero que como tiene

05:17

que ser algo que ocurra cada día una

05:19

hora, vamos a añadir el primer paso y

05:22

cuando le das click, fíjate que aquí

05:24

tenemos como los diferentes triggers

05:27

disponibles. Triggers significa que,

05:29

¿qué es lo que va a iniciar el flujo de

05:31

trabajo? Puede ser manual que le des a

05:33

un botón, que haya un evento de la

05:36

aplicación cada vez que ocurra algo en

05:38

en, no sé, que haga una llamada HTTP y

05:41

lo reciba, cada vez que recibamos pues

05:44

un contacto en el formulario, cada vez

05:47

que llegue un momento en concreto del

05:49

día a las 8 de la mañana cada día o cada

05:52

hora cuando nos llega un mensaje en el

05:53

chat, o sea, ya veis que hay un montón

05:55

de posibilidades para inicializar un

05:57

flojo de trabajo. En este caso yo voy a

06:00

decir que sea on schedule. ¿Por qué?

06:02

Porque quiero que ocurra cada día a las

06:04

8 de la mañana. Por lo tanto, lo que le

06:06

voy a decir es que esto, el intervalo

06:09

tiene que ser de días cada día. Y le voy

06:11

a decir que la hora sea las 8 de la

06:14

mañana. Aquí podría decirle a las 8:30

06:17

exactamente. Y con esto ya lo

06:19

tendríamos. Podríamos ejecutar este paso

06:21

para ver cómo funciona y ver cuál es el

06:23

output. Y esto muy importante porque

06:26

todos los triggers nos van a

06:28

proporcionar contexto, información,

06:31

quién ha iniciado el trigger, cuándo lo

06:33

ha hecho, eh qué aplicación ha sido, qué

06:35

mensaje nos ha llegado, todo esto. En

06:37

este caso, fíjate que este trigger, el

06:40

de schedule, lo que nos está dando es a

06:42

qué hora una fecha legible, el día de la

06:45

semana, el año, el mes, el día, la hora,

06:47

el minuto, el segundo, la zona horaria,

06:50

todo esto lo vamos a tener disponible.

06:52

Pero bueno, por ahora ya tenemos nuestro

06:54

primer paso. Ahora lo siguiente que yo

06:57

quiero hacer es poder llamar a una API.

07:00

¿Por qué? Porque yo lo que quiero es

07:02

poder llamar a una API que me dé esta

07:04

información y me diga cuáles son las

07:06

carreras. Por suerte, ya existe una

07:09

página que se llama Rock the Sport, que

07:11

aquí tienes listadas todas las próximas

07:13

carreras y además la API es bastante

07:16

accesible. Así que yo lo que he hecho es

07:18

fijarme en la nickwork, a ver cómo se

07:20

está haciendo estas llamadas y ahora voy

07:23

a hacer que cada vez que se inicie el

07:25

flujo de trabajo, el siguiente paso va a

07:28

ser una petición http

07:31

http request. Le damos click y aquí ya

07:35

podemos hacer un method y aquí le

07:37

podemos decir que sea un get, un post,

07:39

lo que tú quieras. Nosotros necesitamos

07:41

que sea post porque esta API funciona

07:44

así con post. Y la URL la tengo por

07:46

aquí, la voy a pegar que se me ha

07:48

cambiado esto. Ponemos post URL y luego

07:52

no tiene autentificación, pero sí que

07:54

necesitamos enviarle como header el

07:57

content type, que tiene que ser

07:59

application

08:01

bargison.

08:03

Y luego tendríamos que enviarle el

08:05

cuerpo, que aquí fíjate que le decimos

08:07

que es del tipo JSON y le vamos a pasar

08:09

directamente el objeto que necesita para

08:12

que la API nos responda correctamente.

08:15

Fíjate que yo aquí ya le he dicho qué

08:17

columnas tengo que recuperar, cómo lo

08:19

tiene que ordenar, qué tipo de eventos

08:22

son, dónde tiene que ser la provincia.

08:24

Esta sería la de Barcelona, que es donde

08:26

soy yo, y el deporte es de running. Y

08:29

una vez estamos aquí, podemos ejecutar

08:31

esto para ver si todo funciona

08:33

correctamente. Le das a execute step. Y

08:35

fíjate que aquí tenemos toda la

08:37

información que hemos podido recuperar.

08:40

En data tenemos los items y tenemos 0 1

08:44

2 3 4. O sea, que ha recuperado en total

08:47

10 resultados. Y esto se supone que son

08:50

los siguientes eventos deportivos de

08:52

running que hay en mi zona. Bueno, pues

08:54

al menos ya lo sé. Con esto ya veo que

08:57

funciona, veo la información que puedo

08:59

recuperar, así que vuelvo para atrás y

09:02

fíjate cómo va quedando la cosa. Ya

09:04

tengo el trigger, ya tengo http request

09:07

y ahora lo que me gustaría es poder

09:09

enviarme un correo, al menos un primer

09:11

correo sencillo, luego lo vamos a ir

09:14

mejorando esto, pero al menos que veamos

09:16

cómo puedo hacer que me pueda enviar

09:19

esto, un correo para indicarme estas

09:21

carreras. Bueno, pues siguiente paso.

09:23

Una vez que hacemos la petición y

09:25

tenemos el resultado, siguiente paso,

09:27

fíjate la de cosas que puedes hacer.

09:29

temas de inteligencia artificial,

09:31

acciones en una aplicación,

09:32

transformación de datos, cosas de flujo

09:35

como por ejemplo condicionales, un loop,

09:37

lo que sea, ejecutar código, hacer la

09:40

petición HTTP, hacer un webhook, esperar

09:43

la aprobación de un humano. Esto también

09:45

es bastante interesante. Nosotros aquí

09:47

podemos buscar directamente Gmail, que

09:49

este es muy típico. Y en Gmail se pueden

09:52

hacer un montón de cosas, entre ellas lo

09:55

que se puede hacer es enviar un mensaje,

09:57

que al final enviar un mensaje es algo

09:59

muy similar a enviar un email. Así que

10:02

vamos a rellenar esta información. Por

10:04

ahora los credenciales lo voy a dejar

10:06

vacío, pero luego lo vamos a arreglar,

10:08

¿vale? Ahora, el recurso le dice un

10:10

mensaje, label draft, le decimos que es

10:12

un mensaje, que lo envíe. ¿A quién se lo

10:14

queremos enviar? A muguga@gmail.com.

10:17

Le decimos aquí las próximas carreras de

10:20

running en Barcelona. Tipo del email o

10:24

le podríamos decir que es texto plano. Y

10:26

lo bueno de esto es que aquí podrías

10:27

utilizar strong hola y aquí le puedes ir

10:30

poniendo lo que tú quieras. ¿Qué es lo

10:32

interesante de esto? Pues que fíjate que

10:35

aquí a la izquierda tengo tanto la

10:38

información del trigger del schedule

10:41

como la petición http y aquí tengo todos

10:44

los datos que nos han llegado, que

10:47

podríamos recuperar para enviarlo y

10:50

decirle, "Oye, pues mira, este items lo

10:52

pongo aquí. Fíjate que lo puedes pegar

10:54

aquí y aquí ya tenemos object." Claro,

10:57

me está dando el resultado para que veas

10:58

cómo ha quedado, que queda un poco raro

11:00

con todo el object, pero le puedes decir

11:02

punto lens. Vale, y nos dice que 11 y le

11:05

puedes decir, "He encontrado 11 carreras

11:09

nuevas o próximas, más que nuevas,

11:12

próximas.

11:14

Échale un ojo." Vale, fíjate. Ahora, lo

11:18

más importante aquí es que todo lo que

11:20

hay dentro de las llaves es JavaScript.

11:24

Por lo tanto, lo que podemos hacer aquí

11:26

es ahora recuperamos otra vez el item,

11:29

lo ponemos aquí y aquí podríamos mapear

11:32

cada uno de estos y le podemos decir,

11:34

"Bueno, pues esta es la carrera." Y aquí

11:37

directamente lo que podríamos hacer es

11:39

decirle, "Vale, pues de cada carrera,

11:41

¿qué es lo que queremos devolver?", ¿no?

11:42

Pues en cada carrera vamos a tener aquí

11:45

la posibilidad de devolver, por ejemplo,

11:48

item.title, ¿no? Item.title. Vale, por

11:52

ahora lo voy a hacer así. No es item, es

11:54

carrera.title, ¿vale? Y fíjate cómo me

11:57

va apareciendo. Está genial porque

11:58

puedes ir viendo el resultado. Así que

12:01

ahora vamos a hacer esto así y le vamos

12:03

a poner aquí que esto me lo renderice

12:06

como un le, ¿vale? Y ahora tendríamos la

12:09

posibilidad de envolver esto con una

12:11

lista desordenada. Y obviamente pues yo

12:14

aquí podría dedicarle mucho, mucho

12:17

tiempo a ver cómo podría estilar mejor

12:20

esto. El hecho de decir, ostras, es que

12:22

quiero que me aparezca exactamente en

12:25

qué fecha es, eh, si el evento está

12:27

lleno o no está lleno. Eso también se

12:29

puede mirar si es de 10 km o no es de 10

12:32

km. Pero bueno, yo por ahora lo único

12:33

que quiero es un poco que veamos cómo

12:36

cómo funciona y ya está. De hecho, para

12:38

evitar esta coma, veis que hay una coma

12:40

por aquí en medio. Aquí lo que

12:41

tendríamos que hacer es que este map

12:43

tendríamos que hacer un join y poner un

12:47

salto de línea, ¿vale? Porque por

12:49

defecto, cuando tú transformas un array

12:51

en una cadena de texto, lo que hace es

12:54

juntarlo todo con una coma y nosotros lo

12:56

que queremos es que nos junte con un

12:57

salto de texto, una salto de línea,

12:59

perdón. Entonces, la lista desordenada,

13:01

tenemos aquí la lista de cada item,

13:03

¿vale? Este es el email que me llegaría

13:05

todas las mañanas. le podría dar a

13:07

execute step, pero como te puedes

13:09

encontrar, tenemos un problema, no

13:12

tenemos credenciales. Y nos dice,

13:14

selecciona las credenciales, crear una

13:16

nueva credencial. En este caso lo que

13:19

vamos a hacer es Oout 2. Y fíjate que

13:21

necesitamos el client ID y el client

13:23

secret. Para esto tenemos que ir a la

13:26

consola de Google Cloud. Vamos a la

13:28

consola de Google Cloud, creamos un

13:31

proyecto. Yo ya tengo diferentes

13:32

proyectos creados y aquí buscas Gmail.

13:36

La habilitamos y ahora lo que

13:37

necesitamos son las credenciales. Así

13:39

que vamos aquí a credenciales y fíjate

13:42

que tenemos aquí diferentes, a lo mejor

13:44

que yo he creado en otro momento, pero

13:46

vamos a crear unos nuevos credenciales.

13:48

Y ves que tenemos ID de cliente o out la

13:50

de cuenta de servicio. Esta la vamos a

13:52

querer evitar. ID de cliente o out. Out.

13:55

Tipo de aplicación. Vamos a poner que es

13:57

aplicación web. Le decimos aquí n

14:01

integration. nos dice origen autorizado.

14:04

Pues justamente el origen autorizado lo

14:06

tenemos aquí. Fíjate que tenemos esto.

14:10

Sería también el callback porque dice

14:12

origen autorizado. Le tenemos que poner

14:15

quitar todo esto hasta aquí. No deben

14:17

contener una ruta. Lo quitamos esto y el

14:20

redireccionamiento autorizado es la URL

14:23

completa. Ahora sí, le damos a crear y

14:26

nos aparecerá tanto el client ID, que es

14:29

este de aquí, que lo vamos a copiar,

14:31

como el secreto, que ojo, cuidado, no te

14:33

copies el secreto. Así que Cline ID y

14:36

vamos a tener aquí el secreto, ¿vale? El

14:39

secreto. Y fíjate que ahora de repente

14:41

me ha aparecido este botón mágico aquí,

14:43

Sing.

14:45

Así que le damos y ahora nos dice qué

14:47

cuenta es la que quieres utilizar. Pues

14:48

le digo la de miduga@gmail.com.

14:51

Esto es porque todavía no la verificado.

14:53

¿Ves la aplicación estas editando acceso

14:55

información sensible? No voy a utilizar

14:56

esta aplicación hasta que el

14:57

desarrollador la verifique en Google. Es

14:59

que no me ha dado tiempo a verificarla,

15:01

pero en este caso, que somos nosotros

15:03

mismos, tampoco vamos a tener ningún

15:04

tipo de problema. Así que le damos a

15:06

singin otra vez, ¿vale? nos va a decir

15:08

exactamente lo mismo. Ahora en

15:10

configuración avanzada le decimos que

15:11

vale, seguimos, le damos seleccionar

15:14

todo para que tenga acceso a todo. Si no

15:16

te fías, pues dale acceso solo a aquello

15:18

que necesites. Le damos a continuar y ya

15:21

tenemos nuestra cuenta conectada. ¿Ves?

15:25

Cuenta conectada. Perfecto. Guardamos

15:27

aquí. Cierro aquí. Voy a quitar esto por

15:30

aquí. Y ahora sí, le doy otra vez a

15:32

ejecutar este paso y parece ser que ha

15:36

ido correctamente. Vamos a ver si voy

15:39

ahora a mi correo. Sí, lo tengo aquí. Y

15:42

efectivamente podemos ver que aquí lo

15:45

tengo. Hola, he encontrado 11 carreras

15:47

próximas. Échale un ojo, cursa del alba

15:49

y tal. O sea, ya está hoy enviándome un

15:51

correo. Pero seguramente te estarás

15:53

dando cuenta que esto es un poco rollo.

15:56

¿Por qué? Porque este correo es muy

15:57

aburrido y yo lo que quiero es hablar de

15:59

inteligencia artificial. Porque ya que

16:01

está de moda y siempre hay que hablar de

16:02

inteligencia artificial, vamos a

16:04

aprovechar porque es que con esto te va

16:06

a volar la cabeza. Mira, voy a quitar

16:08

esto. Voy a volver aquí por ahora. Back

16:10

to canvas. Fíjate, se ha quedado

16:12

sencillo. Y si hiciéramos un paso aquí

16:15

intermedio, fíjate que ahora está

16:17

sencillo, pero aquí en medio podemos

16:19

añadir más cositas. Le voy a dar al más.

16:22

Y ahora lo que vamos a hacer es integrar

16:24

una inteligencia artificial que lo que

16:26

haga es transformar este JSON en algo

16:30

mucho más placentero de enviar a través

16:32

de un email y que así al recibirlo pues

16:35

tenga la información sin yo necesidad de

16:37

tener que transformarla de ninguna

16:38

forma. Simplemente un HTML que pueda

16:42

mostrar y ya está. Para hacer eso, justo

16:44

aquí en medio vamos a añadir un nuevo

16:46

nodo. Vamos a buscar Open AI. Y fíjate,

16:49

aquí tenemos openi y un montón de

16:52

posibilidades. Ten en cuenta que no solo

16:54

tienes Open AI, tendrías Gemini, también

16:57

tienes de Anthropic, tienes incluso de

17:00

Oyama. Si tuvieses Oyama instalado en

17:02

local o en tu servidor, también lo

17:04

podrías utilizar totalmente gratis. Pero

17:06

en este caso vamos a utilizar Open II y

17:09

vamos a decirle que vamos a enviarle un

17:11

mensaje al modelo. También necesitamos

17:14

tener nuestras credenciales, la API Key,

17:16

Organization ID, que es opcional, base

17:18

URL. Todo esto lo necesitamos. Para

17:21

arreglar esto vamos a ir a la plataforma

17:24

de Open AI y conseguir estos datos. Nos

17:27

vamos a ir a API Keys, que lo tenemos

17:29

por aquí. Voy a crear una nueva API Key

17:32

que va a ser N8N

17:34

Test Key y le vamos a decir que tenga

17:37

todo tipo de permisos. Creamos el secret

17:39

key,

17:42

volvemos por aquí, lo pegamos y ya

17:45

estaría. Todo lo demás lo podemos dejar

17:48

exactamente igual. Le damos a save.

17:50

Vale, ya está testeando y nos dice que

17:52

ha ido bien la conexión. Perfecto. Ahora

17:55

voy a cerrar esto. ¿Cuál es el recurso?

17:59

texto, imagen, audio. Fijaos la de cosas

18:01

que podéis hacer. Es que al final esto

18:03

podéis transformarlo a un audio, podéis

18:05

hacer lo que queráis. Por ahora voy a

18:06

poner que el recurso es texto, el

18:08

mensaje al modelo es pues queremos

18:10

generar una respuesta o si queremos ver

18:13

si el texto cumple o viola algunas

18:16

políticas que nosotros tengamos. Mensaje

18:18

al modelo. ¿Cuál es el modelo que

18:20

queremos utilizar? Bueno, ahora los

18:22

busca. Podríamos utilizar de todo. Lo

18:24

más normal es que utilicéis uno moderno

18:26

porque normalmente, además, son más

18:28

baratos. En este caso vamos a utilizar

18:30

el de GPT5.1,

18:33

¿vale? Y ahora tenemos aquí tipo de lo

18:35

que le queremos decir el usuario, el rol

18:38

va a ser el del usuario, aunque aquí

18:39

podríamos poner el sistema. Tendríamos

18:42

que decirle, eres un asistente que ayuda

18:46

al usuario decidir qué carrera debe

18:51

correr próximamente, por ejemplo, ¿no? O

18:54

directamente lo que podríamos decirle es

18:57

más bien aquí podríamos utilizar ya

19:00

también los items y todo esto, ¿vale? O

19:02

sea, podremos decirle directamente que

19:03

somos el usuario. Le pasamos esto aquí

19:06

en el prompt. Fíjate que ya le pasamos

19:07

ahí el array con toda la información y

19:10

ya decirle, "Te paso toda esta

19:13

información de las próximas carreras en

19:17

Barcelona. Necesito que me construyas

19:21

el HTML para enviar un un email. Un

19:26

email. Dame solo y exclusivamente el

19:30

HTML.

19:32

No respondas nada más, ¿vale? Para que

19:34

seamos claros de lo que queremos. Y ya

19:37

con esto directamente podríamos ejecutar

19:40

el paso y ver qué es lo que hace. Vamos

19:41

a ver. Vale, pero fíjate, table, ¿vale?

19:44

Nos lo ha hecho además en formato email,

19:46

¿eh? Así que mira, ya nos lo ha mostrado

19:49

perfectamente por confirmar, por

19:50

confirmar. Aquí veo mucho por confirmar

19:53

que no lo está entendiendo muy bien. A

19:55

ver, vale. Lo que está pasando es que

19:56

fíjate que aquí me está poniendo todo

19:58

object, object. Por eso es tan

19:59

importante el result para ver la

20:01

previsualización. Esto lo arreglamos en

20:03

un momento porque lo que hacemos es

20:04

mapear todo esto y lo que vamos a hacer

20:07

de la carrera es devolver directamente

20:09

un template string. Le voy a poner que

20:11

primero ponga, por ejemplo, el nombre

20:14

que vamos a tener aquí. A ver, que no se

20:17

ve aquí no se ve justamente aquí. Ahí

20:20

está. A ver si ahora aquí esto por aquí

20:24

y aquí vamos a devolver carrera

20:28

puntitle.

20:29

Luego tendríamos aquí la distancia o

20:32

distancias carrera punsupersports

20:36

to string. Vale. Y ahora tendríamos la

20:41

fecha que debería ser carrera. Started

20:45

date ISO. Y con esto teníamos nombre,

20:49

cursa, distancias y la fecha y la hora y

20:52

tal. Vale, ahora vamos a probar otra vez

20:55

a ver si ejecutando esto ahora sí que

20:57

entiende mejor la información. Es raro

20:59

porque al principio cuando lo he

21:01

arrastrado sí que salía correctamente,

21:03

pero luego supongo que se ha dado cuenta

21:05

que estaba no estaba bien. Vale, ahora

21:07

sí, ¿no? Que parece que sí que tenemos

21:09

aquí la información. Cursa de Alba, no

21:10

sé qué. Vale, ahora sí que tenemos esto.

21:13

Muy bien, pues ahora podemos volver para

21:15

atrás. Back to canvas. Esto ya lo

21:17

tenemos todo preparado. Vamos a mover

21:20

esto un poquito por aquí. Y esto ahora

21:21

cambia porque fíjate, además que le

21:23

podríamos añadir herramientas. Voy a

21:25

mover todo esto un poco para acá. Ahora,

21:28

aquí en el mensaje que antes estaba

21:30

utilizando esto, ahora se queja. ¿Por

21:32

qué se queja? Porque esto, ¿ves? Esto es

21:35

una función, añade no sé qué. Es que

21:37

esto ya no lo necesitamos. Ahora, en

21:39

lugar de decir que todo el mensaje sea

21:41

esto, fíjate que ahora el output que

21:44

tengo aquí es lo que vamos a traer y lo

21:46

mejor es que lo puedes arrastrar. Este

21:48

texto lo vamos a poner por aquí. Tenemos

21:50

aquí el HTML con la tabla, con toda la

21:52

información. Obviamente sería un milagro

21:55

que se viese correctamente teniendo en

21:57

cuenta que estamos enviando un email,

21:59

pero vamos a ver. Ejecutamos este paso.

22:02

Ahora parece ser que me ha llegado el

22:04

correo. Vamos a buscar aquí en Gmail. No

22:06

está nada mal. próximas carreras en

22:09

Barcelona. Pues aquí ya tenemos esto.

22:11

Fíjate que yo no me tengo que preocupar

22:12

absolutamente nada porque con

22:13

inteligencia artificial pues me lo ha me

22:16

lo ha pues me ha creado un correo

22:18

directamente y ya lo tenemos aquí. O

22:21

sea, que con esto ya hemos aprendido

22:22

cómo podemos hacer nuestro primer flujo

22:25

de trabajo. Pero te digo una cosa, si me

22:27

dejáis más de 2,000 likes, yo me

22:30

comprometo a hacer un curso más completo

22:33

de flujos de trabajo con N8N para que

22:36

veamos más de una automatización con más

22:39

cositas, con más agentes, con

22:41

condicionales, no sé, con con cosas con

22:44

cosas. De hecho, me podéis dar ideas en

22:45

los comentarios, las tendré en cuenta y

22:48

si llegamos a esa cifra mágica, vamos a

22:51

hacer un curso más completo, ¿vale?

22:53

Sabes que tienes las ofertas de

22:55

Hostinger para el VPS. La URL con todas

22:58

las ofertas es hostinger.com/midvps.

23:02

Y recuerda que tienes además las ofertas

23:05

de Black Friday. Si ves este vídeo más

23:06

tarde, pues ya no las tienes. ¿Qué

23:08

quieres que te diga? No le puedo hacer

23:09

nada. Pero mientras aprovecha porque

23:12

tienes unos precios que de verdad son

23:15

espectaculares. El servidor KVM2 lo

23:18

tienes por 599 € al mes, que lo pagas

23:22

directamente de 2 años directamente,

23:25

pero es que además puedes utilizar mi

23:26

cupón Midu para conseguir un 10% extra.

23:29

Y vamos, es que te queda por menos de

23:32

130 € durante 2 años, un pago de 130 € y

23:37

tienes un servidor durante 2 años, un

23:39

VPS para ti que tienes además 8 GB de

23:41

memoria RAM, 100 GB de espacio en disco,

23:45

que no es disco lento, es NVME y además

23:48

un ancho de banda de transferencia de 8

23:50

teras. Es que no te lo terminas, no te

23:52

lo terminas. Así que nada, espero y

23:54

deseo que te haya gustado este pedazo de

23:56

vídeo y si es así, deja tu like y

23:59

suscríbete, porque más de la mitad de la

24:01

gente que ve este canal no se suscribe y

24:04

eso es un error, así que no te lo

24:05

pierdas. Venga, amigos, nos vemos el

24:06

siguiente.

Video Information

YouTube ID: yP0PM-fpnXo
Added: Jan 18, 2026
Last Updated: 1 month ago