Converting Query DSL into human readable format

Is there a way / predefined API to convert the Query DSL into human readable format (URL encoded query string) ?

For example, this Query DSL -

{
  "bool": {
    "should": [
      {
        "term": {
          "status": 3
        }
      },
      {
        "term": {
          "priority": 1
        }
      }
    ]
  }
}

should produce -
"status:3 OR priority:1"

in URL encoded, it should be -

status:3%20OR%20priority:1