- How to take this course
- Python on Windows
- Python on Mac
Rest APIs with Flask and Python
Learn to use Python, Flask, Flask-RESTful, and Flask-SQLAlchemy for creating professional-grade REST APIs with Rest ...Read more
Online
₹ 549 3099
Quick Facts
particular | details | |||
---|---|---|---|---|
Medium of instructions
English
|
Mode of learning
Self study
|
Mode of Delivery
Video and Text Based
|
Course overview
A REST API is a programme that accepts data from clients and sends it back to them. When implementing REST APIs, users are mostly online or mobile apps, which implies that when constructing websites, the clients are almost always the users themselves. Rest APIs with Flask and Python will teach you how to build a REST API where users not only authenticate their credentials but use the API for storing and retrieving data from the database.
Rest APIs with Flask and Python online certification course is developed by Teclado by Jose Salvatierra, Software Development For Everyone and Jose Salvatierra, Founder of Teclado, Software Engineer and best-selling instructor and offered by Udemy Inc., a US-based online learning platform for both beginners and professionals.
In Rest APIs with Flask and Python online training, learners will be taught about advanced features of the Python programming language that will later help the learners to easily go through the course. Candidates will be taught to develop basic as well as advanced APIs including authentication, databases, deployments, etc. Learners will also be taught to build complete, solid, ready to use REST APIs. The course also includes content on technologies such as Git, Nginx and Heroku. Interested individuals can enrol themselves by purchasing a lifetime subscription to the course
The highlights
- Certificate of completion
- Self-paced course
- Multi-language subtitles
- 12 hours of pre-recorded video content
- Online course
- 30-day money-back guarantee
- Unlimited access
- Accessible on mobile devices and TV
Program offerings
- Certificate of completion
- Self-paced course
- English videos
- Multi-language subtitles
- 7 coding exercises
- 30-day money-back guarantee
- Unlimited access
- 12 hours of pre-recorded video content
- 11 articles
- 12 downloadable resources
Course and certificate fees
Fees information
certificate availability
Yes
certificate providing authority
Udemy
Who it is for
What you will learn
After completing the Rest APIs with Flask and Python, learners will get an understanding of to connect web or mobile applications to data servers using REST APIs, using logging and caching techniques to develop REST APIs. Learners will also develop an understanding of different layers of web servers and the process with which they interact with the applications and use the JWT blacklist to prevent any misuse or log-outs in REST APIs.
The syllabus
Welcome!
A Full Python Refresher
- Introduction to This Section
- Access the code for this section here
- Variables in Python
- The Coding Exercises for This Section
- Variables
- Solution to coding exercise: Variables
- String formatting in Python
- Getting user input
- Writing our first Python app
- Lists, tuples, and sets
- Advanced set operations
- Lists, tuples, and sets
- Solution to coding exercise: Lists, tuples, sets
- Booleans in Python
- If statements
- The 'in' keyword in Python
- If statements with the 'in' keyword
- Loops in Python
- Flow control—loops and ifs
- Solution to coding exercise: Flow control
- List comprehensions in Python
- Dictionaries
- Destructuring variables
- Functions in Python
- Function arguments and parameters
- Default parameter values
- Functions returning values
- Functions
- Solution to coding exercise: Functions
- Lambda functions in Python
- Dictionary comprehensions
- Dictionaries and students
- Solution to coding exercise: Dictionaries
- Unpacking arguments
- Unpacking keyword arguments
- Object-Oriented Programming in Python
- Magic methods: __str__ and __repr__
- Classes and objects
- Solution to coding exercise: Classes and objects
- @classmethod and @staticmethod
- @classmethod and @staticmethod
- Solution to coding exercise: @classmethod and @staticmethod
- Class inheritance
- Class composition
- Type hinting in Python 3.5+
- Imports in Python
- Relative imports in Python
- Errors in Python
- Custom error classes
- First-class functions
- Simple decorators in Python
- The 'at' syntax for decorators
- Decorating functions with parameters
- Decorators with parameters
- Mutability in Python
- Mutable default parameters (and why they're a bad idea)
Your first REST API
- What is an API?
- Installing Flask
- Access the code for this section here
- Your first Flask application
- HTTP Verbs
- REST Principles
- Creating our application endpoints
- Returning a list of stores
- Implementing other endpoints
- Calling the API from JavaScript
- Using Postman for API testing
Flask-RESTful for more efficient development
- Virtualenvs and setting up Flask-RESTful
- Access the code for this section here
- Your first Flask-RESTful app
- Test-first API design—what is that?
- Creating our Item Resource
- The ItemList and creating Items
- Improving code and error control
- Authentication and logging in—part 1
- Authentication and logging in—part 2
- DELETE to delete Items
- PUT to create or update Items
- Advanced request parsing with Flask-RESTful
- Optimising our final code and request parsing
Storing resources in a SQL database
- Setting up our project
- Access the code for this section here
- Running a SQLite database and interacting with it from Python
- Logging in and retrieving Users from a database
- Signing up and writing Users to a database
- Preventing duplicate usernames when signing users up
- Retrieving our Item resources from a database
- Writing our Item resources to a database
- Deleting our Item resources from the database
- Refactoring insertion of items
- The PUT method with database interaction
- Retrieving many items from the database
- Advanced Flask-JWT Configuration
Simplifying storage with Flask-SQLAlchemy
- Access the code for this section here
- Setting up this section's project
- Improving the project structure and maintainability
- Creating User and Item models
- Verifying the app works after our changes
- Advanced Postman: environments and tests
- Errata: small mistake in code in the next video
- Telling SQLAlchemy about our tables and columns
- Implementing the ItemModel using SQLAlchemy
- Implementing the UserModel using SQLAlchemy
- Easily displaying the ItemList resource with SQLAlchemy
- No more creating tables manually—telling SQLAlchemy to create tables
- Creating a new model: StoreModel
- Creating the Store Resource
- Final testing of this section's API
Git-version control
- Installing Git on Mac and Windows
- What is a Git repository?
- The Git workflow—part 1
- The Git workflow—part 2, including GitHub
- Using SSH keys for security
- The README file
Deploying Flask apps to Heroku
- Access the code for this section here
- What is Heroku?
- Getting our code into GitHub
- Setting up Heroku for Flask
- Adding the required files to the project
- Logs in Heroku and troubleshooting errors
- Testing the deployed API with Postman
- A small change needed in the next lecture
- Adding PostgreSQL to our Heroku app
- Working with Git and automatic deploys
Deploying Flask apps to our own server
- Setting up a DigitalOcean server
- Want to deploy to AWS?
- Installing PostgreSQL in Ubuntu 16.04
- Creating a UNIX user in Ubuntu 16.04
- Setting up our new user with PostgreSQL permissions
- Setting up nginx and our REST API
- Setting up uWSGI to run our REST API
- Testing our API to make sure everything works
Security in your REST APIs
- Welcome to this section
- Security in REST APIs e-book
- Getting our domain name
- Setting up Cloudflare
- What is DNS?
- Setting our DNS records
- Verifying everything works—this is important!
- Creating our SSL certificate in Cloudflare
- Configuring nginx for SSL
- Security in REST APIs
- Extra technical SSL resources
- Conclusion of this section
Token refreshing and Flak-JWT-Extended
- Welcome to this section
- Recent changes to Flask-JWT-Extended
- A recap of the code + a few changes!
- Creating a User Resource for testing
- Testing our new Resource with Postman
- Logging in with Flask-JWT-Extended
- Testing the login with Postman
- Adding JWT Claims
- Getting the JWT identity in and endpoint and @jwt_optional
- What is a fresh token?
- Performing token refresh in our REST API
- Requiring a fresh token in an endpoint
- Customizing Flask-JWT-Extended callbacks and responses
- Blacklisting with Flask-JWT-Extended
- Logging users out in our REST API
- E-book: complete review of the API so far
- Flask-JWT-Extended further reading
Bonus Section
- Bonus lecture: other courses and next steps