CursosEmpresasBlogLiveConfPrecios

Consumiendo API

Clase 21 de 26 • Curso de Asincronismo con JavaScript

Clase anteriorSiguiente clase

Contenido del curso

Introducción
  • 1
    Lo que aprenderás en este curso

    Lo que aprenderás en este curso

    01:34
  • 2
    Qué es el asincronismo

    Qué es el asincronismo

    09:25
  • 3
    Event Loop

    Event Loop

    11:13
  • 4
    Iniciando a programar con JavaScript

    Iniciando a programar con JavaScript

    02:59
Callbacks
  • 5
    Configuración

    Configuración

    10:23
  • 6
    Qué son los Callbacks

    Qué son los Callbacks

    14:56
  • 7

    Playground: Ejecuta un callback con 2s de demora

    00:00
  • 8
    XMLHTTPRequest

    XMLHTTPRequest

    15:03
  • 9
    Fetch data

    Fetch data

    17:44
  • 10
    Callback hell

    Callback hell

    06:56
Promesas
  • 11
    Qué son las promesas

    Qué son las promesas

    11:54
  • 12

    Playground: Crea una función de delay que soporte asincronismo

    00:00
  • 13
    Fetch

    Fetch

    16:12
  • 14
    Fetch POST

    Fetch POST

    14:55
Async Await
  • 15
    Funciones asíncronas

    Funciones asíncronas

    10:07
  • 16
    Try and catch

    Try and catch

    11:51
  • 17

    Playground: Captura el error de una petición

    00:00
  • 18
    ¿Cómo enfrentar los errores?

    ¿Cómo enfrentar los errores?

    03:42
Generadores
  • 19
    Generators

    Generators

    08:06
Proyecto CV
  • 20
    Proyecto del curso

    Proyecto del curso

    11:48
  • 21
    Consumiendo API

    Consumiendo API

    19:24
  • 22
    Desplegando el proyecto

    Desplegando el proyecto

    16:45
  • 23

    Playground: Crea una utilidad para hacer peticiones

    00:00
Nunca pares de crear
  • 24
    Conclusión

    Conclusión

    03:09
  • 25
    ¿Qué camino tomar para seguir aprendiendo?

    ¿Qué camino tomar para seguir aprendiendo?

    04:12
  • 26

    Autoevaluación de Proyecto: Creación de Landing Page

    00:44
    Maria Gabriela Rodriguez Cuevas

    Maria Gabriela Rodriguez Cuevas

    student•
    hace 3 años

    📀 𝗖𝗹𝗮𝘀𝗲 #𝟭𝟴: 𝗖𝗼𝗻𝘀𝘂𝗺𝗶𝗲𝗻𝗱𝗼 𝗔𝗣𝗜 𝟭𝟴/𝟮𝟭 📀 . 🔧 ++Continuando con la lógica de la landing:++ .

    • Entra a https://rapidapi.com/ y creamos una cuenta al dar click en ++Sign Up++ y seguir los pasos.
    • El profesor usará la API de youtube, así que en el buscador puedes colocar la API que quieras usar. La versión de la API de youtube que vamos a usar es ++YouTube V3++.
    • Una vez seleccionada la API, nos mostrará 3 columnas con los servicios y herramientas que están disponibles para la API, para el ejemplo se selecciona Channel Videos para obtener los últimos vídeos publicados. En la columna central, se debe indicar la id del canal que queremos mostrar en la landing, éste se obtiene en la url de youtube después de channel/, por ejemplo para el canal de youtube del profesor: https://www.youtube.com/channel/UC9k0tTsh_qStx0HPuPftSsg el id del canal es UC9k0tTsh_qStx0HPuPftSsg ese es el que se debe pegar en el parámetro ++channeld++.
    • Más abajo, se puede configurar el máximo de vídeos que se desea obtener (máximo hasta 50), para el ejemplo se colocó 9.
    • En la tercera columna, se selecciona en la lista el lenguaje de programación y el método que se quiere usar, en este caso: JavaScript → fetch con ésto aparecerá la plantilla del código.
    • Para visualizar la salida al testear la plantilla, en la columna del medio al dar click en Test Endpoint, la pestaña Results se activa y podemos conocer cada uno de los elementos de los objetos, esa información nos será útil para nuestro el código.
    • Copiar la plantilla e ir al editor VSC en la ruta src/assets y pegarlo en main.js
    • La url que se pasa por argumento a la función fetch, la cambiamos al inicio del código para declarar la constante API:
    const API = 'https://youtube-v31.p.rapidapi.com/search?channelId=UCw05fUBPwmpu-ehXFMqfdMw&part=snippet%2Cid&order=date&maxResults=9';

    La variable options si la dejamos igual, tal cual como lo muestra rapidapi:

    const options = { method: 'GET', headers: { 'X-RapidAPI-Key': '6540473ff4mshfbdbb244ab22f99p10c708jsnfd294791e746', 'X-RapidAPI-Host': 'youtube-v31.p.rapidapi.com' } };

    Como vamos a usar el ++asyn/await++, borramos el código de fetch estructurado con then y catch. En lugar de ello, usamos la lógica que hicimos en ejemplos anteriores:

    //Lógica de async: ir por los datos, luego esperar por ellos y finalmente retornarlos hacia el usuario async function fetchData(urlApi) { //siempre async antes de function const response = await fetch(urlApi, options); //hacemos uso del fetch() y solo por esta vez le pasamos la opciones const data = await response.json(); //estructura de los datos transformandolos en json return data; //retorna la información de la API que estamos solicitando }

    Ahora vamos usar un nuevo concepto: ++una función que se invoca a sí misma++; con JavaScript podemos tener funciones anónimas que permitan llamarse automáticamente, la estructura cuenta con la palabra reservada **async **y con funciones arrows:

    (async () => { //Dentro implementamos la lógica necesaria para hacer el llamado a la API, obtener los elementos y mostrarlos en html //Se implementa try y catch try{ } catch { } })();

    Dentro de try{} estará el llamado de la API y el template de html para interpretar los datos a iterar por cada objeto, en este caso, cuando analizamos la salida de la API en rapidapi, hay una jerarquía de los datos, están los 9 “items” del 0 al 8 para la posición de cada vídeo, luego el “snippet” de cada item, luego “thumbnails” y éste a su vez los tamaños de la imagen (nos interesa con la más alta resolución “high”), también nos interesa mostrar la descripción “description” y nombre “title” de cada vídeo:

    (async () => { try { const videos = await fetchData(API); let view = ` ${videos.items.map(video => ` <div class="group relative"> <div class="w-full bg-gray-200 aspect-w-1 aspect-h-1 rounded-md overflow-hidden group-hover:opacity-75 lg:aspect-none"> <img src="${video.snippet.thumbnails.high.url}" alt="${video.snippet.description}" class="w-full"> </div> <div class="mt-4 flex justify-between"> <h3 class="text-sm text-gray-700" style="color:white;"> <span aria-hidden="true" class="absolute inset-0"></span> ${video.snippet.title} </h4> </div> </div> `).slice(0, 4).join('')} `; content.innerHTML = view; } catch { } })();
    • Si quieres saber más del ++método map++, en el enlace hay ejemplos: aquí
      • Para el ++método slice++: aquí
      • Para el ++método join++: aquí
    • En index.html buscamos el comentario de <!-- content --> para agregar el id de **++content ++**y pueda mostrar los vídeos en la landing, para ello, borramos el div después del comentario, incluyendo su contenido, queda así:
    <div class="mt-6 grid grid-cols-1 gap-y-10 gap-x-6 sm:grid-cols-2 lg:grid-cols-4 xl:gap-x-8" id="content"> <!-- content --> </div>

    Y ahora para que pueda leer la lógica de main, dado que el id lo llamamos content, en el archivo main agregamos la referencia content:

    const content = null || document.getElementById('content');
      Lucas Aristizábal

      Lucas Aristizábal

      student•
      hace 3 años

      es normal que la parte donde ya pones la info en el innerHTML o el view te lo ponga como string? siento que me está generando un error por eso y no he podido solucionarlo ayudita?

      Maria Gabriela Rodriguez Cuevas

      Maria Gabriela Rodriguez Cuevas

      student•
      hace 3 años

      Hola Lucas, no había visto tu mensaje ¿te sigue generando el mismo error?

    Juan Nicolás Cabrera

    Juan Nicolás Cabrera

    student•
    hace 3 años

    puede que haya mejorado este curso a comparacion con el anterior pero lo tienen que volver a hacer una tercera vez, en español

      Yuliam Rivera González

      Yuliam Rivera González

      student•
      hace 3 años

      the same jajajajajaja

      Alberto Depablos

      Alberto Depablos

      student•
      hace 2 años

      JAJAJAJAJAJA

    Yohana Alexandra Triviño Vasquez

    Yohana Alexandra Triviño Vasquez

    student•
    hace 3 años

    Una buena sugerencia para platzi es que los cursos siempre piensen que estan hablando a gente que no sabe nada, en particular hago muchos cursos y leo y me documento pero a veces no entiendo lo que el profe explica y hay algunos profes que se me dificulta coger la linea de lo que hacen. El curso de API REST con express fue super bueno, el profesor alli me aclaro muchisimos vacios que creo que tenia, este curso en particular tambien ha sido muy bueno pero hay momentos donde se pierde uno con el profe, es un punto por mejorar porque con el profe oscar en los cursos que he iniciado me ha pasado. He notado que el profe tiene que leer mucho algun telepronter, tal vez sea eso, cuando uno enseña algo que domina y mas conversadito fluye mejor.

    Anderson Parra

    Anderson Parra

    student•
    hace 2 años

    solo quiero terminar este curso para buscar otro que me explique mejor.

    Jesús Álvarez

    Jesús Álvarez

    student•
    hace 3 años

    Si no tienes imagen para colocar en el hero pueden usar este enlace https://picsum.photos/500 les dará una imagen distinta cada vez que recarguen la página

    Kalet Adonay Chavez Alas

    Kalet Adonay Chavez Alas

    student•
    hace 3 años

    funciones anonimas autoejecutables!!!

      Andres Prieto

      Andres Prieto

      student•
      hace 3 años

      Checa esto, https://developer.mozilla.org/es/docs/Glossary/IIFE

    Andres Gallego

    Andres Gallego

    student•
    hace 3 años

    Les recomiendo hacer una copia del resultado de la API, pues al final si les pasa algún error o si están haciendo mejoras les va a sacar un status of 429 (Too Many Requests). Esto es porque la API tiene un límite de 40 peticiones MENSUALES,

    JUAN DAVID MARIN URIBE

    JUAN DAVID MARIN URIBE

    student•
    hace 3 años

    Este es el codigo de HTML que hace falta en el minuto 13:20

    <div class="group relative"> <div class="w-full bg-gray-200 aspect-w-1 aspect-h-1 rouded-md overflow-hidden group-hover:opacity-75 lg:aspect-none" > <img src="" alt="" class="w-full" /> </div> <div class="mt-4 flex justify-between"> <h3 class="text-sm text-gray-700"> <span aria-hidden="true" class="absolute inset-0"></span> Title </h4> </div> </div>
      Julian David Alzate Cuervo

      Julian David Alzate Cuervo

      student•
      hace 3 años

      héroe sin capa

      Israel Churata

      Israel Churata

      student•
      hace 2 años

      Hay un error al cerrar <h4>, lo estas cerrando con </h5>, lo cual debe ser con el mismo </h4>

    David Rangel

    David Rangel

    student•
    hace 2 años

    Otra forma de averiguar el channel ID es la siguiente: 1. Ingresas al canal de tu elección, en mi caso el de la NASA: https://www.youtube.com/@nasa_es

    2. Le das click a su descripción (señalado con la línea roja):

    3. Das click en compartir canal:
    4. Seleccionas la opción "Copiar ID del Canal"
    Y listo, ¡celebra! Ya tienes el ID de canal.
      Leidy Tatiana Rico Gamboa

      Leidy Tatiana Rico Gamboa

      student•
      hace 6 meses

      muchas gracias yo buscando en google como encontrarlo y no salia Muchas Gracias

    Daniel Velasco

    Daniel Velasco

    student•
    hace 3 años

    Este es el ID de el profesor Oscar ( UC9k0tTsh_qStx0HPuPftSsg )

    German Cavani

    German Cavani

    student•
    hace 3 años

    Aquí esta la API que utiliza el profesor en este video: Youtube V3

    Luis Eduardo

    Luis Eduardo

    student•
    hace 3 años

    Decidi construir mi propia API para poner en practica mis habilidades de backend y tener un portafolio mas completo. Me va a tocar hcaer mucho trabajo :s pero aqui pueden ir viendo el progreso de este proyecto.

    Decidi hacer un blog financiero (estudio finanzas en la universidad) que incluya un blog, seccion de noticias, calculadoras y una seccion de contacto. Deseenme suerte.

    https://github.com/EsquizoDEV/financeBlog

    Tambien ire comentando por aqui algunos avances:

    Dejo el primer avance, super importante primero ir definiendo que queremos que haga nuestra aplicacion, antes de pasar a programar como locos, entonces es lo que estoy haciendo.

    La página tendrá 3 secciones principales, un blog, noticias, una sección de calculadoras y una sección de contacto. El blog, consumirá el contenido principal (texto e imágenes) desde una API construida en NodeJS, express y utilizando una base de datos SQL, esto nos permitirá crear una misma estructura para el frontend del blog y simplemente consumir los datos sin perder el estilo. Para el blog la API tendrá varios niveles, un nivel para obtener información de todos los blogs actuales, que serán utilizados para mostrarse en un carrusel, el API debe responder con información general de cada blog (Blog Nivel 0 Especificacion). También habrá un nivel para obtener a el detalle de un blog, la estructura de respuesta de este request, tiene que ser la correcta para el renderizado adecuado del frontend. En el frontend, nuestro Javascript, necesita saber la estructura de esa entrada de blog, es decir, necesitamos saber el titulo principal, la introducción, la cantidad de subtítulos que hay a lo largo del blog, y los contenidos relativos a cada subtitulo, así también, cada sección puede ir o no acompañada de una imagen, que tendrá que aparecer entre cada cambio de sección. Para ver mejor un ejemplo de respuesta, ir a la especificación de Blog Api Nivel 1. Blog API Nivel 0 especificacion: Rutas, métodos y ejemplos de respuesta: Ruta: api/ V1/blogs Method: GET Res example: [{ “Title”: ”The first entry”, “ShortContent”:”The short content string”, “Date”: 27/05/22, “Id”: “123456” }] Blog API nivel 1 especificación: Ruta: api/v1/blog/:id Method: GET Res example: { “Title”: “Blog title” “MainIMG”: “IMG SRC”, “Intro”: “String intro”, “SubContent”: [{ “Title”: “Subtitle 1”, “Content”: “Content string”, “Image”: “IMG SRC” }] }

    Cecilio Cauich

    Cecilio Cauich

    student•
    hace 3 años

    Para los que igual que un servidor solo tienen un idea no muy clara sobre lo que es una api. Aquí unos links que les puede ayudar a tender mejor. link1 link2

    Gabriela Ramírez

    Gabriela Ramírez

    student•
    hace 3 años

    Me encanta esta clase, es un buen método sin hacer tantos id en el HTML, solo un getElementById y esta todo

      Andres Prieto

      Andres Prieto

      student•
      hace 3 años

      Es buena Práctica usar querySelector(), te facilita la vida

      PD: Para mí Óscar es uno de los mejores instructores de Platzi; cuando vez uno de sus cursos eso suele suceder

    Jeans Pierre Monrroy Caicedo

    Jeans Pierre Monrroy Caicedo

    student•
    hace 3 años

    genial curso

    Jorman Urbina

    Jorman Urbina

    student•
    hace 3 años

    Debemos tener en cuenta que en el ambito laboral necesitaremos buscar informacion de manera inmediata si no la recordamos, aprovechemos los vacios de informacion para buscarla nosotros mismos. somos responsables de nuestro aprendizaje , aunque si , la explicacion esta bastante intensa y poco fluida

    Samuel Suárez

    Samuel Suárez

    student•
    hace 3 años

    Esta clase me volo la cabeza. Hice todo lo que dijo el profesor pero no entendi muy bien el porque de todo eso. No se si es mi culpa o es que el curso va muy rapido... pero me hubiese gustado que explicaran detalladamente el porque de cada cosa en lugar de solo ir al grano

      Andres Dominguez

      Andres Dominguez

      student•
      hace 2 años

      Tranquilo bro, esto es backend, yo igual estaba tratando de implementar una API de typeform para implementar en una App Web que está en construcción (muy a futuro) de un emprendimiento familiar. La metodología de estos cursos es mala la verdad, toca estar buscando, leyendo, estudiando de varios sitios a la vez. Lo cual entendería en una plataforma gratuita, no en una de SUSCRIPCIÓN.

    Fernando Meneses

    Fernando Meneses

    student•
    hace 3 años

    🙋‍♂️ Quiero compartir un link donde resume:

    • Callabacks

    • Promesas

    • Async await

    de manera 👉 ++simple y concreta++ 👈 .

    spoiler. Minuto 11:43 ** ¡funciones anonimas autoejecutables!** hagame el... favor. ++Se dieron garra++. Bien por el profe y su dominio del tema, mal por que los conceptos se asumen que ya "se saben" . Este curso desentona de todos los que he tomado. Mucho tecnisismo y teoria nunca antes vista

    Anthony Quintero

    Anthony Quintero

    student•
    hace 3 años

    Esta plataforma de RapidApi es increible!

    Joaquin Pinto

    Joaquin Pinto

    student•
    hace un año

    ACTUALIZACIÓN OCTUBRE-2024:

    RapidAPI: - Cambió la interfaz para hacer test de la api, ahora es de paga :'(. - El input para poner el channel no reconoce el nuevo formato de channels de youtube, ahora es : @channel, por ejemplo: @platzi. - el formato para conseguir channels en YouTube es rebuscado, un poco complicado.

    CONCLUSIÓN: usen otra API para terminar bien el curso.

Escuelas

  • Desarrollo Web
    • Fundamentos del Desarrollo Web Profesional
    • Diseño y Desarrollo Frontend
    • Desarrollo Frontend con JavaScript
    • Desarrollo Frontend con Vue.js
    • Desarrollo Frontend con Angular
    • Desarrollo Frontend con React.js
    • Desarrollo Backend con Node.js
    • Desarrollo Backend con Python
    • Desarrollo Backend con Java
    • Desarrollo Backend con PHP
    • Desarrollo Backend con Ruby
    • Bases de Datos para Web
    • Seguridad Web & API
    • Testing Automatizado y QA para Web
    • Arquitecturas Web Modernas y Escalabilidad
    • DevOps y Cloud para Desarrolladores Web
  • English Academy
    • Inglés Básico A1
    • Inglés Básico A2
    • Inglés Intermedio B1
    • Inglés Intermedio Alto B2
    • Inglés Avanzado C1
    • Inglés para Propósitos Específicos
    • Inglés de Negocios
  • Marketing Digital
    • Fundamentos de Marketing Digital
    • Marketing de Contenidos y Redacción Persuasiva
    • SEO y Posicionamiento Web
    • Social Media Marketing y Community Management
    • Publicidad Digital y Paid Media
    • Analítica Digital y Optimización (CRO)
    • Estrategia de Marketing y Growth
    • Marketing de Marca y Comunicación Estratégica
    • Marketing para E-commerce
    • Marketing B2B
    • Inteligencia Artificial Aplicada al Marketing
    • Automatización del Marketing
    • Marca Personal y Marketing Freelance
    • Ventas y Experiencia del Cliente
    • Creación de Contenido para Redes Sociales
  • Inteligencia Artificial y Data Science
    • Fundamentos de Data Science y AI
    • Análisis y Visualización de Datos
    • Machine Learning y Deep Learning
    • Data Engineer
    • Inteligencia Artificial para la Productividad
    • Desarrollo de Aplicaciones con IA
    • AI Software Engineer
  • Ciberseguridad
    • Fundamentos de Ciberseguridad
    • Hacking Ético y Pentesting (Red Team)
    • Análisis de Malware e Ingeniería Forense
    • Seguridad Defensiva y Cumplimiento (Blue Team)
    • Ciberseguridad Estratégica
  • Liderazgo y Habilidades Blandas
    • Fundamentos de Habilidades Profesionales
    • Liderazgo y Gestión de Equipos
    • Comunicación Avanzada y Oratoria
    • Negociación y Resolución de Conflictos
    • Inteligencia Emocional y Autogestión
    • Productividad y Herramientas Digitales
    • Gestión de Proyectos y Metodologías Ágiles
    • Desarrollo de Carrera y Marca Personal
    • Diversidad, Inclusión y Entorno Laboral Saludable
    • Filosofía y Estrategia para Líderes
  • Diseño de Producto y UX
    • Fundamentos de Diseño UX/UI
    • Investigación de Usuarios (UX Research)
    • Arquitectura de Información y Usabilidad
    • Diseño de Interfaces y Prototipado (UI Design)
    • Sistemas de Diseño y DesignOps
    • Redacción UX (UX Writing)
    • Creatividad e Innovación en Diseño
    • Diseño Accesible e Inclusivo
    • Diseño Asistido por Inteligencia Artificial
    • Gestión de Producto y Liderazgo en Diseño
    • Diseño de Interacciones Emergentes (VUI/VR)
    • Desarrollo Web para Diseñadores
    • Diseño y Prototipado No-Code
  • Contenido Audiovisual
    • Fundamentos de Producción Audiovisual
    • Producción de Video para Plataformas Digitales
    • Producción de Audio y Podcast
    • Fotografía y Diseño Gráfico para Contenido Digital
    • Motion Graphics y Animación
    • Contenido Interactivo y Realidad Aumentada
    • Estrategia, Marketing y Monetización de Contenidos
  • Desarrollo Móvil
    • Fundamentos de Desarrollo Móvil
    • Desarrollo Nativo Android con Kotlin
    • Desarrollo Nativo iOS con Swift
    • Desarrollo Multiplataforma con React Native
    • Desarrollo Multiplataforma con Flutter
    • Arquitectura y Patrones de Diseño Móvil
    • Integración de APIs y Persistencia Móvil
    • Testing y Despliegue en Móvil
    • Diseño UX/UI para Móviles
  • Diseño Gráfico y Arte Digital
    • Fundamentos del Diseño Gráfico y Digital
    • Diseño de Identidad Visual y Branding
    • Ilustración Digital y Arte Conceptual
    • Diseño Editorial y de Empaques
    • Motion Graphics y Animación 3D
    • Diseño Gráfico Asistido por Inteligencia Artificial
    • Creatividad e Innovación en Diseño
  • Programación
    • Fundamentos de Programación e Ingeniería de Software
    • Herramientas de IA para el trabajo
    • Matemáticas para Programación
    • Programación con Python
    • Programación con JavaScript
    • Programación con TypeScript
    • Programación Orientada a Objetos con Java
    • Desarrollo con C# y .NET
    • Programación con PHP
    • Programación con Go y Rust
    • Programación Móvil con Swift y Kotlin
    • Programación con C y C++
    • Administración Básica de Servidores Linux
  • Negocios
    • Fundamentos de Negocios y Emprendimiento
    • Estrategia y Crecimiento Empresarial
    • Finanzas Personales y Corporativas
    • Inversión en Mercados Financieros
    • Ventas, CRM y Experiencia del Cliente
    • Operaciones, Logística y E-commerce
    • Gestión de Proyectos y Metodologías Ágiles
    • Aspectos Legales y Cumplimiento
    • Habilidades Directivas y Crecimiento Profesional
    • Diversidad e Inclusión en el Entorno Laboral
    • Herramientas Digitales y Automatización para Negocios
  • Blockchain y Web3
    • Fundamentos de Blockchain y Web3
    • Desarrollo de Smart Contracts y dApps
    • Finanzas Descentralizadas (DeFi)
    • NFTs y Economía de Creadores
    • Seguridad Blockchain
    • Ecosistemas Blockchain Alternativos (No-EVM)
    • Producto, Marketing y Legal en Web3
  • Recursos Humanos
    • Fundamentos y Cultura Organizacional en RRHH
    • Atracción y Selección de Talento
    • Cultura y Employee Experience
    • Gestión y Desarrollo de Talento
    • Desarrollo y Evaluación de Liderazgo
    • Diversidad, Equidad e Inclusión
    • AI y Automatización en Recursos Humanos
    • Tecnología y Automatización en RRHH
  • Finanzas e Inversiones
    • Fundamentos de Finanzas Personales y Corporativas
    • Análisis y Valoración Financiera
    • Inversión y Mercados de Capitales
    • Finanzas Descentralizadas (DeFi) y Criptoactivos
    • Finanzas y Estrategia para Startups
    • Inteligencia Artificial Aplicada a Finanzas
    • Domina Excel
    • Financial Analyst
    • Conseguir trabajo en Finanzas e Inversiones
  • Startups
    • Fundamentos y Validación de Ideas
    • Estrategia de Negocio y Product-Market Fit
    • Desarrollo de Producto y Operaciones Lean
    • Finanzas, Legal y Fundraising
    • Marketing, Ventas y Growth para Startups
    • Cultura, Talento y Liderazgo
    • Finanzas y Operaciones en Ecommerce
    • Startups Web3 y Blockchain
    • Startups con Impacto Social
    • Expansión y Ecosistema Startup
  • Cloud Computing y DevOps
    • Fundamentos de Cloud y DevOps
    • Administración de Servidores Linux
    • Contenerización y Orquestación
    • Infraestructura como Código (IaC) y CI/CD
    • Amazon Web Services
    • Microsoft Azure
    • Serverless y Observabilidad
    • Certificaciones Cloud (Preparación)
    • Plataforma Cloud GCP

Platzi y comunidad

  • Platzi Business
  • Live Classes
  • Lanzamientos
  • Executive Program
  • Trabaja con nosotros
  • Podcast

Recursos

  • Manual de Marca

Soporte

  • Preguntas Frecuentes
  • Contáctanos

Legal

  • Términos y Condiciones
  • Privacidad
  • Tyc promociones
Reconocimientos
Reconocimientos
Logo reconocimientoTop 40 Mejores EdTech del mundo · 2024
Logo reconocimientoPrimera Startup Latina admitida en YC · 2014
Logo reconocimientoPrimera Startup EdTech · 2018
Logo reconocimientoCEO Ganador Medalla por la Educación T4 & HP · 2024
Logo reconocimientoCEO Mejor Emprendedor del año · 2024
De LATAM conpara el mundo
YoutubeInstagramLinkedInTikTokFacebookX (Twitter)Threads