/buildWithParameters endpoint remove literal + from --data option

Hi,
i am using the Jenkins remote access API /buildWithParameters to trigger jobs from bash scripts. In one scenario we send curl request like this

curl https://tci-jenkins.tci.dev.net/job/ccs/job/my-Jobs/job/CCC-Tools-Job-Parallel/buildWithParameters --user ***:*** --data 'ApplicationInput={
    "redis_read": [
                    {
                     "commands" : [
                        "redis-cli keys [Response|SessionManager]*",
                        "redis-cli XRANGE Response:123 - +",
                        "redis-cli XRANGE Utterances:123 - +"
                        ],
                     "infra_tag": "default"
                    }
                ]
}' --data ClusterUnderTest=*** --data Region=*** --data Version=*** --data Namespace=***

when job created at jenkins , the parameter ApplicationInput has all + literals removed.
i have tried everything to escape it with no luck