Forum Discussion

abonstrom's avatar
4 years ago
Solved

Can't add requestBody to GET call in OpenAPI 3.0

I have an existing API endpoint with a GET operation. The GET operation takes several parameters and I currently have those parameters being sent in the body of the request. 

 

OpenAPI 3.0 no longer supports the requestBody object on GET requests (as seen here https://swagger.io/docs/specification/describing-request-body/), is there any way I can describe this API operation using OpenAPI 3.0 or does someone know of a workaround? 

3 Replies

    • FaimMedia's avatar
      FaimMedia
      New Member

      A payload within a GET request message has no defined semantics; sending a payload body on a GET request might cause some existing implementations to reject the request.

      No where is it stated a request body can’t be used with a GET request, so it’s weird this is a limitation to the specs. Elasticsearch API for example uses it exactly like this. 

    • abonstrom's avatar
      abonstrom
      Icon for Staff rankStaff

      Thank you rickyxurq !

       

      Having the parameters in the query or path were not an option for us, so we turned the operation into a POST call instead.