
In views.py: from rest_framework import viewsetsĬlass UserViewSet(viewsets.ReadOnlyModelViewSet): Then in your urls.py: from rest_framework import routersįrom import UserViewSet Then in your settings.py just include: INSTALLED_APPS = [ What you need to do in this case: Django Rest Framework + Swagger pip install django djangorestframework django-rest-swagger So answering to your wide range question about Swagger integration with Django, you can use Django Rest Framework + Swagger (which I recommend) or Swagger only. Launch your free trial today.If you're trying to use Swagger, then I'm sure you're building an API (REST). To experience Swagger in action, check out Cloudways Laravel Hosting. This may be a caching issue, so make sure to hard-reload the page so that a fresh copy of your specification file is fetched.

But there is a caveat (as per our experience), that some minor feature may break in a certain build.Ī few times you may experience that recent changes in your specification file are not reflecting in UI. Swagger UI is a very active project and it’s highly recommended to keep updating your build of it. Also the specification can be broken in multiple files as we use few definitions defined in a separate files (params.yaml and responses.yaml).įinal output would look like this.

Here is a sample of the YAML file swagger: '2.0'ĭescription: Move your app forward with the Cloudways APIĭescription: "API Authentication related calls"Īs you can see, we can re-use parts of the specification using the $ref property. Swagger Editor ( a context aware Swagger specification editor) can certainly help you in the process but you can also use the text editor of your choice. Swagger specification consists of a YAML or JSON file. After that, just open “./dist/index.html” in your browser. You can easily install Swagger UI by either downloading or cloning the repo. Anyway, we found Swagger UI and Swagger Specification very user-friendly and went on to write the specification manually for our API. These days, Laravel and Lumen are becoming the most widely used frameworks for creating PHP based web apps and APIs, and we were expecting some out of the box support for these in swagger but couldn’t find any. Swagger is a language/framework agnostic ecosystem to produce and visualize RESTful APIs. For this purpose, we evaluated different frameworks and finally went for Swagger. Recently at Cloudways, we started to create an API for Cloudways Platform and we wanted to give our customers the most convenient tool to explore our API. Google’s OAuth 2.0 Playground is a good example of it.

Things can get more awesome if the interactive tool can be used as a playground to test your API. Follow writing an API, it’s always a good idea to give the API users an interactive visualization of your complete API.
