Documentación pública · v1.0.0

08 · Postman e Insomnia

MSD-08-COLL · Colecciones Postman e Insomnia

La primera llamada a la API no debería comenzar escribiendo una petición desde cero.

Toda la operación. Una sola plataforma.


Objetivo del capítulo

Definir las colecciones oficiales de Postman e Insomnia de Roustix, generadas automáticamente desde la especificación OpenAPI 3.1, permitiendo que cualquier desarrollador explore, pruebe y documente la API sin configuración manual.

Las colecciones representan una implementación práctica del contrato MAG v1.0, garantizando consistencia entre documentación, SDK y herramientas de prueba.

MSD-03 · OpenAPI · MSD-07 · Quick Start


1 · Filosofía

La documentación explica la API.

Las colecciones permiten ejecutarla.

OpenAPI
      │
      ▼
Colección oficial
      │
      ├── Postman
      │
      └── Insomnia
            │
            ▼
       API Roustix

Las colecciones nunca se editan manualmente de forma permanente — siempre se generan desde OpenAPI.

ReglaDescripción
OpenAPI primeroCambio en MAG → OpenAPI → regenerar colecciones
Sin driftNo duplicar paths fuera del contrato
SandboxVariables apuntan a empresa-demo

2 · Objetivos

Las colecciones permiten:

  • explorar todos los endpoints
  • autenticarse mediante JWT
  • probar recursos REST
  • validar respuestas
  • compartir ejemplos
  • acelerar el desarrollo

Son una herramienta de aprendizaje y de pruebas.


3 · Colección Postman

Nombre oficial: Roustix API v1

Estructura:

Roustix API v1
│
├── Authentication
├── Me
├── Maintenance
│     ├── Assets
│     ├── Work Orders
│     ├── Schedules
│     └── Lubrication
│
├── Inventory
├── Purchases
├── Sales
├── CRM
└── Admin

Cada carpeta corresponde a un módulo definido en MAG-04.

Archivo: docs/api/collections/roustix-api-v1.postman_collection.json

Entorno Sandbox: roustix-sandbox.postman_environment.json


4 · Colección Insomnia

La organización replica exactamente la colección de Postman.

Roustix API v1
│
├── Authentication
├── Maintenance
├── Inventory
├── Admin
└── ...

El objetivo es que ambas herramientas ofrezcan la misma experiencia.

Archivo: docs/api/collections/roustix-api-v1.insomnia.json


5 · Variables de entorno

Las colecciones utilizan variables reutilizables:

VariableDescripción
base_urlURL base del servidor (http://127.0.0.1:5000)
api_v1{{base_url}}/api/v1
tokenJWT activo
empresa_slugTenant Sandbox (empresa-demo)
asset_idActivo de ejemplo
work_order_idOT de ejemplo

Ejemplo:

{{api_v1}}/me
Authorization: Bearer {{token}}

No se almacenan credenciales reales dentro de las colecciones — solo placeholders.

Local hoy: algunos endpoints legacy usan /api/auth/login y /api/activos. La colección base incluye rutas v1; ver collections/README.md para importación local.

6 · Autenticación automática

La carpeta Authentication incluye el flujo completo:

POST /api/v1/auth/login

El JWT obtenido se almacena automáticamente como variable token (script Postman / Insomnia chain).

Login
   │
   ▼
 JWT
   │
   ▼
Variable token
   │
   ▼
Resto de endpoints

→ MAG-02 · JWT


7 · Generación

Las colecciones se generan automáticamente desde:

docs/api/openapi.v1.yaml

Proceso:

MAG
   │
   ▼
OpenAPI
   │
   ▼
Generador (OpenAPI Generator · openapi2postman · insomnia-importer)
   │
   ▼
Postman · Insomnia

No existen colecciones mantenidas manualmente en el flujo de release — la versión en repo es snapshot hasta CI automatizado (MSD v1.0).

HerramientaComando (planificado)
Postmanopenapi2postmanv2 -s openapi.v1.yaml -o roustix-api-v1.postman_collection.json
InsomniaGeneración desde OpenAPI import en CI

8 · Casos de uso

Las colecciones permiten:

CasoAudiencia
Probar nuevos endpointsDesarrollo
Validar autenticaciónIntegradores
Demostrar funcionalidadesComercial · MCM
Depurar integracionesSoporte L2
CapacitaciónPartners
Verificar cambios pre-releaseQA API

También sirven como base para pruebas automatizadas (Newman · Insomnia CLI).


9 · Versionado

Las colecciones siguen el mismo ciclo de vida que la API (MAG-07):

ColecciónAPI
Roustix API v1MAG v1
Roustix API v2MAG v2

Cada versión mantiene su propia colección independiente.


10 · Buenas prácticas

#Regla
1Generar las colecciones desde OpenAPI
2No editar colecciones manualmente en release
3Utilizar variables de entorno
4No almacenar credenciales reales
5Sincronizar cada publicación con MAG
6Probar todas las solicitudes antes de cada versión

11 · Distribución

Las colecciones están disponibles desde:

RecursoUbicación
Developer PortalDescarga directa (MSD-02)
Repositoriodocs/api/collections/
OpenAPIRegeneración automática (CI)
SandboxImportación inmediata

Archivos:

ArchivoFormato
roustix-api-v1.postman_collection.jsonPostman Collection v2.1
roustix-api-v1.insomnia.jsonInsomnia Export v4
roustix-sandbox.postman_environment.jsonPostman Environment

Importar en Postman: File → Import → seleccionar colección + entorno Sandbox.


Filosofía del capítulo

Las colecciones oficiales convierten el contrato de la API en una experiencia interactiva. En lugar de construir solicitudes manualmente, el desarrollador importa una colección, se autentica y comienza a trabajar en minutos.

MSD-08 establece las herramientas oficiales de exploración y prueba de Roustix, garantizando que documentación, OpenAPI y herramientas de desarrollo evolucionen siempre de forma sincronizada.