DEV Community

Cover image for Colaboración Git para Testing y Desarrollo de APIs
Roobia
Roobia

Posted on • Originally published at apidog.com

Colaboración Git para Testing y Desarrollo de APIs

Tu especificación OpenAPI es el contrato entre tu API y sus consumidores. Para que ese contrato sea útil, debe vivir donde el equipo ya revisa, versiona y despliega cambios: en Git.

Prueba Apidog hoy

Cuando la especificación vive en una herramienta aislada, es fácil que se desincronice: la documentación queda obsoleta, las colecciones de pruebas divergen y los reviewers aprueban código sin validar el cambio correspondiente en el contrato de API.

El Modo Spec-first cambia ese flujo: tus archivos OpenAPI o Swagger se almacenan en el repositorio junto al código. Cada cambio pasa por ramas, commits, pull requests y revisiones. El diseño de API, las pruebas y la documentación se mantienen sincronizados con la especificación.

En esta guía verás cómo crear un proyecto Spec-first en Apidog, editar archivos OpenAPI, validar cambios, sincronizar con Git y trabajar con ramas.


¿Qué es el Modo Spec-first?

En un proyecto de API tradicional, defines endpoints desde formularios visuales o importas una especificación inicial. La herramienta guarda la definición internamente y, si existe integración con Git, normalmente funciona como exportación.

En Modo Spec-first, el flujo está basado en archivos:

  • openapi.yaml u openapi.json viven en tu repositorio.
  • Apidog analiza esos archivos y genera una estructura navegable.
  • Editas el archivo directamente o mediante formularios compatibles.
  • Los cambios se sincronizan con Git.

El archivo de especificación sigue siendo la fuente de verdad. Apidog lo lee, lo escribe y lo mantiene alineado con el repositorio.

Crear proyecto Specfirst


Requisitos previos

Antes de empezar, asegúrate de tener:

  • Una cuenta de Apidog.
  • Un repositorio Git con un archivo OpenAPI/Swagger, o un repositorio vacío.
  • Permisos de escritura sobre el repositorio.
  • Conocimiento básico de OpenAPI o Swagger.

Paso 1: Crear un proyecto Spec-first

En Apidog:

  1. Haz clic en + Nuevo Proyecto.
  2. Selecciona Modo Spec-first.
  3. Conecta tu proveedor Git:
    • GitHub
    • GitLab
    • Azure DevOps
    • Bitbucket
  4. Elige la organización o workspace.
  5. Selecciona un repositorio existente o crea uno nuevo.
  6. Selecciona la rama principal para sincronizar.

Apidog sincroniza con la rama predeterminada del repositorio. Si no se llama main, la detecta automáticamente.


Paso 2: Configurar la sincronización con webhook

Durante la configuración puedes instalar un webhook. Esto permite que Apidog sincronice automáticamente cuando alguien hace push al repositorio.

Nota: instalar el webhook normalmente requiere permisos de administrador en el repositorio. Si no los tienes, puedes omitir este paso y usar Git Pull manualmente.

Con webhook activo:

  • El equipo hace push de cambios.
  • Apidog recibe el evento.
  • La especificación se actualiza automáticamente.
  • Todos ven la versión más reciente.

Si omitiste este paso, puedes configurarlo después desde:

Configuración del proyecto > Git y Ramas


Paso 3: Explorar el workspace de Especificaciones

Después de crear el proyecto, Apidog abre el workspace de Especificaciones. Aquí editas archivos, navegas la estructura OpenAPI y ejecutas operaciones Git.

Espacio de trabajo de especificaciones

El workspace se divide en tres paneles:

Panel Qué muestra
Explorador de Archivos Archivos y carpetas del repositorio sincronizado
Árbol de Estructura API Endpoints, esquemas, definiciones y vista general extraídos desde OpenAPI
Editor Edición en vista de código o vista de formulario

Flujo recomendado:

  1. Selecciona un archivo OpenAPI en el explorador.
  2. Usa el árbol para ubicar un endpoint o schema.
  3. Haz clic en el nodo.
  4. Apidog resalta la sección correspondiente del YAML o JSON.

Esto te permite moverte entre una vista de alto nivel de la API y el archivo fuente sin cambiar de herramienta.


Paso 4: Editar archivos de especificación

Vista de Código: edición directa

Para YAML, JSON o Markdown, usa la Vista de código.

Edición en vista de código

Ejemplo de endpoint OpenAPI:

paths:
  /users/{id}:
    get:
      summary: Obtener usuario por ID
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
      responses:
        "200":
          description: Usuario encontrado
Enter fullscreen mode Exit fullscreen mode

Las ediciones se guardan en el archivo. Apidog no crea una copia paralela ni reemplaza el contrato por un formato interno.

Vista de Formulario: edición estructurada

Para nodos compatibles — endpoints, schemas, definiciones y vista general — puedes usar la Vista de formulario.

Edición en vista de formulario

Úsala cuando quieras:

  • Añadir endpoints sin memorizar toda la estructura YAML.
  • Editar schemas visualmente.
  • Actualizar metadatos de API.
  • Configurar definiciones de seguridad.

Si un nodo no admite formulario, Apidog mantiene la edición en vista de código.


Paso 5: Validar y previsualizar cambios

El Modo Spec-first incluye validación y previsualización de documentación sin salir del editor.

Validar la especificación

Haz clic en Validación en el encabezado del editor.

Panel de validación

El panel muestra advertencias y errores, por ejemplo:

  • Errores de sintaxis.
  • Campos obligatorios faltantes.
  • Violaciones de schema.
  • Problemas de convenciones de nombres.

Antes de hacer commit, revisa y corrige los errores. Así reduces el trabajo manual durante la revisión del pull request.

Previsualizar documentación

Haz clic en Previsualizar para ver cómo se renderiza la especificación como documentación de API.

Para endpoints, la vista previa incluye:

Pestaña Contenido
Docs Documentación generada del endpoint
Pruébalo Panel de solicitud en vivo basado en la definición del endpoint

Previsualización de endpoint con 'Pruébalo'

Para schemas y definiciones, la vista previa muestra la documentación renderizada.

Previsualización de esquema

La validación y la previsualización comparten el mismo panel lateral. Abrir uno cierra el otro.


Paso 6: Obtener cambios del equipo

Cuando otros colaboradores suben cambios al repositorio, sincronízalos en Apidog:

  1. Abre el workspace de Especificaciones.
  2. Haz clic en el nombre de la rama actual.
  3. Selecciona Git Pull.

Si el webhook está activo, Apidog hace pull automáticamente cuando detecta eventos de push.


Paso 7: Hacer commit y push de tus cambios

Después de editar la especificación:

  1. Abre Cambios en la barra lateral.
  2. Revisa archivos modificados, añadidos, renombrados o eliminados.
  3. Haz clic en Commit & Push.
  4. Selecciona los archivos que quieres incluir.
  5. Escribe un mensaje de commit.
  6. Haz clic en Push.

Flujo de trabajo de commit y push

Ejemplo de mensaje de commit:

docs: update user endpoints OpenAPI spec
Enter fullscreen mode Exit fullscreen mode

Tus cambios de especificación pasan al mismo flujo de pull request que el código. El equipo puede revisar implementación y contrato de API en un solo lugar.

Consejo: usa Descartar todos los cambios si quieres abandonar ediciones locales antes de hacer push.


Paso 8: Trabajar con ramas

El Modo Spec-first soporta colaboración basada en ramas. Apidog mapea ramas de Git a ramas del proyecto, lo que permite trabajar con múltiples versiones de la especificación.

Gestión de ramas

Operaciones comunes:

Acción Cómo hacerlo
Cambiar de rama Haz clic en el nombre de la rama y selecciona otra
Importar rama Git existente Haz clic en Importar Nueva Rama, selecciona la rama e impórtala
Crear nueva rama Ve a Configuración del Proyecto > Git y Ramas > Nueva Rama
Corregir problemas de sincronización Usa Resincronizar en la configuración de la rama
Ver registros de sincronización Acciones de rama > Ver Registros

Puedes usar el mismo flujo que en Git:

  • Ramas de feature.
  • Ramas de release.
  • Desarrollo paralelo.
  • Revisión por pull request.

Paso 9: Integrar con CI/CD

Como la especificación vive en Git, puedes incluirla en tus pipelines.

Casos comunes:

  • Ejecutar lint de OpenAPI en cada pull request.
  • Generar documentación al fusionar en main.
  • Ejecutar pruebas de API cuando cambia la especificación.
  • Sincronizar con gateways, mock servers o generadores de SDK.

Ejemplo con GitHub Actions:

name: Validate and Test API Spec

on:
  push:
    branches: [main]
  pull_request:
    branches: [main]

jobs:
  validate:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Lint OpenAPI Spec
        run: npx spectral lint openapi.yaml

      - name: Run API Tests
        run: apidog run tests --spec openapi.yaml
Enter fullscreen mode Exit fullscreen mode

Con este flujo, la especificación pasa por las mismas puertas de calidad que el código de aplicación.


Alternativa: proyectos con respaldo de almacenamiento

Si todavía no quieres conectar un repositorio Git externo, Apidog también permite proyectos Spec-first con respaldo de almacenamiento.

Proyecto con respaldo de almacenamiento

Estos proyectos usan el almacenamiento interno de Apidog, pero mantienen capacidades como:

  • Edición basada en archivos.
  • Validación.
  • Previsualización.
  • Gestión de ramas.

La interfaz cambia ligeramente:

  • Git Pull pasa a ser Sincronizar.
  • Commit & Push pasa a ser Guardar.

Puedes empezar así y migrar a Git externo cuando tu equipo esté listo.


Resumen

Con el Modo Spec-first, tu flujo de trabajo cambia así:

Antes de Spec-first Después de Spec-first
Las especificaciones viven en una herramienta separada Las especificaciones viven en tu repositorio Git
Exportas e importas para sincronizar Sincronizas automáticamente en cada push
Las revisiones ocurren fuera del flujo de código Las revisiones ocurren en pull requests
La documentación se genera por separado La previsualizas mientras editas
Las pruebas están desconectadas de la especificación Las pruebas pueden activarse por cambios en la especificación

El Modo Spec-first convierte tus archivos OpenAPI en el contrato que deberían ser: versionados, revisados y alineados con el código.

Para empezar, crea un proyecto Spec-first en Apidog, conecta tu repositorio y convierte la especificación en parte real de tu flujo de desarrollo.

Top comments (0)