Want to create interactive content? It’s easy in Genially!

Get started free

PR.AD.02.01.01

UTL

Created on September 25, 2025

Start designing with a free template

Discover more than 1500 professional designs like these:

Neodigital CPD Course

Minimal Course

Basic Interactive Course

Laws and Regulations Course

Transcript

Programación de Redes

1. APIs y Análisis JSON

AD.02.01.01 APIs y análisis JSON

Bienvenida

Hoy vamos a adentrarnos en un tema fundamental en el mundo del desarrollo y la tecnología: las APIs y el análisis de datos en formato JSON. ¿Alguna vez te has cuestionado cómo se conecta una aplicación con otra para mostrar el clima, los mapas o los últimos tuits? La respuesta está en las APIs: puentes digitales que permiten que diferentes sistemas hablen entre sí. Y para que esa comunicación tenga sentido, se necesita un lenguaje común. Ahí entra JSON, un formato ligero y estructurado para intercambiar datos de forma clara y eficiente.

¡Sean Bienvenidos!

Índice

Objetivo

Introducción

¿Qué son las APIs?

Tipos de APIs

¿Cómo funciona una API REST?

¿Qué es JSON?

Análisis de una respuesta JSON

Proceso general de análisis de JSON

Herramientas para trabajar con APIs y JSON

Caso práctico

Conclusiones

Preguntas

Fuentes

Objetivo

El alumno identificará qué son las APIs, cómo se utilizan, y cómo analizar las respuestas en formato JSON de forma clara y visual.

Introducción

La programación de redes actual combina desarrollo de software, fundamentos de redes y automatización. Este tema introductorio te prepara mediante la instalación y uso de máquinas virtuales basadas en Linux, el repaso de comandos esenciales y la práctica de programación en Python, lenguaje clave por su simplicidad y versatilidad. Con estas bases, estarás listo para abordar conceptos avanzados como APIs, diseño de software e infraestructura automatizada.

¿Qué son las APIs?

Las APIs permiten que diferentes aplicaciones se comuniquen entre sí, compartiendo datos y funcionalidades. Son como "puentes digitales” Una API (interfaz de programación de aplicaciones) es una pieza de código que permite a diferentes aplicaciones comunicarse entre sí y compartir información y funcionalidades.

Tipos de APIs

  • Públicas (Abiertas) Remotas.
  • Privadas (Internas) Locales.

¿Cómo funciona una API REST?

Ejemplo Método POST

¿Qué es JSON?

JSON significa JavaScript Object Notation, y es un formato ligero de intercambio de datos muy utilizado en APIs REST para enviar y recibir información entre un cliente (como una app o navegador) y un servidor.

  • Es fácil de leer y escribir para los humanos.
  • Es fácil de interpretar y generar para las máquinas.
  • Se basa en una estructura de clave: valor.
  • Es independiente del lenguaje, aunque viene de JavaScript, es compatible con Python, Java, PHP, etc.

Análisis de una respuesta JSON

El análisis de una respuesta JSON implica convertir una cadena JSON en un objeto o estructura de datos utilizable dentro de un programa. Esto permite acceder a los datos contenidos en el formato JSON y manipularlos según sea necesario. Los lenguajes de programación modernos ofrecen métodos y bibliotecas para realizar este análisis de forma eficiente.

Ejemplo

Proceso general de análisis de JSON

En general el análisis de Json incluye: 1. Obtención de la respuesta JSON:2. Análisis de la cadena JSON:3. Acceso y manipulación de los datos:4. Uso de los datos:

Ejemplo de análisis JSON

Ejemplo en JavaScript

Consideraciones importantes:

Herramientas para trabajar con APIs y JSON

Para trabajar con APIs y JSON, existen numerosas herramientas que facilitan desde el diseño y la documentación hasta las pruebas y la gestión de estas. Algunas herramientas destacadas incluyen Postman para pruebas y exploración de APIs, Swagger para diseño y documentación, y varias opciones para formatear y validar JSON como JSON Editor y herramientas en línea.

Herramientas para trabajar con APIs y JSON (Continua)

JSON Editor: Herramientas en línea: jq: Otras herramientas útiles: FastAPI: MuleSoft Anypoint Platform:

Postman: Swagger UI: Insomnia: Karate DSL: Playwright:

Herramientas para trabajar con APIs y JSON (Continua)

Una plataforma basada en la nube para el desarrollo y la integración de APIs.

  • Apiary.io:
  • SwaggerHub:
  • Apollo GraphQL:
  • Stoplight:

Caso Práctico

A continuación se muestra un caso práctico, debes leerlo con calma y hacer un análisis sobre el contenido que ofrece, aspectos importantes del código que se incluye. Caso Práctico: Consumo de una API pública y análisis de datos en JSON.

  • Objetivo
  • Contexto
  • Herramientas

Código de ejemplo (simplificado):

Caso Práctico (Continua)

Código de ejemplo (simplificado):

import requests # Paso 1: Consumir API def obtener_datos_clima(ciudad): url = f"https://api.open-meteo.com/v1/forecast?latitude=19.43&longitude=-99.13&current_weather=true" respuesta = requests.get(url) if respuesta.status_code == 200: return respuesta.json() # Devuelve el JSON como diccionario else: return None # Paso 2: Analizar JSON def analizar_datos(json_data): clima_actual = json_data['current_weather'] temperatura = clima_actual['temperature'] viento = clima_actual['windspeed']

print(f"Temperatura actual: {temperatura}°C") print(f"Velocidad del viento: {viento} km/h") # Lógica simple basada en datos if temperatura < 15: print(" Hace frío, lleva abrigo.") elif temperatura > 30: print(" Hace calor, mantente hidratado.") else: print(" El clima es templado.") # Paso 3: Ejecutar datos = obtener_datos_clima("Ciudad de México") if datos: analizar_datos(datos) else: print("Error al obtener datos del clima.") NOTA: Guardar los datos en un archivo.json

Caso Práctico (Continua)

El anterior caso práctico te permite aprender

Caso Práctico (Continua)

El anterior caso práctico te permite aprender

Conclusiones

Puntualizando aspectos importantes del tema estudiado, podemos mencionar que:

  1. Las APIs son herramientas esenciales en el desarrollo moderno.
  2. El formato JSON es el estándar actual para el intercambio de datos.
  3. Aprender a consumir y analizar APIs es una habilidad clave para desarrolladores.
  4. El análisis de JSON fomenta el pensamiento lógico y estructurado.
  5. Combinar APIs y JSON permite desarrollar soluciones reales y escalables.
Entender APIs y análisis JSON empodera al desarrollador para conectar, interpretar y crear soluciones inteligentes con datos en tiempo real.

Preguntas

Pueden hacer los comentarios que consideren importantes. ¿Tienen dudas?

Fuentes

Carmona, J. G. (2024). Guía rápida de REST API: Buenas prácticas, métodos y principios. Juan G. Carmona. https://jgcarmona.com/guia-rest-api/DesarrolloWeb.com. (s. f.). Herramientas para trabajar con API y JSON [Colección]. DesarrolloWeb.com. https://desarrolloweb.com/colecciones/herramientas-api-json/ Estefania Cassingena Navone YouTube · freeCodeCamp. ( 2021). Aprende Python - Curso de Python desde Cero. https://www.youtube.com/watch?v=DLikpfc64c Monción R. Cristian L.. (2023). Diseño e Implementación de una Plataforma & API para la Enseñanza de la Tecnología REST Plataforma educativa Netacad. (2024). DevOps. https://www.netacad.com/es

Creación de contenido.

  • L.I. Sergio Velázquez Bonilla - Universidad Tecnológica del Centro de Veracruz

Revisión de contenido.

  • M.A.F.O. Eva María Landa Huerta - Universidad Tecnológica del Centro de Veracruz

Diseño instruccional.

  • M.R.T. Ricardo Castro Valdivia - Universidad Tecnológica del Centro de Veracruz

Diseño gráfico y multimedia.

  • M.An. Cecilio Francisco Mendoza González - Universidad Tecnológica del Centro de Veracruz

Playwright

Un marco de automatización de pruebas de código abierto que incluye soporte para pruebas de API, permitiendo la automatización de pruebas funcionales y de rendimiento.

Herramientas

  • Lenguaje: Python (multiparadigma: orientado a objetos + funcional)
  • Librerías: requests, json (nativas de Python)
  • API: OpenWeatherMap (requiere clave API, pero también hay versiones sin clave para práctica)

1. Cliente: envía POST /api/productos con JSON: { "nombre": "Camisa", "precio": 29.99 } 2. Servidor: - Valida datos - Guarda en base de datos - Devuelve: 201 Created { "id": 101, "nombre": "Camisa", "precio": 29.99 } 3. Cliente: - Muestra confirmación - Actualiza la lista de productos

Una vez analizada la respuesta, se puede acceder a los valores individuales utilizando las claves (en el caso de objetos) o índices (en el caso de arreglos).

Swagger UI

Una herramienta para visualizar y probar APIs definidas con OpenAPI (Swagger), permitiendo la interacción con los endpoints y la exploración de la documentación.

import json # Cadena JSON de ejemplo json_string = '{"nombre": "Juan", "edad": 30, "ciudad": "Madrid"}' # Analizar la cadena JSON try: data = json.loads(json_string) # Acceder a los datos nombre = data['nombre'] edad = data['edad'] print(f"Nombre: {nombre}, Edad: {edad}") except json.JSONDecodeError: print("Error: La cadena JSON no es válida.")

Los datos analizados se pueden utilizar para realizar diversas operaciones, como mostrar información, realizar cálculos, o almacenarlos en una base de datos.

Una solicitud POST a /users con un cuerpo JSON que contenga los datos de un nuevo usuario crearía un nuevo usuario en el sistema. Código: { “name”: “Jorge Robles”, “email”: jorge.robles@sample.com } La respuesta podría ser: Código: HTTP/1.1 201 Created Location: /users/123 Donde /users/123 sería el URI del nuevo usuario creado.

// Cadena JSON de ejemplo const jsonString = '{"nombre": "Maria", "edad": 25, "ciudad": "Barcelona"}'; // Analizar la cadena JSON try { const data = JSON.parse(jsonString); // Acceder a los datos const nombre = data.nombre; const edad = data.edad; console.log(`Nombre: ${nombre}, Edad: ${edad}`); } catch (error) { console.error("Error al analizar el JSON:", error); }

Validez del JSON:

  • Es crucial asegurarse de que la cadena JSON sea válida para evitar errores de análisis.
Estructura del JSON:
  • Conocer la estructura del JSON (si es un objeto, un arreglo, o una combinación de ambos) es fundamental para acceder a los datos correctamente.
Manejo de errores:
  • Es recomendable implementar un manejo de errores para detectar y gestionar posibles problemas durante el análisis.
Funciones de análisis:
  • Los lenguajes de programación ofrecen funciones como json.loads() en Python, JSON.parse() en JavaScript o bibliotecas como Json Slurper en Groovy, para realizar el análisis.

jq

Un analizador JSON de línea de comandos ligero y flexible, ideal para manipular y extraer datos de archivos JSON.

La respuesta JSON puede provenir de una solicitud a una API, la lectura de un archivo o cualquier otra fuente que devuelva datos en este formato.

SwaggerHub

Una plataforma para el diseño, la documentación y la colaboración en APIs, basada en las especificaciones OpenAPI y AsyncAPI.

Privadas Locales.

(Internas)

Son interfaces de programación de aplicaciones diseñadas para uso interno dentro de una organización. Estas APIs permiten la comunicación y el intercambio de datos entre componentes internos de un sistema o diferentes aplicaciones dentro de la misma organización.

// Cadena JSON de ejemplo const jsonString = '{"nombre": "Maria", "edad": 25, "ciudad": "Barcelona"}'; // Analizar la cadena JSON try { const data = JSON.parse(jsonString); // Acceder a los datos const nombre = data.nombre; const edad = data.edad; console.log(`Nombre: ${nombre}, Edad: ${edad}`); } catch (error) { console.error("Error al analizar el JSON:", error); }

Apiary.io

Una plataforma para diseñar, documentar y probar APIs, utilizando principalmente la especificación API Blueprint.

FastAPI

Un framework web moderno para crear API en Python, enfocado en la facilidad de uso y la compatibilidad con estándares abiertos como OpenAPI y JSON Schema.

Una solicitud POST a /users con un cuerpo JSON que contenga los datos de un nuevo usuario crearía un nuevo usuario en el sistema. Código: { “name”: “Jorge Robles”, “email”: jorge.robles@sample.com } La respuesta podría ser: Código: HTTP/1.1 201 Created Location: /users/123 Donde /users/123 sería el URI del nuevo usuario creado.

JSON Editor

Una herramienta web de código abierto que proporciona una interfaz gráfica para editar y validar archivos JSON, útil para manejar datos complejos.

Herramientas en línea

Existen numerosos sitios web que ofrecen servicios para formatear, validar y convertir JSON, como Geekflare, que también incluye herramientas para convertir JSON a otros formatos como CSV y XML.

Contexto

Queremos obtener información del clima actual en una ciudad específica utilizando la API de OpenWeatherMap (o una similar), y luego:
  • Extraer datos clave del JSON (temperatura, humedad, condición climática).
  • Mostrar un resumen legible para el usuario.
  • Aplicar lógica condicional sobre los datos (ej: ¿necesito paraguas?).

Karate DSL

Un marco de pruebas de código abierto que simplifica las pruebas de API al permitir escribir pruebas en un lenguaje específico del dominio, ideal para desarrolladores y testers.

Stoplight

Una herramienta para la gestión de documentación y diseño de APIs, con un enfoque en flujos de trabajo que priorizan el diseño.

Postman

Una herramienta popular para probar APIs REST, con una interfaz gráfica intuitiva para enviar solicitudes y analizar respuestas, incluyendo soporte para JSON.

Apollo GraphQL

Una plataforma para construir clientes y APIs GraphQL, ofreciendo herramientas para el desarrollo y la gestión de APIs basadas en GraphQL.

Objetivo

Consumir datos de una API pública que entrega respuestas en formato JSON, analizarlos y extraer información relevante.

Se utiliza una función o método específico del lenguaje de programación para convertir la cadena JSON en un objeto o estructura de datos.

MuleSoft Anypoint Platform

Una plataforma de integración empresarial que ofrece herramientas para diseñar, construir, probar, documentar y gestionar APIs. Permite conectar aplicaciones, datos y dispositivos a través de una arquitectura basada en APIs, facilitando la orquestación de servicios y el intercambio de datos entre sistemas en la nube y on-premise. Soporta formatos como JSON, XML y protocolos como HTTP, SOAP, y REST.

Públicas Remotas.

(Abiertas)

Son interfaces de programación de aplicaciones que están disponibles para el público en general, permitiendo a desarrolladores externos acceder y utilizar funcionalidades o datos de un servicio o aplicación específica.

Insomnia

Un cliente REST de código abierto con una interfaz visual amigable para probar APIs, incluyendo soporte para diferentes formatos de datos como JSON.