Add Upload button for OpenAPI 2.0 file as Octet-Stream
Context
- I am using OpenAPI ver 2.0
- I have API which consumes application/octet-stream (Java InputStream)
Issue
In OpenAPI ver 2.0 I can only set input type as multipart/form-data (link) to have upload button. When I have applied this solution for my swagger:
<code>
"consumes": [ "multipart/form-data" ],
"produces": [ "application/json" ],
"parameters": [ {
"in": "formData",
"name": "messageFile",
"description": "Description...",
"required": true,
"type": "file"
} ]
</code>
I am getting following error: Unsupported Media Type after sending a file - it is normal due to my API wants octet-stream.
Question
Is it possible to have upload button using OpenAPI ver 2.0 and application/octet-stream like:
If no, then what will be better solution / workaround for this?
Not out of the box. You can try forking Swagger UI and implementing this non-standard functionality yourself. But the proper solution is to use OpenAPI 3.0. If you write the API definition manually (rather than generate it from code), there are OpenAPI 2.0-to-3.0 converters to help you with the migration.