Skip to main content
Feedback

Transform Query Parameters Policy

Updated 7 May 2024

You can use the transform query params policy to override incoming HTTP request query parameters. You can override the HTTP query parameters by:

  • Clearing all existing query parameters.

  • Adding to or updating the list of query parameters.

  • Removing query parameters individually.

The query parameter values of the incoming request are accessible via the {#request.params['query_parameter_name']} construct.

Timing

On RequestOn Response
X

Examples

Add the ID of the incoming request to the outgoing request:

"transform-queryparams": {
"addQueryParameters": [
{
"name": "myParam",
"value": "{#request.id}"
}
]
}

https://host:port/path?foo=bar becomes https://host:port/path?foo=bar&myParam=my-request-id

Remove existing param and add a new one:

"transform-queryparams": {
"removeQueryParameters": [
"foo"
],
"addQueryParameters": [
{
"name": "myParam",
"value": "myValue"
}
]
}

https://host:port/path?foo=bar&key=value becomes https://host:port/path?key=value&myParam=myValue

Remove all existing params and add a new one:

"transform-queryparams": {
"clearAll": true,
"addQueryParameters": [
{
"name": "myParam",
"value": "myValue"
}
]
}

https://host:port/path?foo=bar&key=value becomes https://host:port/path?myParam=myValue

Replace an existing param:

"transform-queryparams": {
"addQueryParameters": [
{
"name": "myParam",
"value": "myNewValue"
}
]
}

https://host:port/path?myParam=myValue becomes https://host:port/path?myParam=myNewValue

Append multiple values to an existing param:

"transform-queryparams": {
"addQueryParameters": [
{
"name": "foo",
"value": "bar2",
"appendToExistingArray": true
},
{
"name": "foo",
"value": "bar3",
"appendToExistingArray": true
}
]
}

https://host:port/path?foo=bar becomes https://host:port/path?foo=bar&foo=bar2&foo=bar3

Replace an existing param with an array:

"transform-queryparams": {
"addQueryParameters": [
{
"name": "foo",
"value": "bar2",
"appendToExistingArray": false
},
{
"name": "foo",
"value": "bar3",
"appendToExistingArray": true
}
]
}

https://host:port/path?foo=bar becomes https://host:port/path?foo=bar2&foo=bar3

On this Page