¿Qué es una API? - La mejor explicación en español

00:12:11
https://www.youtube.com/watch?v=u2Ms34GE14U

概要

TLDREl video ofrece una introducción a las APIs, explicando su definición, importancia y cómo facilitan la comunicación entre aplicaciones. A través de ejemplos de aplicaciones como Uber y e-commerce, se ilustra cómo acceder a servicios ya existentes, evitando desarrollos desde cero. Se abordan términos clave como interfaz, REST, y los tipos de APIs. Además, se discuten los formatos de datos más utilizados (JSON y XML) y los métodos HTTP que permiten interactuar con las APIs. Asimismo, se resaltan las mejores prácticas, como el testeo y la documentación, y se invita a un workshop sobre el desarrollo de APIs.

収穫

  • 💡 Las APIs permiten la comunicación entre aplicaciones.
  • 🌍 Ejemplos como Google Maps simplifican el desarrollo.
  • 📊 JSON es el formato de datos más usado hoy.
  • 🔒 APIs privadas requieren autenticación para acceso.
  • 📝 La documentación es esencial para facilitar el uso de APIs.
  • 🛠️ Métodos HTTP básicos incluyen GET, POST, PUT y DELETE.
  • 🚀 Las APIs pueden ser locales o remotas.
  • 🔗 REST es una arquitectura común para APIs.
  • 🔍 Los códigos de estado HTTP ayudan a entender las respuestas.
  • 🎓 Buenas prácticas garantizan un desarrollo eficiente y seguro.

タイムライン

  • 00:00:00 - 00:05:00

    Las APIs son interfaces que permiten la comunicación entre diferentes aplicaciones, facilitando la integración de funcionalidades complejas sin necesidad de desarrollarlas desde cero. Ejemplos como utilizar Google Maps para una aplicación de transporte o pasarelas de pago para un ecommerce ilustran cómo se puede aprovechar el trabajo previo de otras empresas. Además, se menciona la importancia de la integración en aplicaciones como Slack, donde las APIs permiten un centro de control funcional y poderoso para las organizaciones.

  • 00:05:00 - 00:12:11

    En cuanto a la terminología, se explica que las APIs pueden ser locales o remotas, y que estas últimas suelen utilizar servicios web mediante protocolos como HTTP. Se destacan los métodos HTTP (GET, POST, PUT, DELETE) que permiten la interacción con la API, así como los códigos de respuesta que informan sobre el estado de las solicitudes. Finalmente, se abordan buenas prácticas a seguir en el desarrollo de APIs, tales como la documentación adecuada, la seguridad, el manejo de recursos y la importancia de realizar pruebas para asegurar su correcto funcionamiento.

マインドマップ

ビデオQ&A

  • ¿Qué es una API?

    Una API es una interfaz que permite que diferentes aplicaciones y programas de software se comuniquen entre sí y compartan datos.

  • ¿Por qué usar APIs en el desarrollo de aplicaciones?

    Usar APIs permite aprovechar desarrollos previos y servicios existentes, ahorrando tiempo y costos en el desarrollo.

  • ¿Cuáles son los tipos de APIs?

    Las APIs pueden ser públicas, privadas, locales o remotas.

  • ¿Qué formatos de datos se utilizan en las APIs?

    Los formatos más comunes son JSON y XML.

  • ¿Qué son los códigos de estado HTTP y para qué sirven?

    Los códigos de estado HTTP indican el resultado de una solicitud, como éxito o error.

  • ¿Cuáles son algunos métodos HTTP comunes?

    GET (obtener información), POST (enviar nueva información), PUT (actualizar información) y DELETE (eliminar información).

  • ¿Qué es REST?

    REST es una arquitectura que permite el intercambio de datos y recursos a través de HTTP.

  • ¿Por qué es importante la documentación en las APIs?

    La documentación es esencial para que otros desarrolladores puedan entender y consumir correctamente la API.

ビデオをもっと見る

AIを活用したYouTubeの無料動画要約に即アクセス!
字幕
es
オートスクロール:
  • 00:00:04
    hablemos hoy de apis que son las apis
  • 00:00:06
    bueno para explicártelo te voy a poner
  • 00:00:08
    un par de ejemplos imagínate que tú
  • 00:00:10
    quieres desarrollar una aplicación tipo
  • 00:00:11
    uber es decir de transporte y que haga
  • 00:00:14
    el seguimiento de dónde está el carro en
  • 00:00:15
    la ciudad
  • 00:00:16
    necesitas mapas necesitas
  • 00:00:18
    geolocalización ahora los mapas como los
  • 00:00:21
    harías necesitarías de una tonelada una
  • 00:00:24
    tonelada de billetes para poder
  • 00:00:26
    desarrollar los mapas desde cero así que
  • 00:00:28
    lo mejor es conectarte a google maps y
  • 00:00:31
    utilizar los mapas de ellos ellos han
  • 00:00:33
    gastado muchísimo dinero imágenes
  • 00:00:35
    satelitales de aviones de helicópteros
  • 00:00:37
    carros sin conductor gente con cámaras
  • 00:00:39
    en la cabeza es enorme lo que ellos han
  • 00:00:42
    hecho así que tú ya puedes aprovechar
  • 00:00:43
    todo ese desarrollo para tu aplicación
  • 00:00:45
    otro ejemplo vas a hacer un ecommerce y
  • 00:00:48
    necesitás cobrar por internet entonces
  • 00:00:50
    imagínate desarrollar toda la tecnología
  • 00:00:52
    para hacer cobros desde cero es tremendo
  • 00:00:55
    entonces mejor te conectas a una
  • 00:00:58
    pasarela de pago tipo paypal strike o lo
  • 00:01:01
    que haya en tu país y ya está entonces
  • 00:01:03
    aprovechas el desarrollo que han hecho
  • 00:01:05
    otras empresas para tu aplicación ese es
  • 00:01:09
    el concepto de apis
  • 00:01:10
    incluso es la que es la que es un chat
  • 00:01:12
    para empresas para organizaciones pero
  • 00:01:14
    uno de sus más grandes aciertos es la
  • 00:01:16
    gran integración que tiene con otras
  • 00:01:17
    aplicaciones slack lo puedes integrar
  • 00:01:19
    prácticamente con todo de una manera
  • 00:01:21
    bastante sencilla así que se convierte
  • 00:01:23
    en una especie de centro de control más
  • 00:01:26
    que un simple chat y eso lo hace muy
  • 00:01:28
    poderoso así que hacer que tu aplicación
  • 00:01:31
    pueda conectarse con otras le da
  • 00:01:33
    muchísimo más poder que una simple
  • 00:01:36
    aplicación aislada y ese es el concepto
  • 00:01:39
    de apis así que ahora sí vamos a
  • 00:01:41
    ponernos técnicos y ya no ejemplos vamos
  • 00:01:44
    a hablar de la terminología qué términos
  • 00:01:45
    se usan en este mundo de las apis en
  • 00:01:47
    primer lugar interfaz que es una
  • 00:01:50
    interfaz una capa de abstracción para
  • 00:01:51
    que dos sistemas se comuniquen como así
  • 00:01:54
    bueno
  • 00:01:55
    una capa de extracción permite que tú
  • 00:01:56
    interactúes con un sistema sin necesidad
  • 00:01:59
    de saber qué está pasando por debajo por
  • 00:02:01
    ejemplo ahí está la imagen del volante
  • 00:02:03
    de un auto de un timón
  • 00:02:05
    tú puedes girar el volante y el auto
  • 00:02:07
    gira en la dirección que tú quieres el
  • 00:02:09
    volante tú no necesitas saber la
  • 00:02:10
    mecánica que está por detrás es un
  • 00:02:12
    ejemplo de interacción con una capa de
  • 00:02:14
    abstracción o un formulario de login
  • 00:02:16
    tú pones tu usuario y contraseña haces
  • 00:02:18
    click en iniciar sesión e ingresas no
  • 00:02:21
    necesitas saber por debajo que estuvo
  • 00:02:22
    pasando esa es una interfaz ahora bien
  • 00:02:26
    una app y es una interfaz pero es
  • 00:02:28
    application programming interface es
  • 00:02:30
    decir una interfaz para que se
  • 00:02:33
    comuniquen aplicaciones programas de
  • 00:02:35
    software y compartan datos entre ellos
  • 00:02:38
    una arquitectura de software es la forma
  • 00:02:41
    en que está diseñado un sistema cómo
  • 00:02:43
    están organizados sus componentes cómo
  • 00:02:45
    se comunican entre ellos qué funciones
  • 00:02:47
    cumplen un servicio web por otro lado es
  • 00:02:51
    un sistema que permite la comunicación
  • 00:02:52
    entre equipos que estén en una red estos
  • 00:02:55
    sistemas tienen que seguir si estos
  • 00:02:57
    ciertos estándares usar el protocolo
  • 00:02:59
    http que es el mismo protocolo para
  • 00:03:01
    navegar por internet y es la base
  • 00:03:03
    obviamente de las apis remotas de la
  • 00:03:05
    comunicación entre programas pero que
  • 00:03:07
    estén en lugares diferentes
  • 00:03:10
    res es una arquitectura las apis pueden
  • 00:03:13
    ser de varios tipos uno de estos tipos
  • 00:03:15
    son las app y rest la arquitectura red
  • 00:03:18
    significa representational state
  • 00:03:20
    transfer significa una representación de
  • 00:03:22
    transferencia de estado esta
  • 00:03:25
    arquitectura implica que pueden
  • 00:03:27
    guardarse los datos en caché que el
  • 00:03:29
    estado no se envía en las peticiones y
  • 00:03:32
    que tú puedes definir qué datos permites
  • 00:03:35
    que otra aplicación acceda revise o
  • 00:03:38
    manipule de tu aplicación es decir si yo
  • 00:03:40
    quiero que mi aplicación pueda
  • 00:03:42
    consumirse desde otras apps
  • 00:03:44
    yo puedo definir los permisos eso es
  • 00:03:46
    resto
  • 00:03:48
    ahora bien xml es el formato para enviar
  • 00:03:50
    datos que se ha usado casi siempre es el
  • 00:03:53
    formato tradicional y es un formato como
  • 00:03:55
    ustedes pueden ver parecido a xml
  • 00:03:57
    significa extensible markup language las
  • 00:04:01
    etiquetas y todo eso ahora bien hoy en
  • 00:04:03
    día el formato más usado para transferir
  • 00:04:05
    información es el formato jason que
  • 00:04:08
    significa javascript o objects notation
  • 00:04:10
    es el más usado es prácticamente el
  • 00:04:13
    estándar de hoy en día porque es muy
  • 00:04:14
    fácil de entender y muy fácil también
  • 00:04:16
    manipular por otro lado las apis pueden
  • 00:04:20
    ser públicas o privadas públicas
  • 00:04:22
    obviamente cualquier persona puede
  • 00:04:24
    acceder a esas apps y consultar la
  • 00:04:26
    información mientras que una api privada
  • 00:04:28
    requiere una autenticación cuando tú te
  • 00:04:31
    auténticas la primera vez el servidor te
  • 00:04:33
    devuelve un token ese toque es un objeto
  • 00:04:36
    que contiene todos los datos de esta
  • 00:04:37
    autenticación entonces cada vez que tú
  • 00:04:40
    solicitas alguna información adicional
  • 00:04:41
    el servidor revisará si el token todavía
  • 00:04:44
    está vigente y ya no te pedirá una nueva
  • 00:04:46
    autenticación el formato más común para
  • 00:04:49
    los tokens en apis rest es j w ahora
  • 00:04:52
    bien ya entendimos el concepto de apis
  • 00:04:55
    son interfaces para que programas de
  • 00:04:57
    software se comuniquen entre ellos y
  • 00:04:59
    compartan datos bajo ciertos estándares
  • 00:05:01
    y el más usado hoy en día eres y el
  • 00:05:04
    formato más usado para enviar datos es
  • 00:05:06
    jason no es el único pero es el más
  • 00:05:08
    usado ahora bien las apis pueden ser
  • 00:05:11
    locales o remotas las locales son las
  • 00:05:13
    que se ejecutan dentro del mismo entorno
  • 00:05:16
    por ejemplo estás desarrollando una
  • 00:05:17
    aplicación android y tú necesitas que
  • 00:05:22
    en una notificación vibre haga vibrar el
  • 00:05:24
    teléfono entonces te comunicas con la
  • 00:05:26
    api de vibración del teléfono entonces
  • 00:05:27
    todo ocurre ahí todo es local sin
  • 00:05:30
    embargo también pueden haber apis
  • 00:05:31
    remotas significa que tú obviamente
  • 00:05:33
    consumes datos de una aplicación que
  • 00:05:36
    está en otro lugar en otro punto del
  • 00:05:39
    mundo esto es mucho más grande pero lo
  • 00:05:41
    hemos querido simplificar en este cuadro
  • 00:05:43
    es mucho más grande pero esto te va a
  • 00:05:46
    ayudar mucho a entender cómo está
  • 00:05:47
    organizado esto las apis como hemos
  • 00:05:49
    dicho pueden ser locales o pueden ser
  • 00:05:51
    remotas ahora las remotas pueden
  • 00:05:53
    utilizar servicios web te expliqué que
  • 00:05:55
    eran un sistema de comunicación en una
  • 00:05:57
    red utilizando el protocolo http
  • 00:05:59
    entonces las sad y remotas pueden
  • 00:06:01
    utilizar servicios web es lo más común y
  • 00:06:04
    si usan servicios web pueden usar el
  • 00:06:06
    protocolo soap o pueden ser rest
  • 00:06:09
    el protocolo swap todavía se sigue
  • 00:06:11
    usando aunque no tanto ya pero en su
  • 00:06:13
    momento fue el más usado ahora la red es
  • 00:06:16
    hoy en día la arquitectura no es un
  • 00:06:18
    protocolo la arquitectura más usada para
  • 00:06:20
    apis y cuando tú creas un servicio web
  • 00:06:23
    usando la arquitectura red
  • 00:06:25
    estamos hablando de redes
  • 00:06:27
    ya hemos visto lo importante que es
  • 00:06:29
    entender cómo funcionan las app y si
  • 00:06:31
    eres desarrollador en algún momento vas
  • 00:06:33
    a tener que crear tu propia app y
  • 00:06:34
    obviamente también consumir apis de
  • 00:06:36
    terceros sí entonces cuando tú estás
  • 00:06:38
    desarrollando una app y redes debes
  • 00:06:40
    comprender ciertos conceptos en primer
  • 00:06:43
    lugar cada recurso que tú consultas cada
  • 00:06:46
    información que tú consultas tiene un
  • 00:06:48
    identificador único llamado uri y tú la
  • 00:06:51
    consultas por algo llamado en point que
  • 00:06:53
    es la url completa ahora bien esa uri
  • 00:06:56
    permite consultar directamente un
  • 00:06:58
    recurso por ejemplo de punto team
  • 00:07:01
    diagonal estudiantes diagonal álvaro
  • 00:07:03
    esto es un ejemplo entonces es un
  • 00:07:05
    identificador único y de esa manera
  • 00:07:07
    puedes encontrar cualquier recurso que
  • 00:07:10
    tú estás necesitando o una lista de
  • 00:07:12
    ellos ahora cuando tú solicitas una
  • 00:07:16
    información a través de una app y el
  • 00:07:18
    servidor puede contestarte con distintos
  • 00:07:20
    códigos con esos códigos vas a saber qué
  • 00:07:22
    pasó con tu petición por ejemplo los
  • 00:07:24
    códigos 200 son los códigos de que todo
  • 00:07:26
    fue exitoso un código 200 indica
  • 00:07:29
    respuesta exitosa un código 202 que ha
  • 00:07:31
    sido creado un nuevo recurso
  • 00:07:33
    los códigos 300 indican re direcciones
  • 00:07:36
    por ejemplo 301 una redirección
  • 00:07:37
    permanente de 313 una redirección
  • 00:07:39
    temporal los códigos 400 indican que tú
  • 00:07:42
    has hecho una solicitud inválida tal vez
  • 00:07:44
    a un recurso que no existe que es el 404
  • 00:07:46
    otra vez a un recurso al que tú no
  • 00:07:48
    tienes autorización que es el 403 y los
  • 00:07:51
    códigos 500 indican errores ya
  • 00:07:53
    directamente en el servidor según el
  • 00:07:55
    código que te responde el servidor tú
  • 00:07:57
    sabrás qué hacer con esta petición ahora
  • 00:07:59
    bien también tenemos los métodos http
  • 00:08:02
    estos métodos nos permiten interactuar
  • 00:08:05
    con la app y por ejemplo el método get
  • 00:08:07
    es solicitar información
  • 00:08:09
    el método post es enviar nueva
  • 00:08:12
    información por ejemplo si yo me
  • 00:08:14
    registro n de tim voy a de punto team y
  • 00:08:17
    creó mi cuenta de usuario estoy usando
  • 00:08:19
    el método post para enviar la nueva
  • 00:08:21
    información de un usuario el método put
  • 00:08:24
    es actualizar información que ya exista
  • 00:08:26
    por ejemplo yo voy a ese punto team y
  • 00:08:28
    cambio mi contraseña entonces estoy
  • 00:08:30
    utilizando el método put y bilic
  • 00:08:32
    obviamente para borrar
  • 00:08:34
    esto es equivalente al club de las bases
  • 00:08:37
    de datos no es lo mismo pero es
  • 00:08:39
    equivalente y como hemos dicho las apis
  • 00:08:41
    te pueden devolver la información en
  • 00:08:42
    distintos formatos el formato más común
  • 00:08:44
    es el formato jason pero no el único
  • 00:08:46
    también puedes usar a pires y devolver
  • 00:08:48
    formato xml o incluso texto plano para
  • 00:08:52
    que te estarás preguntando bueno hay
  • 00:08:53
    empresas que tienen sus sistemas que
  • 00:08:55
    necesitan xml y te lo van a pedir así
  • 00:08:57
    incluso texto plano entidades del estado
  • 00:08:59
    también te piden a veces texto plano lo
  • 00:09:02
    importante es que no tienes que usar
  • 00:09:03
    otro sistema puedes seguir utilizando a
  • 00:09:05
    pires y devolver ese tipo de formato y
  • 00:09:07
    para terminar las buenas prácticas
  • 00:09:08
    cuando tú desarrollas una app y hay
  • 00:09:11
    buenas prácticas que tú debes seguir
  • 00:09:12
    aquí te dejo algunas de ellas en primer
  • 00:09:15
    lugar gestos gestos significa que la app
  • 00:09:18
    y se autodescribe cada recurso tiene
  • 00:09:21
    información de cuál es el recurso
  • 00:09:22
    siguiente o de la cantidad de recursos
  • 00:09:25
    totales que hay porque no es tan
  • 00:09:27
    sencillo como un array que el primer
  • 00:09:29
    elemento es el índice 1 o 0 el segundo
  • 00:09:32
    es el índice 1 el tercero es el índice 2
  • 00:09:33
    y así correlativamente pueden haberse
  • 00:09:35
    eliminado los registros en el proceso y
  • 00:09:38
    tal vez el primer elemento ser uno y el
  • 00:09:39
    siguiente sí
  • 00:09:40
    tendrías 49 errores hasta llegar al
  • 00:09:43
    siguiente recurso cierto para esos
  • 00:09:45
    trajecitos luego la seguridad como hemos
  • 00:09:47
    dicho tienes apis públicas y apis
  • 00:09:49
    privadas y tú a pies privada debes
  • 00:09:51
    proteger la obviamente si no podrían
  • 00:09:53
    entrar a tu información
  • 00:09:54
    obtener extraer la base de datos tal vez
  • 00:09:58
    de tus usuarios o base de datos privadas
  • 00:09:59
    o incluso manipular la esto es muy
  • 00:10:01
    riesgoso así que debes asegurarla por
  • 00:10:04
    otro lado debes testear tú sabes testear
  • 00:10:06
    que todo funcione correctamente porque
  • 00:10:08
    es terrible cuando tú haces una app y
  • 00:10:11
    alguien la va a consumir y la persona
  • 00:10:12
    que la consume pues no encuentra la
  • 00:10:15
    información de vida o no funciona como
  • 00:10:16
    debería el testeo está muy ligado a la
  • 00:10:18
    documentación recuerda que si tú haces
  • 00:10:21
    una app y la estás haciendo para que
  • 00:10:22
    alguien la consuma porque es un sistema
  • 00:10:24
    de comunicación es una interfaz de
  • 00:10:26
    comunicación no tiene sentido hacerla si
  • 00:10:28
    nadie la va a consumir entonces
  • 00:10:29
    documenta en el de ti me hemos intentado
  • 00:10:32
    integrar algunas plataformas externas no
  • 00:10:35
    voy a decir nombres porque no quiero que
  • 00:10:36
    me demanden
  • 00:10:37
    queremos que intentado y hay algunas tan
  • 00:10:40
    mal documentadas que es
  • 00:10:42
    realmente un infierno implementar ese
  • 00:10:44
    tipo de app es así que documenta to up y
  • 00:10:47
    espero que te haya quedado clara la
  • 00:10:48
    importancia de desarrollar apps y de
  • 00:10:51
    consumir apis para que las aplicaciones
  • 00:10:52
    se comuniquen y sean mucho más
  • 00:10:54
    enriquecidas y puedas aprovechar el
  • 00:10:57
    desarrollo de otras empresas en tus
  • 00:10:59
    proyectos y viceversa
  • 00:11:01
    si quieres aprender a crear una app y
  • 00:11:04
    redes con buenas prácticas es decir todo
  • 00:11:06
    lo que explicado acá pero con mucho más
  • 00:11:08
    detalle y entrando al código metiéndole
  • 00:11:10
    las manos al código y viendo cómo
  • 00:11:12
    funciona cada detalle te invito este 18
  • 00:11:15
    de mayo al workshop creando app y redes
  • 00:11:17
    con buenas prácticas que va a impartir
  • 00:11:19
    nuestro sitio nuestro director de
  • 00:11:21
    tecnología en el steam alexis los hará
  • 00:11:23
    en ciudad de méxico este workshop es
  • 00:11:25
    presencial en persona lo vas a tener ahí
  • 00:11:27
    para preguntarle todo y todo lo que te
  • 00:11:29
    venga a la mente para que cada dólar que
  • 00:11:31
    pagues por este workshop valga valga la
  • 00:11:34
    pena ok entonces es un workshop de tres
  • 00:11:37
    horas es un workshop intensivo donde vas
  • 00:11:39
    a aprender las buenas prácticas y los
  • 00:11:41
    procesos para desarrollar a pires que
  • 00:11:44
    repito es muy importante para cualquier
  • 00:11:46
    programador sea cual sea tu área no
  • 00:11:49
    vemos de méxico
  • 00:11:52
    este 17 y 18 de mayo se llevará a cabo
  • 00:11:56
    el edecán mexico 2019 dos días de mucha
  • 00:11:59
    tecnología networking y emprendimiento
  • 00:12:02
    con el equipo de ede team por primera
  • 00:12:04
    vez en ciudad de méxico entra ya mismo a
  • 00:12:06
    punto team diagonal mexico para adquirir
  • 00:12:09
    tus entradas
タグ
  • APIs
  • desarrollo de software
  • integraciones
  • REST
  • JSON
  • HTTP
  • protocolos
  • metodología de trabajo
  • seguridad
  • documentación