URL Encode for cURL Commands
Quick Answer: When using cURL from the terminal, special characters in URLs must be percent-encoded or the URL must be quoted. Use --data-urlencode for POST form data. Alternatively, quote the entire URL and use --url-query (cURL 7.87+) for query parameters.
FAQ
How do I URL-encode cURL POST data?
Use curl --data-urlencode "field=value with spaces" to automatically encode form data. For JSON POST bodies, use -d with proper JSON escaping instead.
Do I need to encode URLs in cURL?
Wrap URLs in quotes to prevent shell interpretation. For query params with special chars, either pre-encode them or use --data-urlencode with -G for GET requests.