Cómo Generar Especificaciones OpenAPI a Partir de Requests Existentes

INEZA Felin-Michel

INEZA Felin-Michel

5 December 2025

Cómo Generar Especificaciones OpenAPI a Partir de Requests Existentes

Escribir una especificación OpenAPI desde cero puede llevar mucho tiempo, especialmente cuando tu API ya está activa y en funcionamiento. Muchos equipos heredan proyectos con poca o ninguna documentación, o trabajan con APIs que fueron construidas rápidamente durante el desarrollo temprano. En estos casos, la forma más práctica de crear documentación es generar una especificación OpenAPI directamente a partir de tus solicitudes de API existentes.

Esta guía explica por qué funciona este enfoque, qué herramientas pueden ayudar y cómo puedes convertir solicitudes reales en una especificación OpenAPI limpia y reutilizable en la que tu equipo pueda confiar.

💡
Si ya tienes comandos cURL, archivos HAR, colecciones de Postman o registros de API sin procesar, no necesitas escribir tu especificación OpenAPI desde cero. Apidog puede importar todos estos formatos y convertirlos instantáneamente en especificaciones OpenAPI limpias y estructuradas. Analiza cada solicitud, genera modelos automáticamente y te permite refinar todo en un solo lugar, ahorrando horas de trabajo manual y manteniendo tu documentación precisa y consistente.
botón

Método 1: El Enfoque "Code-First" (Primero el Código)

Este método funciona si puedes añadir anotaciones o bibliotecas directamente al código de tu aplicación backend.

¿Cómo Funciona?

Instalas una biblioteca en tu framework web que inspecciona tu código — tus rutas, controladores y modelos — y genera una especificación OpenAPI sobre la marcha.

Bibliotecas Populares:

Ejemplo con FastAPI (Python):

from fastapi import FastAPI
from pydantic import BaseModel

app = FastAPI()

class Item(BaseModel):
    name: str
    price: float

@app.post("/items/", response_model=Item)
async def create_item(item: Item):
    """
    Create a new item in the database.
    - **name**: The item's name
    - **price**: The item's price in USD
    """
    return item

# Este código genera automáticamente una especificación OpenAPI completa en /docs o /openapi.json

Ventajas:

Desventajas:

Método 2: El Enfoque de "Análisis de Tráfico"

Este es un enfoque inteligente de "afuera hacia adentro". Capturas el tráfico HTTP real entre los clientes y tu API, luego lo analizas para inferir la especificación.

¿Cómo Funciona?

Utilizas una herramienta que actúa como proxy o sniffer de red. Todo el tráfico de la API se enruta a través de ella. La herramienta analiza las solicitudes y respuestas (URLs, métodos, cabeceras, cuerpos) y construye un modelo de tu API.

Herramientas Populares:

Proceso:

  1. Configura tu aplicación o cliente para enrutar el tráfico a través de la herramienta proxy.
  2. Ejecuta tus flujos de trabajo principales de la API (inicio de sesión, creación de datos, obtención de datos, etc.).
  3. La herramienta observa patrones y genera una especificación OpenAPI preliminar.

Ventajas:

Desventajas:

Método 3: El Enfoque de "Colección de Solicitudes"

Este es a menudo el método más práctico y eficiente para desarrolladores y equipos. Utilizas un cliente API avanzado que no solo envía solicitudes, sino que también comprende el diseño de la API. Creas una colección de tus solicitudes, y la herramienta te ayuda a estructurarlas y exportarlas como especificaciones OpenAPI limpias.

Aquí es donde el poder de Apidog se destaca. Está construido para este flujo de trabajo.

botón

¿Cómo Funciona con Apidog?

1. Envía Solicitudes como lo Harías Normalmente: No cambies tu flujo de trabajo. Usa Apidog para probar y depurar tus endpoints de API existentes. A medida que envías solicitudes GET, POST, PUT y DELETE, Apidog captura todos los detalles.

2. Deja que Apidog Construya el Modelo: Tras bambalinas, mientras trabajas, Apidog comienza a entender la estructura de tu API. Ve los endpoints, parámetros, cuerpos de solicitud y esquemas de respuesta.

3. Organiza en un Documento: Apidog puede convertir la solicitud en un documento de API en tiempo real. Tus solicitudes ad-hoc se convierten en una página de documentación de API estructurada y navegable dentro de la herramienta. Puedes añadir descripciones, agrupar endpoints en carpetas y limpiar los detalles auto-inferidos.

4. Exporta la Especificación: Una vez que tu colección sea precisa y esté bien descrita, la exportas. Y luego los usuarios pueden exportar las especificaciones OpenAPI en el formato estándar YAML o JSON con un solo clic. Esta especificación está lista para ser usada con Swagger UI, importada en otras herramientas o subida a tu repositorio.

Ventajas:

Desventajas:

Método 4: El Enfoque de Creación Manual

A veces, necesitas construir la especificación a mano en un editor como Swagger Editor o Stoplight Studio. Esto a menudo se hace en conjunto con los métodos anteriores.

  1. Usa tu Colección de Solicitudes como Referencia: Ten tu colección de Postman, comandos cURL o proyecto Apidog abiertos en una segunda pantalla.
  2. Construye la Especificación Paso a Paso: Para cada endpoint en tus referencias, tradúcelo manualmente a OpenAPI YAML/JSON. Esto te obliga a pensar profundamente sobre cada parámetro y respuesta.
  3. Valida con Ejemplos: Usa la vista previa del editor para asegurarte de que tu especificación coincida con el comportamiento real de la API.

Ventajas:

Desventajas:

Mejores Prácticas para Generar Especificaciones OpenAPI a partir de Solicitudes

Independientemente de tu método, sigue estos principios:

  1. Empieza Pequeño: Elige un endpoint central (como GET /users). Genéralo o documéntalo completamente, luego expande.
  2. Valida Temprano y Frecuentemente: Usa la especificación OpenAPI para generar un servidor simulado inmediatamente. ¿Se comporta como tu API real? Esto detecta discrepancias rápidamente.
  3. Itera y Refina: Tu primera especificación generada será un borrador. Trátala como tal. Añade descripciones, ejemplos y ajusta las definiciones de esquema.
  4. Incluye Respuestas de Error: Esto a menudo se pasa por alto. Asegúrate de que tu especificación documente los formatos de respuesta de error 4xx y 5xx.
  5. No Olvides la Autenticación: Documenta cómo se asegura tu API (API Key, OAuth2, etc.) en la sección securitySchemes.

Conclusión: Tu Plan te Espera

Generar una especificación OpenAPI a partir de solicitudes existentes no solo es posible, sino una necesidad práctica para poner orden en proyectos de API maduros. Ya sea que elijas una biblioteca "code-first", una herramienta de análisis de tráfico o un potente cliente API como Apidog, estás invirtiendo en claridad, automatización y colaboración.

El método que elijas depende de tu contexto: control sobre la base de código, limitaciones de tiempo y flujo de trabajo del equipo. Pero el objetivo es el mismo: transformar el conocimiento implícito contenido en tus registros de solicitudes, comandos cURL y entendimiento tribal en un contrato explícito y legible por máquina que pueda impulsar tu API.

Deja de dejar que la complejidad de tu API viva en las sombras. Comienza con las solicitudes que ya tienes, usa las herramientas adecuadas y construye ese plan esencial de OpenAPI. Tu yo futuro y todos los que necesiten usar tu API te lo agradecerán.

botón

Practica el diseño de API en Apidog

Descubre una forma más fácil de construir y usar APIs