REST Request Object Encoding URL by Default

We are evaluating Katalon Studio as a potential tool of choice for API Testing.

We have Web Service Request objects which are GET requests with a bunch of parameters being passed in the URL. One of those parameters is a comma-separate value (ABC1, ABC2) which needs to be passed with a comma in the request. However, “comma” is being encoded into its corresponding hexa code by default (%2C) which my endpoint cannot understand.

Is there a way to not have the URL encoded by default? Without this, most of our APIs cannot be tested and am looking for a potential solution or a workaround.

Thanks anyone that can help me with this.

Sorry to have to tell you this…

“,” (COMMA) is a URI reserved character. Reserved characters when used in a URL/URI have a reserved purpose. In this case (and unfortunately for you) COMMA is reserved as an alternative to

SEMI-COLON whose purpose is defined as a delimiter for the querystring parameters.

If data for a URI component would conflict with a reserved character’s purpose as a delimiter, then the conflicting data must be percent-encoded before the URI is formed.

https://tools.ietf.org/html/rfc3986#section-2.2

I am not aware of any way to alter what Katalon is doing. It is, after all, performing correctly.

There is of course a chance I misunderstood your question. I am picturing your query looking something like this (in the URL)

?param1=(ABC1,ABC2)...

If that’s correct, you should quote the spec above to the developers of the endpoint/backend and suggest strongly that they fix their interface. A strong argument should be made that following the spec allows them to “play nice” with other systems.

Aside: I imagine they have code at the backend that is parsing the value and splitting on comma. It’s not difficult to use another character or even %2C and decode from there.