Insomnia — qué es, cliente REST y GraphQL en el desarrollo

Autor: IT Sectr Publicado: 2026-05-08 Tiempo de lectura: 8 min

Insomnia es un cliente HTTP de escritorio de código abierto para probar API REST, GraphQL y WebSocket. La herramienta se distingue por su interfaz minimalista, un editor de solicitudes integrado y soporte de variables de entorno sin necesidad de registro. Según Insomnia Documentation (2026), el cliente admite la autogeneración de código en más de 20 lenguajes de programación.

Lo esencial

  • Insomnia es un cliente REST y GraphQL gratuito centrado en el rendimiento y el trabajo local sin sincronización en la nube.
  • Los entornos en Insomnia admiten anidamiento y herencia de variables mediante archivos JSON con resaltado de sintaxis.
  • El editor GraphQL incluye autocompletado de esquemas, documentación de tipos y construcción visual de consultas a través de la pestaña GraphQL.
  • Code Generation convierte una solicitud en código en cURL, Python, JavaScript, Kotlin, Swift, Rust y otros lenguajes.
  • El sistema de plugins amplía la funcionalidad mediante plugins de terceros para etiquetado, exportación y generación de datos.

Qué es Insomnia y sus características clave

Insomnia es una aplicación multiplataforma (Electron) para enviar solicitudes HTTP y depurar API. La desarrolla la empresa Kong desde 2016 como una alternativa a Postman con énfasis en la velocidad y la privacidad: los datos se almacenan localmente, la sincronización en la nube es opcional y requiere registro.

Interfaz y navegación

La ventana principal se divide en tres columnas: a la izquierda está el árbol de solicitudes (Workspace), en el centro el editor de solicitudes con las pestañas Params, Headers, Body, y a la derecha el panel de respuesta con los modos Pretty, Raw y Preview. El tema oscuro está activado por defecto y se admiten temas personalizados mediante variables CSS.

Generación de código

Insomnia admite la exportación de una solicitud a código en más de 20 lenguajes y frameworks: cURL, HTTPie, Python Requests, JavaScript Fetch/Axios, Kotlin OkHttp, Swift URLSession, Java Unirest, Ruby Net::HTTP y otros. El generador tiene en cuenta las cabeceras, el cuerpo de la solicitud y el tipo de autenticación, lo que acelera la integración de la API en el código de la aplicación.

Insomnia vs Postman: comparación de clientes API

Insomnia y Postman resuelven la misma tarea pero con distintas prioridades. Insomnia es más ligero (~80 MB frente a ~300 MB), arranca más rápido y funciona totalmente sin conexión sin imponer el registro. Postman ofrece un ecosistema más maduro con monitorización, servidores mock y workspaces de equipo.

CriterioInsomniaPostman
Peso de la aplicación~80 MB~300 MB
Modo sin conexiónCompletoLimitado
GraphQLEditor integradoVersión beta
CLIInso CLINewman
PluginsPlugin HubExtensiones

Elección de la herramienta según la tarea

Para el desarrollo individual y la prueba rápida de endpoints, Insomnia resulta más cómodo gracias a su ligereza y a la ausencia de registro. Para el trabajo en equipo con una colección compartida, la integración CI/CD y la monitorización de API de producción, Postman sigue siendo el estándar de la industria.

Organización del espacio de trabajo y los entornos

El workspace en Insomnia contiene un árbol de solicitudes dividido en carpetas. Cada solicitud puede ser de tipo HTTP, GraphQL, WebSocket o gRPC. Se admite arrastrar y soltar, duplicar y agrupar solicitudes por etiquetas de color. El archivo de configuración del workspace se almacena en formato JSON.

Variables de entorno con herencia

Insomnia admite entornos anidados (Sub Environments) que heredan las variables del padre. Esto permite definir una URL base en el entorno global y sobrescribir solo los parámetros que difieren para distintos entornos. Las variables se sustituyen mediante la sintaxis {`{`}_variable${`}`}.

json
// Ejemplo de la estructura de un entorno de Insomnia
{
    "base_url": "https://api.example.com",
    "timeout": 5000,
    "headers": {
        "Content-Type": "application/json",
        "Accept": "application/json"
    }
}

Trabajo con GraphQL en Insomnia

Insomnia ofrece uno de los mejores editores de GraphQL entre los clientes API. La pestaña GraphQL Query permite escribir consultas con autocompletado de campos basado en el esquema cargado. A la derecha se muestra documentación sobre tipos, campos y argumentos en tiempo real.

Carga del esquema e Introspection

El esquema se carga mediante una solicitud GraphQL Introspection al endpoint. Insomnia guarda el esquema en caché localmente y lo actualiza automáticamente cuando cambia. Tras la carga, están disponibles el autocompletado (Ctrl+Space), la validación de la consulta y la vista previa de posibles errores antes de enviar.

graphql
# Consulta GraphQL con variables en Insomnia
query GetUser($id: ID!) {
    user(id: $id) {
        name
        email
        posts {
            title
            createdAt
        }
    }
}

Plugins y ampliación de funcionalidades

Insomnia Plugin Hub contiene más de 100 plugins que amplían la funcionalidad del cliente. Los plugins se instalan mediante el menú Preferences → Plugins o manualmente a través de npm. Las categorías populares incluyen la generación de datos de prueba, la exportación a distintos formatos y validadores de respuesta personalizados. Cada plugin pasa por una moderación obligatoria antes de publicarse en el hub público de desarrolladores.

Plugins populares

  • insomnia-plugin-faker — generación de datos falsos (nombre, email, teléfono) para solicitudes de prueba.
  • insomnia-plugin-aws4 — firma de solicitudes con AWS Signature Version 4 para trabajar con Amazon API Gateway y S3.
  • insomnia-plugin-utils — utilidades para trabajar con fechas, hash y codificación Base64 directamente en las solicitudes.

Los plugins se escriben en JavaScript e interactúan con Insomnia mediante la API de plantillas (response.*, request.*, environment.*). Desarrollar un plugin requiere conocimientos básicos de Node.js y la publicación mediante un paquete npm con la etiqueta insomnia-plugin.

CLI y automatización de pruebas

Inso CLI es una utilidad de consola integrada en Insomnia para ejecutar solicitudes y pruebas desde el terminal. Inso ejecuta solicitudes individuales o colecciones completas, exporta los resultados a JSON y puede integrarse en pipelines CI/CD. El comando inso run collection ejecuta secuencialmente todas las solicitudes de una colección.

Ejemplo de integración en GitHub Actions

Inso CLI funciona en contenedores Docker y en modo headless, lo que permite usarlo en GitHub Actions y GitLab CI. La configuración de ejecución se describe en un archivo YAML indicando la ruta a la colección exportada y el entorno. Se admiten aserciones sobre el código de estado y el cuerpo de la respuesta mediante scripts JavaScript.

yaml
# Workflow de GitHub Actions con Inso CLI
- name: Run API tests
  run: npx insomnia-inso run collection
    --collection "Auth API"
    --env "Staging"
    --reporter junit
    --output reports/api-results.xml

Integración de Insomnia con Git y trabajo en equipo

Insomnia admite la sincronización de colecciones a través de Git. Los archivos de colección se almacenan en formato JSON y pueden añadirse al repositorio del proyecto. Insomnia proporciona un cliente Git integrado para ver los cambios, crear commits y resolver conflictos de fusión directamente desde la interfaz.

Configuración de la sincronización con Git

Para conectar Git, cree una carpeta local con un repositorio y señálela como directorio raíz en la configuración de Insomnia. La aplicación rastrea automáticamente los cambios en los archivos de colección y los muestra en el panel Version Control. Se admiten operaciones estándar: commit, push, pull y visualización del diff entre versiones.

Trabajo en equipo mediante Insomnia Cloud

Para proyectos sin Git, Insomnia ofrece sincronización en la nube mediante Insomnia Cloud. El plan gratuito incluye hasta 3 miembros del equipo y copia de seguridad automática de las colecciones. Los planes de pago añaden gestión de accesos, auditoría de cambios y soporte prioritario.

Método de sincronizaciónGratuitoSin conexiónControl de versiones
Git (local)Completo (commit, diff, merge)
Insomnia CloudHasta 3 usuariosNoBásico (historial de cambios)
Exportación de archivosManual (mediante un sistema de control de versiones)

Design Mode y generación de especificaciones

Design Mode en Insomnia permite crear especificaciones API en formato OpenAPI 3.0. El modo funciona como un editor visual: defina endpoints y esquemas de datos sin escribir YAML a mano. La especificación puede exportarse a JSON o YAML.

Generación de una colección a partir de OpenAPI

Insomnia importa especificaciones OpenAPI y crea una colección de solicitudes para cada endpoint. Las rutas y los esquemas se convierten en solicitudes HTTP listas para usar. La función es útil al integrarse con microservicios donde la especificación se almacena en un repositorio separado del equipo.

Etiquetado de solicitudes

A cada solicitud se le puede asignar una etiqueta de color: red, blue, green, orange, purple. El filtrado por etiquetas funciona mediante la barra de búsqueda independientemente de la estructura de carpetas, lo que simplifica la navegación en proyectos con cientos de endpoints y muchos módulos.

Design Mode y generación de especificaciones

Design Mode en Insomnia permite crear especificaciones API en formato OpenAPI 3.0 directamente dentro de la aplicación. El modo funciona como un editor visual: defina endpoints, esquemas de datos y parámetros sin escribir YAML a mano. La especificación puede exportarse a JSON o YAML para publicarla en repositorios.

Generación de una colección a partir de OpenAPI

Insomnia importa especificaciones OpenAPI existentes y crea automáticamente una colección de solicitudes para cada endpoint. Las rutas y los esquemas se convierten en solicitudes HTTP listas para usar con tipos de datos correctos. Esta función es útil al integrarse con microservicios donde la especificación se almacena y mantiene un equipo de desarrollo de backend separado.

Etiquetado y filtrado de solicitudes

Para organizar un gran número de solicitudes, Insomnia admite el etiquetado: a cada solicitud se le puede asignar una etiqueta de color: red, blue, green, orange, purple. El filtrado por etiquetas funciona mediante la barra de búsqueda independientemente de la estructura de carpetas, lo que simplifica la navegación en proyectos con cientos de endpoints y muchos módulos funcionales de API.

Preguntas frecuentes

¿Es necesario registrarse para trabajar con Insomnia?

No, el registro no es obligatorio. Insomnia funciona totalmente sin conexión. La sincronización en la nube está disponible como opción para el trabajo en equipo, pero todos los datos se almacenan localmente en archivos JSON en la carpeta ~/.config/Insomnia/.

¿Cómo importar una colección de Postman a Insomnia?

Exporte la colección de Postman en formato JSON (Collection v2.1). En Insomnia elija Import/Export → Import Data → From File. Insomnia convierte automáticamente la colección conservando las solicitudes, las cabeceras y las variables de entorno.

¿Admite Insomnia WebSocket?

Sí, a partir de la versión 2022. Insomnia admite los protocolos WebSocket y Socket.IO. Cree una nueva solicitud de tipo WebSocket, indique la URL (ws:// o wss://) y envíe mensajes mediante la interfaz de chat.

¿En qué se diferencia Inso CLI de Newman?

Inso CLI es una utilidad nativa de Insomnia para ejecutar colecciones desde la consola. Newman es el equivalente para Postman. Inso es más ligero, no requiere instalación adicional (se incluye con Insomnia) y admite todos los tipos de solicitud de Insomnia, incluido GraphQL.

¿Se puede usar Insomnia para gRPC?

Sí, Insomnia admite solicitudes gRPC mediante la pestaña gRPC. Es necesario cargar un archivo .proto con la definición del servicio. Tras la carga, Insomnia muestra los métodos RPC disponibles y genera un mensaje Protobuf binario para el envío.

Resumen

  • Insomnia es un cliente HTTP ligero y rápido para REST, GraphQL y WebSocket con funcionamiento totalmente sin conexión.
  • El editor GraphQL con autocompletado y carga del esquema mediante Introspection es una de las mejores soluciones entre los clientes API.
  • Los entornos admiten anidamiento y herencia de variables para una configuración flexible en distintos entornos.
  • La generación de código en más de 20 lenguajes acelera la integración de la API en aplicaciones móviles y web.
  • Plugin Hub amplía la funcionalidad mediante plugins para generación de datos, firma de solicitudes y validación personalizada.
  • Inso CLI ejecuta colecciones en CI/CD sin interfaz gráfica, exportando los resultados al formato JUnit.
  • El soporte de gRPC con carga de archivos .proto convierte a Insomnia en una herramienta universal para la arquitectura de microservicios.

Desarrollaremos una aplicación móvil llave en mano

IT Sectr crea aplicaciones para iOS y Android para startups y empresas desde 2017. Le asesoraremos y le propondremos la mejor solución.

Discutir el proyecto

Lea también