Start with the base URL, then add each query parameter as a name–value pair using a URL-building API or URL builder. The tool should encode spaces, ampersands, percent signs, and Unicode inside values while preserving the URL's structural separators.
Test the finished link in a URL parser. Confirm that each parameter appears once with the intended decoded value. Avoid concatenating ? and & by hand, and do not encode the entire URL when you meant to encode one parameter. Keep tokens and personal identifiers out of public links.
A syntactically valid URL can still point to the wrong destination; check the hostname.