Swagger specification for Dremio Rest API

Could you please share Swagger specification for Dremio Rest API

2 Likes

Yes, we would to gen a python client for the api.

Interestingly there seems to be a api/swagger but when I hit it I get errors.

Dremio has a catch-all mechanism, so that’s why it is responding to api/swagger but it doesn’t return the expected document as we don’t support Swagger at that time.

Ah ok. Is there some other API spec that you are using behind the scenes? Often you can just clip on something to produce the swagger spec automatically.

I am reluctant to spend time manually mapping the API if it is subject to change. If I can scrape it from the open sourced code that could be good too.

Internally our Rest API is based on the Jersey framework (https://jersey.github.io/), and it is in theory possible to integrate Swagger to automatically generate the API schema. This would need to be added to our roadmap, so I cannot tell you when this will be delivered.

At the same time, we try to make our public API stable over versions (only extending it), so you can assume that anything documented at https://docs.dremio.com/rest-api/ will remain (or you would be given advance notice in case we plan to deprecate/retire an API).

Has anyone documented the Dremio REST API using Swagger or another Postman compatible format?

Hi @datocrats-org, this remains and unfinished task at Dremio, but we would make Swagger documentation publicly available if it ever is completed.

Here is my work on the Postman collection, I think it should be useful! I haven’t finished documenting examples for the enterprise edition. I also need to figure out exactly what the body must contain for the PUT endpoints. I linked all the official dremio documentation links into the description for each endpoint.

I think if you run it and have Postman account, you should be able to provide a pull request. I’d be really happy if @ben can fold the format for Postman into the official documentation somehow.

Run in Postman