Book Image

Python API Development Fundamentals

By : Jack Chan, Ray Chung, Jack Huang
Book Image

Python API Development Fundamentals

By: Jack Chan, Ray Chung, Jack Huang

Overview of this book

Python 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.
Table of Contents (12 chapters)

Heroku Application

Before we deploy to Heroku (the cloud platform), we will first create an account and set up the environment there. We will create a new Heroku application. Then, we will need to install the Postgres database on Heroku. The installation process can be done within the Heroku platform; everything is integrated. Finally, we set up the virtual environment variables, such as the database URL and the secret key. Once all these precursors are completed, we will then start the deployment process.

Exercise 65: Creating a New Application in Heroku

In this exercise, we will first register a Heroku account. Then, we will create a new app on it. Heroku provides a nice user interface with an easy-to-follow setup flow. We just need to click a few buttons and that's it. As Heroku is a PaaS, we don't need to manage any hardware nor set up the OS. These are all taken care of by Heroku:

  1. Visit the Heroku website, https://www.heroku.com/, and click Sign up:
    Figure...