Designing RESTful APIs (Udacity)

Offered by Udacity,
Designing RESTful APIs (Udacity)

Build and Secure a Backend API Server. API (Application Programming Interface) endpoints are the connections between your application and the rest of the developer community. In this course you will learn about writing secure, developer-friendly APIs that will make your back-end application thrive and keep your users happy.

Class Deals by MOOC List - Click here and see Udacity's Active Discounts, Deals, and Promo Codes.

At the end of this course you will create the back-end for a social application called "Meet n' Eat" that matches together users based on their location and food interests.
A crucial skill for a back-end or full-stack web developer is the ability to make applications that are easily accessible and understood for other developers . Mobile developers, front-end developers and other back-end and full-stack developers all rely on API endpoints to enhance the functionality of their applications.

What You Will Learn

Lesson 1
What's and Why's of APIs

  • Learn about the basics of APIs and why they are important.
  • How to choose the appropriate technologies for implementing a modern web API.

Lesson 2
Accessing Published APIs

  • Explore published APIs from Foursquare and Google Maps.
  • See how these companies implement their API endpoints.
  • Now leverage some of this information for our own use!

Lesson 3
Creating your own API Endpoints

  • Use Flask to build your own web server.
  • Setup API endpoints that follow the constraints to qualify as a RESTful API.

Lesson 4
Securing your API

  • Learn about API security.
  • How to add OAuth login and token-based authentication.
  • Learn to Rate limit your API endpoints.

Lesson 5
Writing Developer-Friendly APIs

  • Learn some API best practices using real-world examples.
  • Take on the final project!

Prerequisites and Requirements
This course assumes you have experience working with the Flask web development framework, SQLAlchemy, and understand the basics of OAuth 2.0. Python will be the primary language of instruction for the entirety of this course.Recommended Courses:

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Python Data Structures (Coursera) Coursera
University of Michigan

Python Data Structures (Coursera)

This course will introduce the core data structures of the Python programming language. We will move past the basics of procedural programming and explore how we can use the Python built-in data structures such as lists, dictionaries, and tuples to perform increasingly complex data analysis. This course will cover Chapters 6-10 of the textbook “Python for Everybody”. This course covers Python 3.

Nov 9th 2026
5-12 Weeks
Programming for Data Science (Coursera) Coursera
University of Leeds

Programming for Data Science (Coursera)

Explore the basics of programming and familiarise yourself with the Python language. After completing this course, you will be able to write Python programs in Jupyter Notebook and describe basic programming. In this course, you will learn everything you need to start your programming journey. You will discover the different data types available in Python and how to use them, learn how to apply conditional and looping control structures, and write your own functions.

Nov 16th 2026
3 Weeks
Intro to Relational Databases (Udacity) Udacity
Udacity

Intro to Relational Databases (Udacity)

SQL, DB-API, and More! This course is a quick, fun introduction to using a relational database from your code, using examples in Python. You'll learn the basics of SQL (the Structured Query Language) and database design, as well as the Python API for connecting Python code to a database. You'll also learn a bit about protecting your database-backed web apps from common security problems. After taking this course, you'll be able to write code using a database as a backend to store application data reliably and safely.

Self Paced
Self-Paced
Selenium WebDriver with Python (Coursera) Coursera
Whizlabs

Selenium WebDriver with Python (Coursera)

“Selenium WebDriver with Python” is a foundational course that aims to provide a comprehensive understanding of Selenium and its components. It also helps in understanding how Selenium WebDriver Operates. This course begins by demonstrating an environment setup for Selenium WebDriver with Python. A brief description of locating Web elements and web Interactions is provided in this course. This course covers an overview of testing frameworks with Selenium WebDriver. Some advanced topics such as Handling Popup, Alerts, Multiple Browser Tabs, Mouse and Keyboard interactions are also highlighted in this course.

Nov 9th 2026
3 Weeks
Data Processing Using Python (Coursera) Coursera
Nanjing University

Data Processing Using Python (Coursera)

This course is mainly for non-computer majors. It starts with the basic syntax of Python, to how to acquire data in Python locally and from network, to how to present data, then to how to conduct basic and advanced statistic analysis and visualization of data, and finally to how to design a simple GUI to present and process data, advancing level by level.

Nov 23rd 2026
5-12 Weeks
Accounting Data Analytics with Python (Coursera) Coursera
University of Illinois at Urbana-Champaign

Accounting Data Analytics with Python (Coursera)

This course focuses on developing Python skills for assembling business data. It will cover some of the same material from Introduction to Accounting Data Analytics and Visualization, but in a more general purpose programming environment (Jupyter Notebook for Python), rather than in Excel and the Visual Basic Editor. These concepts are taught within the context of one or more accounting data domains (e.g., financial statement data from EDGAR, stock data, loan data, point-of-sale data).

Nov 9th 2026
5-12 Weeks
Programming for Everybody (Getting Started with Python) (Coursera) Coursera
University of Michigan

Programming for Everybody (Getting Started with Python) (Coursera)

This course aims to teach everyone the basics of programming computers using Python. We cover the basics of how one constructs a program from a series of simple instructions in Python. The course has no pre-requisites and avoids all but the simplest mathematics. Anyone with moderate computer experience should be able to master the materials in this course.

Nov 9th 2026
5-12 Weeks