Developing REST APIs and Microservices on Apigee using Python and Django ( apigeepython | 28 hours )

Prerequisites:
  • Experience with Javascript application development
  • A general understanding of API concepts
  • An understanding of Django concepts
  • Python programming experience

Audience

  • Developers
Overview:

Google Cloud Apigee is a full lifecycle API (Application Programming Interface) management platform.

Django is an open source Python web development framework. Django REST Framework is a toolkit used to build web APIs. Together, Django and Django REST Framework enable the creation of complex data-driven websites.

The first part of this course focuses on the end-to-end lifecycle management of APIs on the Google Cloud Apigee platform. The second part is a deeper dive into the details of developing REST APIs using Python and Django.

This instructor-led, live training (online or onsite) is aimed at developers who wish to build backend REST APIs with Python and Django, and then deploy and manage them on top of Google Cloud's Apigee API Platform.

By the end of this training, participants will be able to:

  • Set up a development environment that includes all needed resources to start developing an API.
  • Understand and implement the tools available within Apigee Edge.
  • Build and deploy an API to Google Cloud.
  • Monitor and debug API errors.
  • Leverage Google Cloud's analytics and machine learning solutions to make APIs more intelligent.
  • Create a self-documenting REST API.
  • Deploy REST APIs onto a cloud-based server.
  • Implement APIs for application authentication.
  • Build a reusable backend for future Python projects.

Format of the Course

  • Interactive lecture and discussion.
  • Lots of exercises and practice.
  • Hands-on implementation in a live-lab environment.

Course Customization Options

  • To request a customized training for this course, please contact us to arrange.
Course Outline:

Part 1: Google Cloud Apigee API Management

  • Introduction
  • Overview of Google Cloud's Apigee API Platform
  • Preparing the Development Environment
  • Creating an API in Apigee Edge
  • Setting up the API Proxy
  • Applying Policies to the API Proxy
  • Setting up a Target Server
  • Monitoring the API
  • Debugging API Errors
  • Deploying the API
  • Best Practices for API Security
  • Integrating Apigee with Google Cloud Analytics and Machine Learning
  • Troubleshooting

Part 2: Python and Django REST API Development

Introduction

Django and Django REST Framework

  • Templating, routing, forms, and authentication
  • Constructs for code scaling
  • Database management

The Fundamentals of APIs and Their Functionality

  • Scalar types
  • Web Architecture Patterns: the composite pattern, proxy pattern, and facade pattern

REST Overview

  • Get option
  • Pull option
  • Post option
  • Delete option

Preparing the Development Environment

  • Installing Python
  • Installing and configuring Django and Django REST Framework
  • Setting up a version control system
  • Setting up a development server

Creating a Basic Python Application with Django

  • Building a new project
  • Testing and committing changes
  • Creating a database model
  • Syncing the database with migrations
  • Enabling admins

APIViews and Viewsets

  • Adding URL configuration
  • Creating and testing an APIView
  • Adding methods to an APIView
  • Creating and testing a Viewset
  • Adding functions to a Viewset

Endpoints and Authentication

  • Adding management and management user endpoints
  • Creating APIViews
  • Adding token APIs
  • Testing for API validity

Deployment on a Cloud Based Server

  • Adding a key pair
  • Creating a server instance
  • Implementing deployment scripts
  • Deploying changes

Summary and Next Steps