Python API Development Fundamentals

Python API Development Fundamentals : Develop a full-stack web application with Python and Flask

By (author)  , By (author)  , By (author) 

Free delivery worldwide

Available. Expected delivery to the United States in 9-14 business days.

Not ordering to the United States? Click here.


Learn all that's needed to build a fully functional web application from scratch.

Key Features

Delve deep into the principle behind RESTful API
Learn how to build a scalable web application with the RESTful API architecture and Flask framework
Know what are the exact tools and methodology to test your applications and how to use them

Book DescriptionPython is a flexible language that can be used for much more than just script development. By knowing the Python RESTful APIs work, you can build a powerful backend for web applications and mobile applications using Python.

You'll take your first steps by building a simple API and learning how the frontend web interface can communicate with the backend. You'll also learn how to serialize and deserialize objects using the marshmallow library. Then, you'll learn how to authenticate and authorize users using Flask-JWT. You'll also learn how to enhance your APIs by adding useful features, such as email, image upload, searching, and pagination. You'll wrap up the whole book by deploying your APIs to the cloud.

By the end of this book, you'll have the confidence and skill to leverage the power of RESTful APIs and Python to build efficient web applications.

What you will learn

Understand the concept of a RESTful API
Build a RESTful API using Flask and the Flask-Restful extension
Manipulate a database using Flask-SQLAlchemy and Flask-Migrate
Send out plaintext and HTML format emails using the Mailgun API
Implement a pagination function using Flask-SQLAlchemy
Use caching to improve API performance and efficiently obtain the latest information
Deploy an application to Heroku and test it using Postman

Who this book is forThis book is ideal for aspiring software developers who have a basic-to-intermediate knowledge of Python programming and who want to develop web applications using Python. Knowledge of how web applications work will be beneficial but is not essential.
show more

Product details

  • Paperback | 372 pages
  • 75 x 93 x 19.56mm | 639.57g
  • Birmingham, United Kingdom
  • English
  • 1838983996
  • 9781838983994
  • 863,080

Table of contents

Table of Contents

Your First Step
Starting to Build Our Project
Manipulating a Database with SQLAlchemy
Authentication and Security with JWT
Object Serialization with marshmallow
Email Confirmation
Working with Images
Pagination, Searching, and Ordering
Building More Features
show more

About Jack Chan

Jack Chan started programming at the age of 10. He was an active participant in worldwide programming contests at university. Since graduation, he has been working in the finance and IT industries for more than 10 years, building systems that analyze millions of transactions and positions to spot suspicious activity. He has leveraged the powerful analytical Python libraries to perform data analysis and performance optimization for a trading system that works at a microsecond level. He has an in-depth knowledge of the modern software development life cycle, which uses automated testing, continuous integration, and agile methodologies. Among all programming languages, he found Python to be the most expressive and powerful. He has created courses and taught students all over the world, using Python as the teaching language. Inspiring aspiring developers to take on the software engineering career path has always been Jack's goal. Ray Chung is a developer and an instructor. He loves helping students learn to code and master software development. He is now self-employed and develops web applications, network applications, and chatbots using Python. The first program he sold was a network application that helps clients configuring, maintaining, and testing thousands of multi-vendor network devices. He's experienced with big projects like a marathon's online registration system, rental car management system, and so on. He has worked extensively with Google App Engine, PostgreSQL, and advanced system architecture design. He has been a self-taught developer for many years and knows what is the most efficient way to learn a new skill. Jack Huang is a programmer with an experience of more than 7 years in developing web applications in Python, JavaScript, and .NET. He is skilled in web frameworks such as Flask, Django, and Vue. He is also skilled in PostgreSQL, DynamoDB, MongoDB, RabbitMQ, Redis, Elasticsearch, RESTful APIs design, payment processing, system architecture design, database design, and UNIX systems. He has written applications for an accessories shop platform, the ERP system, divination web application, podcast platform, Job search service, blog system, salon reserving system, e-commerce service, and so on. He also has experience in handling large data and improving its performance and optimizing payment processing. He is an expert of web application developers who love coding and constantly following the newest technology.
show more