Algunos desarrolladores nunca quieren dejar el teclado. Si vives en tmux, trabajas vía SSH y consideras la GUI como una fricción, necesitas un cliente de API REST que funcione bien desde la terminal, sin depender de un gestor de ventanas. Hoy ya existen clientes CLI y TUI capaces de manejar colecciones, entornos, historial y archivos versionables sin abrir una aplicación de escritorio.
Esta guía compara los clientes REST de terminal y TUI más útiles en 2026. Todas las herramientas aquí se ejecutan en tu shell, almacenan solicitudes en archivos locales y funcionan vía SSH. El foco es práctico: cuándo usar cada una, cómo instalarlas y cómo encajan en un flujo de trabajo real.
Primero aclaremos las categorías y luego revisemos cada herramienta.
TUI vs CLI vs GUI: qué significan los términos
Antes de elegir una herramienta, define cómo quieres trabajar.
Un cliente CLI ejecuta un comando e imprime una respuesta. Es ideal para scripts, pipelines y llamadas rápidas.
Ejemplos:
curl https://api.example.com/users
http GET https://api.example.com/users
Un cliente TUI dibuja una interfaz interactiva dentro de la terminal. Puedes navegar paneles, editar bodies, cambiar entornos y reutilizar solicitudes guardadas sin salir del shell. Herramientas como atac, posting y slumber entran aquí.
Un cliente GUI es una aplicación gráfica de escritorio o web. Postman, Insomnia o la aplicación de escritorio de Apidog entran en esta categoría. Añaden colaboración, documentación, mocks y editores visuales, pero te sacan de la terminal.
Las herramientas de esta guía cubren principalmente CLI y TUI. Si quieres una visión más amplia del ecosistema, consulta el resumen de alternativas a Postman y clientes de API impresionantes.
atac: un cliente tipo Postman en tu terminal
atac es un cliente de API TUI escrito en Rust y construido sobre Ratatui. Su nombre significa “Arguably a Terminal API Client”. Está inspirado en Postman, Insomnia y Bruno, pero se ejecuta completamente dentro de tu shell.
Qué puedes hacer con atac
atac es una buena opción si quieres una experiencia similar a Postman sin salir de la terminal:
- Guardar colecciones en JSON o YAML.
- Versionar solicitudes con Git.
- Ejecutar métodos HTTP comunes.
- Usar autenticación Basic, Bearer, Digest y JWT.
- Enviar JSON, formularios multipart y archivos.
- Definir variables de entorno.
- Ejecutar scripts JavaScript antes y después de una solicitud.
- Importar colecciones de Postman v2.1.0.
- Importar especificaciones OpenAPI y comandos cURL.
- Exportar solicitudes a cURL, Axios, Rust Reqwest y otros formatos.
Instalación
Con Cargo:
cargo install atac --locked
Con Homebrew:
brew install atac
Con Scoop en Windows:
scoop install atac
También hay paquetes para Arch y Fedora, una imagen Docker y binarios precompilados en GitHub Releases.
Cuándo usarlo
Elige atac si quieres:
- Un flujo visual tipo Postman dentro de la terminal.
- Colecciones legibles y compatibles con Git.
- Migrar trabajo existente desde Postman u OpenAPI.
- Trabajar por SSH sin depender de una GUI.
posting: un TUI moderno construido sobre Textual
posting es un cliente HTTP TUI escrito en Python y construido con Textual. Está orientado a flujos de trabajo controlados por teclado, archivos YAML y entornos versionables.
Qué puedes hacer con posting
posting almacena solicitudes como YAML plano. Eso facilita revisar cambios en pull requests y compartir colecciones con el equipo.
Sus puntos fuertes:
- Solicitudes guardadas en archivos YAML.
- Soporte para uno o más archivos
.env. - Lectura de variables de entorno del sistema.
- Hooks en Python antes y después de cada solicitud.
- Interfaz rápida, orientada al teclado.
- Uso cómodo vía SSH.
Un flujo típico sería:
uv tool install --python 3.13 posting
posting
Luego puedes mantener tus solicitudes junto al código de tu proyecto y versionarlas:
my-api/
posting/
users.yaml
auth.yaml
.env
Instalación
Opción recomendada:
uv tool install --python 3.13 posting
Con pipx:
pipx install posting
Ambas opciones aíslan posting de tus otros paquetes Python.
Cuándo usarlo
Elige posting si:
- Tu equipo ya trabaja con Python.
- Quieres solicitudes YAML legibles.
- Necesitas hooks escritos en Python.
- Prefieres una TUI moderna y rápida para trabajar desde teclado.
slumber: configuración primero por diseño
slumber es un cliente HTTP de terminal escrito en Rust. Su enfoque es “configuración primero”: defines las solicitudes en un archivo YAML y luego las ejecutas desde una TUI o CLI.
Qué puedes hacer con slumber
slumber gira alrededor de un archivo:
slumber.yml
Ahí defines:
- Perfiles.
- Recetas o plantillas de solicitud.
- Variables dinámicas.
- Valores extraídos de respuestas previas.
- Datos obtenidos desde archivos o comandos de shell.
También puedes procesar respuestas con herramientas como:
jq
grep
head
Por ejemplo, puedes filtrar una respuesta JSON con jq directamente desde el flujo de trabajo de terminal.
Instalación
Con Cargo:
cargo install slumber --locked
También hay binarios precompilados en GitHub Releases y soporte mediante Homebrew. Revisa la documentación del proyecto para la fórmula actual.
Cuándo usarlo
Elige slumber si:
- Prefieres escribir solicitudes como configuración.
- Quieres que tu colección sea código desde el inicio.
- Necesitas encadenar respuestas entre solicitudes.
- Te gusta combinar clientes HTTP con herramientas de shell.
ain: un cliente basado en archivos que delega en curl
ain usa un enfoque distinto. No es una TUI de pantalla completa. Es una CLI basada en archivos que organiza solicitudes como plantillas y delega la ejecución real a curl, wget o httpie.
Qué puedes hacer con ain
Las plantillas de ain separan una solicitud en secciones:
[Host]
https://api.example.com
[Method]
POST
[Headers]
Content-Type: application/json
Authorization: Bearer $TOKEN
[Body]
{
"name": "Ada"
}
También soporta secciones como:
[Query]
[Config]
[Backend]
[BackendOptions]
Esto permite:
- Organizar APIs con archivos y carpetas.
- Leer valores desde variables de entorno.
- Usar archivos
.env. - Manejar codificación de URL.
- Generar o reutilizar comandos curl, wget o httpie.
Instalación
ain distribuye binarios precompilados en GitHub Releases y también puede compilarse desde el código fuente. Confirma el método recomendado en el repositorio antes de instalar.
Cuándo usarlo
Elige ain si:
- Quieres solicitudes versionadas como archivos.
- Prefieres apoyarte en curl, wget o httpie.
- Tu flujo de trabajo ya está muy basado en scripts.
- No necesitas una TUI interactiva.
httpie: el estándar CLI amigable
httpie es uno de los clientes HTTP CLI más conocidos. No es una TUI, pero es clave en cualquier flujo de trabajo de terminal porque ofrece una sintaxis más legible que curl para muchas tareas comunes.
Qué puedes hacer con httpie
httpie permite construir solicitudes JSON sin escribir demasiado JSON manualmente.
Ejemplo de POST:
http POST https://api.example.com/users name=Ada role=admin
Para enviar JSON crudo en un campo:
http POST https://api.example.com/users profile:='{"team":"platform"}'
También ofrece:
- Respuestas coloreadas y formateadas.
- Descargas.
- Plugins.
- Sesiones persistentes con
--session. - Archivos de sesión JSON editables.
Ejemplo con sesión:
http --session=dev GET https://api.example.com/me
Instalación
Con Homebrew:
brew install httpie
Con apt:
apt install httpie
Con pip:
pip install httpie
Consulta la documentación oficial para la opción recomendada en tu sistema.
Cuándo usarlo
Elige httpie si:
- Necesitas llamadas ad-hoc rápidas.
- Quieres una sintaxis fácil de recordar.
- Estás escribiendo scripts.
- Quieres algo más legible que curl para uso diario.
curlie: el poder de curl con la ergonomía de httpie
curlie es un frontend ligero para curl que toma prestada la sintaxis y el formato de salida de httpie. Su propuesta es directa: “el poder de curl, la facilidad de uso de httpie”.
Qué puedes hacer con curlie
curlie mantiene disponibles las opciones de curl, pero mejora la ergonomía para uso interactivo.
Ejemplo:
curlie GET https://api.example.com/users
Para imprimir JSON bonito:
curlie --pretty GET https://api.example.com/users
Para ver el comando curl equivalente:
curlie --curl GET https://api.example.com/users
Esto es útil cuando necesitas compartir una solicitud con alguien que usa curl puro o moverla a un script.
Instalación
Con Go:
go install github.com/rs/curlie@latest
Con Homebrew:
brew install curlie
También puedes usar el gestor de paquetes de tu distribución.
Para más opciones, consulta el resumen de clientes de API impresionantes y alternativas a Postman.
Cuándo usarlo
Elige curlie si:
- Ya conoces curl.
- Necesitas compatibilidad con sus flags.
- Quieres una salida más cómoda para leer.
- Buscas el cambio más pequeño desde curl puro.
Tabla comparativa
| Herramienta | Tipo | Lenguaje | Almacenamiento | Lo mejor para |
|---|---|---|---|---|
| atac | TUI | Rust | JSON / YAML | Flujo de trabajo de terminal tipo Postman, colecciones compatibles con Git |
| posting | TUI | Python | YAML + dotenv | Equipos que priorizan el teclado, hooks de solicitud en Python |
| slumber | TUI + CLI | Rust | YAML (slumber.yml) |
Solicitudes con configuración primero, encadenamiento de comandos de shell |
| ain | CLI (basado en archivos) | Go |
.ain template files |
Solicitudes versionadas sobre curl/wget/httpie |
| httpie | CLI | Python | JSON sessions | Solicitudes ad-hoc legibles y scripting |
| curlie | CLI | Go | none (envuelve curl) | Todo el poder de curl con la ergonomía de httpie |
Los seis clientes almacenan datos localmente o trabajan directamente desde archivos y comandos. También funcionan vía SSH, que es una de las principales razones para elegir herramientas de terminal.
Una forma práctica de combinarlos:
- Usa un TUI para explorar y depurar APIs.
- Usa una CLI para llamadas rápidas, scripts y pipelines.
- Versiona las colecciones o plantillas junto al código cuando el equipo necesite reproducibilidad.
Para más opciones entre categorías, revisa las guías de clientes de API REST y los mejores clientes de API sin conexión.
Cómo elegir tu cliente de terminal
Empieza por tu flujo de trabajo, no por la lista de features.
Si quieres una experiencia interactiva
Usa un TUI:
- atac si quieres algo cercano a Postman.
- posting si prefieres YAML y hooks en Python.
- slumber si quieres definir todo como configuración.
Si quieres comandos rápidos
Usa una CLI:
- httpie para una sintaxis amigable.
- curlie si necesitas todo el poder de curl.
- ain si quieres guardar las solicitudes como archivos versionados.
Si trabajas en equipo
Evalúa cómo se compartirán las solicitudes:
- ¿Se revisarán en pull requests?
- ¿Deben funcionar sin conexión?
- ¿Necesitas entornos distintos?
- ¿Necesitas importar desde Postman u OpenAPI?
- ¿Vas a ejecutar pruebas en CI?
Todas las herramientas aquí mantienen datos en archivos locales o usan sesiones simples. Eso ayuda a trabajar con Git y sin conexión. Si buscas herramientas gratuitas y offline más allá de clientes REST, revisa la guía de clientes de API gratuitos.
Dónde encaja Apidog
Los clientes de terminal son excelentes cuando un desarrollador necesita enviar solicitudes rápido. El límite aparece cuando un equipo necesita colaborar sobre contratos, publicar documentación, crear mocks o automatizar pruebas.
Apidog es una plataforma API todo en uno con aplicación de escritorio para Windows, Mac y Linux, aplicación web y CLI. Cubre diseño con editor visual de OpenAPI, escenarios de prueba automatizados con aserciones visuales, servidores mock inteligentes, documentación interactiva autogenerada y colaboración en equipo en tiempo real. Soporta REST, GraphQL, gRPC, WebSocket, SOAP y Socket.IO.
Úsalo como capa de equipo cuando una TUI local ya no sea suficiente.
Hay dos aclaraciones importantes.
Primero, Apidog es una capa de calidad de API: sirve para diseñar, probar, simular y documentar contratos. No es un CMS, una plataforma de comercio, una pasarela de API ni un generador de carga. Si solo necesitas solicitudes ad-hoc desde la terminal, las herramientas anteriores ya resuelven ese caso.
Segundo, la CLI de Apidog no es un cliente interactivo para enviar solicitudes sueltas desde la terminal. El comando apidog run ejecuta escenarios de prueba guardados en pipelines de CI, con reporteros cli, html, json y junit, ejecuciones impulsadas por datos con -d y selección de entorno con -e.
Ejemplo conceptual:
apidog run \
-e staging \
-d data.csv \
--reporter cli,json,junit
Eso es automatización de pruebas, no exploración ad-hoc. No reemplaza a httpie, curlie o atac para escribir una solicitud y ver la respuesta en vivo.
Si tu objetivo es ejecutar suites guardadas en CI, consulta la guía completa de Apidog CLI y cómo probar una API REST desde la línea de comandos.
Modelo mental simple:
- Usa un cliente CLI o TUI para solicitudes interactivas.
- Usa Apidog cuando entren en juego colaboración, mocks, documentación o pruebas automatizadas en CI.
Preguntas frecuentes
¿Cuál es el mejor cliente de API REST para terminal?
No hay un único ganador. atac es el más cercano a Postman en formato TUI. httpie es una de las CLI más amigables. slumber encaja mejor si quieres definir solicitudes como configuración. Elige según necesites una interfaz interactiva o comandos rápidos.
¿Pueden estos clientes funcionar vía SSH?
Sí. Todas las herramientas de esta guía se ejecutan dentro de la terminal, por lo que funcionan en sesiones SSH. Esa es una de sus principales ventajas frente a clientes de escritorio.
¿Los clientes de API de terminal almacenan las solicitudes localmente?
Sí. atac, posting, slumber y ain guardan solicitudes en archivos locales como JSON, YAML o plantillas. httpie almacena sesiones como JSON. curlie envuelve a curl y no guarda datos por sí mismo.
¿Es httpie un TUI?
No. httpie es una herramienta CLI. Escribes una solicitud como comando y recibes una respuesta formateada. Si necesitas una interfaz interactiva con paneles, usa atac, posting o slumber.
¿Debería usar un cliente de terminal o Apidog?
Usa un cliente de terminal o TUI para solicitudes rápidas, interactivas y ad-hoc. Usa Apidog cuando el equipo necesite colaboración, mocks, documentación publicada o automatización de pruebas en CI. La CLI de Apidog ejecuta suites guardadas; no reemplaza el envío interactivo desde la terminal.
¿Existe un cliente TUI que importe colecciones de Postman?
Sí. atac importa colecciones y entornos de Postman v2.1.0, especificaciones OpenAPI y comandos cURL, lo que facilita migrar trabajo existente.






Top comments (0)