Generador de comandos curl

Especifica el método HTTP, la URL, las cabeceras, el cuerpo y el método de autenticación en el formulario para generar un comando curl listo para copiar y ejecutar. Como la petición nunca se envía realmente, no hay restricciones de CORS.

Opciones de curl más usadas

Opción Descripción
-X, --request <method> Especifica el método HTTP (GET, POST, PUT, PATCH, DELETE, etc.). Si se omite, se usa GET cuando no hay cuerpo y POST cuando sí lo hay.
-H, --header <header> Añade una cabecera de petición. Repite -H para añadir varias.
-d, --data <data> Envía un cuerpo de petición. Si no se especifica -X, se envía automáticamente como POST con Content-Type: application/x-www-form-urlencoded.
-u, --user <user:password> Especifica el usuario y la contraseña para la autenticación Basic en formato "user:password".
-k, --insecure Omite la verificación del certificado SSL. Pensado para entornos de desarrollo con certificados autofirmados. No recomendado en producción.
-L, --location Sigue automáticamente el destino indicado por la cabecera Location cuando el servidor responde con una redirección 3xx.
-v, --verbose Muestra el intercambio detallado de la petición y la respuesta, incluidas las cabeceras, en la salida de error estándar. Útil para depurar.
--compressed Añade una cabecera Accept-Encoding, solicitando y descomprimiendo automáticamente respuestas comprimidas con gzip u otros métodos.
-o, --output <file> Guarda el cuerpo de la respuesta en el archivo indicado en lugar de la salida estándar.
-F, --form <name=content> Envía datos de formulario o archivos en formato multipart/form-data. Especifica "@ruta_del_archivo" para subir archivos.

Consejos

  • El comando generado se puede pegar directamente en una terminal, script de shell o archivo de configuración de CI/CD y ejecutarse tal cual. Todos los valores ya están escapados con comillas simples.
  • Aparece una advertencia si introduces un cuerpo mientras el método sigue siendo GET. Esto se debe a que curl envía automáticamente la petición como POST cuando se usa -d sin -X, por lo que el aviso ayuda a evitar comportamientos no deseados.
  • Al marcar "Añadir automáticamente Content-Type: application/json" se agrega la cabecera Content-Type que suele olvidarse al llamar a una API JSON.
  • Tanto los valores de autenticación Basic como los del token Bearer se procesan por completo dentro de tu navegador y nunca se envían a ningún servidor.
  • El -k generado (omitir la verificación del certificado) es una solución temporal pensada solo para desarrollo local con certificados autofirmados. Evita usarlo de forma permanente contra APIs de producción.

Preguntas frecuentes

No. Esta herramienta solo construye la cadena del comando y nunca envía una petición HTTP real. La petición solo se produce cuando copias el comando generado en una terminal y lo ejecutas tú mismo. Si quieres enviar la petición y ver el resultado, usa nuestra herramienta hermana, el "Probador de API REST".

Sí. Si introduces el método, la URL, las cabeceras y el cuerpo de una petición creada en Postman, esta herramienta genera un comando curl que puedes copiar y pegar directamente. Es útil para pegarlo en scripts de CI/CD o en documentación.

Técnicamente sí, pero hay que tener cuidado. Si a curl se le indica -d (datos del cuerpo) sin la opción -X, envía automáticamente la petición como POST. Para el caso poco frecuente en que necesites mantener GET enviando un cuerpo, añade manualmente -X GET al comando generado.

No. Toda la información de autenticación que introduces se procesa por completo mediante JavaScript en tu navegador y nunca se envía al servidor de toolbase.cc. Solo llega a la API real cuando ejecutas tú mismo el comando generado en tu propio entorno.

"-k (--insecure)" omite la verificación del certificado SSL y está pensada únicamente como solución temporal para entornos de desarrollo local con certificados autofirmados. No se recomienda su uso en producción ni en comunicaciones con información sensible, ya que abre la puerta a ataques de intermediario.
ツールくん

A propósito — por qué curl es la herramienta que todos usan pero casi nadie conoce

curl es una herramienta de línea de comandos para transferir datos mediante URLs, creada en 1996 por el ingeniero sueco Daniel Stenberg. Se originó a partir de un pequeño script que obtenía tipos de cambio para un bot de chat de IRC, y desde entonces ha crecido hasta convertirse en un proyecto enorme compatible con más de 25 protocolos, incluidos HTTP, FTP y SMTP.

curl se considera uno de los programas más utilizados del mundo. Está integrado en prácticamente todos los dispositivos conectados a internet —teléfonos, coches, electrodomésticos, consolas e incluso naves espaciales (se ha usado en misiones de la NASA a Marte)—, con una base instalada estimada en decenas de miles de millones de unidades. A pesar de esta enorme presencia, sigue siendo un ejemplo clásico de infraestructura invisible que casi nadie fuera del ámbito de la programación conoce.

En 2019, Stenberg fue reconocido por la Linux Foundation por sus contribuciones a la tecnología web fundamental. Sigue siendo el mantenedor principal que dirige el desarrollo de curl hoy en día, conocido por preservar cuidadosamente la compatibilidad hacia atrás durante más de dos décadas.

Incluso ahora que herramientas gráficas como Postman están muy extendidas, los comandos curl se siguen usando en archivos README, documentación oficial y pasos de verificación de APIs. La razón es sencilla: curl no requiere instalación y viene preinstalado en casi todos los entornos Linux y macOS, lo que permite ejecutar un solo comando al momento y compartir el resultado con un nivel de reproducibilidad difícil de igualar.