CURL

  • XML GET

curl -H "Accept: application/xml" -H "Content-Type: application/xml" -X GET "http://hostname/resource"
  • JSON GET

curl -i -H "Accept: application/json" -H "Content-Type: application/json" -X GET "http://hostname/resource"
  • JSON PUT

curl -i -H 'Content-Type: application/json' -H 'Accept: application/json' -X PUT -d '{"updated_field1":"updated_value1"}' "http://hostname/resourcex"
  • JSON POST uploading a file

curl -i -H 'Accept: application/json' -X POST -F "filename=@/file/path" -F "other_field=its_value"   "http://hostname/resource"
  • JSON DELETE

curl -i -H 'Content-Type: application/json' -H 'Accept: application/json' -X DELETE -d '{"key1":"value1"}' "http://hostname/resource"
  • POST

curl -i -X POST -H 'Content-Type: application/x-www-form-urlencoded' --data 'key1=value1&key2=value2' url
  • "Debugging mode" (without actual content output):

curl -XGET -vvv http://hostname/resource > dev\null
  • Custom UserAgent:

curl -A "some-user-agent" http://hostname/resource

Useful arguments

  • -k: not check SSL certificates

  • -L: follow redirects

  • -v: get verbose output

  • -V: get headers at output

Last updated