is it possible to get an offline version of swagger documentation for a website?

10,250

There are lots of ways to provide API docs to your users if you for some reason cannot host Swagger UI yourself. All suggestions assume you have an OpenAPI (Swagger) definition, that is the YAML/JSON file. If you don't know the location of the YAML/JSON file, you can infer it from the Swagger UI web page.

In no particular order:

  1. Send the YAML/JSON file to your users and tell them to load it in http://editor.swagger.io in order to preview the API docs.

  2. Import your OpenAPI definition file into SwaggerHub and host your API docs there.
    Disclosure: SwaggerHub is made by the company I work for.

  3. Put your OpenAPI definition file on any public web server, e.g. create a gist on GitHub. Then you can render API docs by loading it into Swagger UI public demo, like so:

     http://petstore.swagger.io?url=YOUR_YAML_or_JSON_URL
    

If using a gist, make sure to specify a raw gist link (https://gist.githubusercontent.com/...). If using another hosting, make sure the hosting server supports CORS.

  1. "Pack" Swagger UI and your OpenAPI definition into a single dependency-less file as explained here, and send the resulting file to your users.

  2. Generate static HTML docs (not Swagger UI, but a static HTML page without "try it out"): load your OpenAPI definition into http://editor.swagger.io, then select the menu item Generate Client > html or html2 or dynamic-html.

The "Generate Client" feature uses Swagger Codegen, so you can also use the CLI version of the Codegen to generate the desired output.

  1. Want a PDF? It's possible to convert OpenAPI definitions to PDF.

See also:

Share:
10,250

Related videos on Youtube

user9393635
Author by

user9393635

Updated on June 23, 2022

Comments

  • user9393635
    user9393635 almost 2 years

    localhost/swagger is loading as expected for me but remoteserver/swagger is having issues. Is it possible for me to save an offline copy of the swagger documentation that's generated? I can just send a zip file to a few users while I'm trying to debug the remote issue.

    • Shloime Rosenblum
      Shloime Rosenblum about 6 years
    • Helen
      Helen about 6 years
      By "Swagger documentation", do you mean the OpenAPI/Swagger definition itself (YAML/JSON file), or interactive Swagger UI with "try it out" (like on petstore.swagger.io), or do you want a PDF or something else? The more specific you are, the easier it will be to suggest something.