1 | initial version |
To create Swagger documentation for Flask, you can follow these steps:
Install the necessary libraries:
pip install flasgger flask-restful
Import the necessary libraries in your Flask app:
from flask import Flask
from flasgger import Swagger
from flask_restful import Api
Create an instance of the Flask app:
app = Flask(__name__)
api = Api(app)
Create an instance of the Swagger object:
swagger = Swagger(app)
Define your API routes using Flask's @app.route()
decorator and Flask-RESTful's api.resource()
decorator:
@app.route('/')
def home():
return 'Hello, World!'
class Greeting(Resource):
def get(self):
return {'message': 'hello, world!'}
api.add_resource(Greeting, '/greeting')
Add Swagger documentation for each route using the @swagger.doc()
decorator:
@app.route('/')
@swagger.doc({
'summary': 'Home page',
'description': 'Returns a welcome message',
'responses': {
'200': {
'description': 'A welcome message is returned',
'content': {
'text/plain': {
'example': 'Hello, World!'
}
}
}
}
})
def home():
return 'Hello, World!'
class Greeting(Resource):
@swagger.doc({
'summary': 'Greeting message',
'description': 'Returns a welcome message',
'responses': {
'200': {
'description': 'A welcome message is returned',
'content': {
'application/json': {
'example': {'message': 'hello, world!'}
}
}
}
}
})
def get(self):
return {'message': 'hello, world!'}
api.add_resource(Greeting, '/greeting')
Run your Flask app and navigate to http://localhost:5000/apidocs
to see your Swagger documentation.