cURL a Código
Convierte comandos cURL a JavaScript, Python, Go, PHP y más, en tu navegador.
const response = await fetch("https://api.example.com/users", {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer token123"
},
body: "{",
});
const data = await response.json();
console.log(data);Por qué usarlo
Del comando cURL al código listo para producción
Múltiples lenguajes
JavaScript, Python, Go, PHP, Ruby y más. Elige el lenguaje de tu stack.
Headers y auth incluidos
Convierte comandos con Bearer tokens, Basic Auth, API keys y JSON body sin perder nada.
Instantáneo
Convierte cualquier comando cURL en código funcional en menos de 1 segundo.
Privado
Tus tokens y comandos nunca salen de tu navegador. Sin logs, sin servidores.
Cómo funciona
Tres pasos, sin complicaciones
Pega tu comando cURL
Copia el comando cURL desde tu terminal, documentación de API, o las DevTools del navegador (clic derecho en una petición > Copiar como cURL).
Elige el lenguaje de destino
Selecciona JavaScript (fetch/axios), Python (requests), Go (net/http), PHP (cURL), Ruby, o el que necesites para tu proyecto.
Copia el código generado
El conversor genera el código HTTP equivalente con headers, body, método y autenticación incluidos. Listo para pegar en tu proyecto.
Preguntas frecuentes
¿Tienes dudas?
cURL (Client URL) es una herramienta de línea de comandos y librería para transferir datos con URLs, creada por Daniel Stenberg en 1997. El primer prototipo se llamaba httpget y apareció en noviembre de 1996; en marzo de 1998 fue renombrado a curl y pasó a ser open source. Hoy libcurl (la librería C subyacente) está integrada en miles de millones de dispositivos: sistemas operativos Windows, macOS, iOS, Android, routers, smart TVs, consolas de videojuegos y prácticamente cualquier dispositivo conectado a internet.
cURL acepta headers de autenticación mediante el flag -H. Para Bearer tokens: curl -H 'Authorization: Bearer TU_TOKEN'. Para Basic Auth: curl -u usuario:contraseña (cURL lo codifica en Base64 automáticamente) o curl -H 'Authorization: Basic BASE64_CODIFICADO'. Para API keys: curl -H 'X-API-Key: TU_CLAVE'. El conversor detecta el tipo de autenticación y genera el código equivalente en el lenguaje seleccionado.
GET es el método predeterminado en cURL cuando no se especifica ningún flag de datos. POST se activa automáticamente al usar -d o --data. Puedes forzar métodos explícitamente con -X: curl -X POST, curl -X PUT, curl -X DELETE, curl -X PATCH. Para PATCH con body JSON: curl -X PATCH -H 'Content-Type: application/json' -d '{"campo":"valor"}' URL.
Para enviar JSON en el body: curl -X POST -H 'Content-Type: application/json' -d '{"clave":"valor"}' URL. El header Content-Type: application/json es obligatorio para que el servidor interprete el body como JSON. Para JSON en un archivo: curl -X POST -H 'Content-Type: application/json' -d @datos.json URL. El símbolo @ indica que el valor es un path de archivo.
El flag -k o --insecure le dice a cURL que ignore los errores de certificados TLS/SSL, incluyendo certificados autofirmados, expirados o de CAs no reconocidas. Es útil para entornos de desarrollo con certificados locales, pero NUNCA debe usarse en producción ni en scripts que manejen datos sensibles: sin verificación TLS, la conexión es vulnerable a ataques man-in-the-middle. En producción, la solución correcta es instalar el certificado raíz de tu CA privada con --cacert o configurar correctamente el certificado del servidor.
cURL: historia, el ecosistema libcurl y cómo funciona HTTP
La historia de cURL comienza con Daniel Stenberg, desarrollador sueco que en noviembre de 1996 publicó httpget, un pequeño script para descargar datos de tipo de cambio de divisas desde internet para un canal de IRC. En enero de 1998 el proyecto fue renombrado a curl (versión 4.0) y comenzó a soportar múltiples protocolos. En marzo de 1998 apareció libcurl, la librería C reutilizable, que transformó la herramienta de línea de comandos en un componente de infraestructura. En 2024, la versión 8.x de cURL soporta más de 25 protocolos: HTTP/1.1, HTTP/2, HTTP/3 (QUIC), HTTPS, FTP, FTPS, SCP, SFTP, TFTP, TELNET, DICT, LDAP, LDAPS, IMAP, SMTP, POP3, RTSP, RTMP y más.
libcurl es probablemente la librería de software más distribuida del mundo. Está integrada en el sistema operativo Windows (desde Windows 10 build 17063, 2017, como curl.exe nativo), macOS (desde macOS 10.15 Catalina), iOS, Android NDK, y en miles de productos: routers Cisco y Juniper, smart TVs de Samsung y LG, consolas PlayStation y Xbox, el sistema de control de la Estación Espacial Internacional, y las sondas Mars Curiosity y Perseverance de la NASA. Daniel Stenberg mantiene activamente el proyecto con más de 25 años de commits ininterrumpidos. En 2020, la Internet Society reconoció a cURL con el premio Internet Hall of Fame.
La comparación Postman vs cURL vs Insomnia refleja diferentes filosofías de trabajo con APIs. Postman (fundado en 2012, actualmente con más de 25 millones de usuarios) y Insomnia (adquirido por Kong en 2019) ofrecen interfaces gráficas para organizar colecciones de requests, gestionar entornos y colaborar en equipo. cURL es la herramienta de línea de comandos universal: presente en cualquier sistema Linux/macOS, automatizable en scripts bash, reproducible en documentación y CI/CD. La función 'Copy as cURL' presente en las DevTools de Chrome, Firefox y Safari (clic derecho en cualquier request de la pestaña Network) convierte el navegador en un generador de comandos cURL, permitiendo reproducir exactamente cualquier petición HTTP del navegador en la terminal o convertirla a código con esta herramienta.