2026 VENTA -50%08h:34metro:11s
Acceso

Cómo usar cURL para enviar solicitudes POST

Última actualización: 23 de junio de 2026

Si eres desarrollador y trabajas con APIs, aprender a enviar solicitudes POST con cURL es obligatorio. Es una de las formas m?s sencillas de probar endpoints, subir datos o interactuar con servidores, todo desde tu terminal.

En este post te mostraremos c?mo enviar solicitudes POST con cURL y c?mo enviar JSON, XML, archivos y datos de formularios.

Paso 1: ?Est? instalado cURL?

La mayor?a de los sistemas ya tienen cURL. Para comprobar si el tuyo tambi?n, abre una terminal y ejecuta el siguiente comando:

curl --version

If it’s not installed, download it from curl.se. Windows users may need Git Bash or WSL to get the best results.

Paso 2: Una solicitud POST sencilla

Aqu? tienes un ejemplo b?sico de una solicitud POST con cURL:

curl -X POST -d "Hello" https://example.com/api
  • -X POST = m?todo HTTP
  • -d = datos que env?as en el cuerpo

Paso 3: A?ade encabezados Content-Type

Para informar al servidor qu? tipo de datos est?s enviando, aseg?rate de incluir un encabezado Content-Type:

Para texto plano:

curl -X POST -H "Content-Type: text/plain" -d "Hello" https://example.com/api

Para JSON:

curl -X POST -H "Content-Type: application/json" \
-d '{"name":"Alice","age":30}' https://example.com/api

Usa comillas simples para envolver el JSON y evitar que la terminal se confunda con las comillas dobles internas.

Paso 4: Env?a cargas XML

Si la API espera XML:

curl -X POST -H "Content-Type: application/xml" \
-d '<?xml version="1.0"?><user><name>Alice</name></user>' \
https://example.com/api

Paso 5: Sube archivos con -F

Para subir archivos (como im?genes, documentos o logs):

curl -X POST -F "file=@/path/to/file.jpg" https://example.com/upload

Subir varios archivos:

curl -X POST \
-F "image1=@/path/to/one.jpg" \
-F "image2=@/path/to/two.jpg" \
https://example.com/upload

cURL gestiona autom?ticamente multipart/form-data por ti.

Paso 6: Env?a datos de formulario

Para env?os cl?sicos de formularios (como iniciar sesi?n o enviar un formulario de contacto):

curl -X POST -d "username=test&password=1234" https://example.com/login

Tambi?n puedes enviar varios campos de formulario repitiendo el flag -d o combinarlos en una sola cadena.

Paso 7: A?ade autenticaci?n b?sica

Si el endpoint requiere credenciales de acceso, usa -u:

curl -u username:password https://example.com/secure

Esto a?ade autom?ticamente un encabezado Authorisation usando codificaci?n Base64.

Usar cURL con proxies residenciales

Si est?s probando endpoints geolocalizados o quieres privacidad extra, puedes usar cURL con un proxy as?:

curl -x http://proxyuser:[email protected]:5959 \
-X POST -d '{"action":"test"}' https://example.com/api

At Thunderproxy.com, we provide residential proxies that work perfect with cURL. This is helpful when testing websites from different locations or when you need to bypass rate limits.

Reflexiones finales

cURL is a tool for developers, system administrators and testers. It’s fast and efficient – whether you are sending JSON, uploading files, or logging into protected endpoints.

Once you learn the basic flags (-X-d-H-F-u), you’ll be comfortable to create any kind of HTTP request in seconds.

Índice del artículo

¿Listo para probarlo tú mismo?

Comience a usar nuestro producto con solo unos pocos clics.