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

Applied Social Network Analysis in Python (Coursera) Coursera
University of Michigan

Applied Social Network Analysis in Python (Coursera)

This course will introduce the learner to network analysis through the NetworkX library. The course begins with an understanding of what network analysis is and motivations for why we might model phenomena as networks. The second week introduces the concept of connectivity and network robustness.. The third week will explore ways of measuring the importance or centrality of a node in a network. The final week will explore the evolution of networks over time and cover models of network generation and the link prediction problem.

Sep 28th 2026
4 Weeks
Analíticas de Datos con Pandas (Coursera) Coursera
Tecnológico de Monterrey

Analíticas de Datos con Pandas (Coursera)

La analítica de datos ha avanzado considerablemente en los últimos años y ahora existen diversas herramientas que nos permiten realizar tareas o procesos que antes eran complicados de realizar. Gracias a su versatilidad, el lenguaje de programación Python posee una serie de librerías que permiten realizar proyectos de analítica de datos de una forma muy sencilla y una de las librerías más populares es Pandas.

Sep 21st 2026
4 Weeks
Authentication & Authorization: OAuth (Udacity) Udacity
Udacity

Authentication & Authorization: OAuth (Udacity)

Implementing Web Security with OAuth 2.0. As a Python programmer, leveraging Flask allows you to quickly and easily build your own web applications. But before you share your apps on the Internet you should protect your users' data, ensuring information stored on your site is safe from unwanted manipulation. You could implement web security and permissions on your own, but relying on trusted providers is a faster, safer, and easier way to allow users to login to your application - without having to create and maintain another account, profile, and password.

Self Paced
Self-Paced
iOS Networking with Swift (Udacity) Udacity
Udacity

iOS Networking with Swift (Udacity)

Web Services, APIs, and JSON. In this course, you’ll learn how to incorporate networking into your apps, so they can access data from around the world. You’ll learn how to harness the power of APIs to display images and retrieve movie data. At the end of the course, you’ll build the "On the Map" app which allows you to share interesting links, projects, or other information with fellow Udacity students.

Self Paced
Self-Paced
Google Cloud Product Fundamentals en Español (Coursera) Coursera
Google Cloud

Google Cloud Product Fundamentals en Español (Coursera)

Este curso, que es una continuación de Business Transformation with Google Cloud, le permitirá conocer la perspectiva tecnológica de la transformación de una organización. Para ser más específicos, explicaremos cómo la tecnología de Google Cloud puede transformar digitalmente una organización en los siguientes aspectos: modernizar la infraestructura de TI; mejorar la forma en que los equipos desarrollan las aplicaciones que utiliza la empresa; saber cómo aprovechar el aprendizaje automático y la inteligencia artificial para generar más valor; advertir el rol fundamental de las herramientas de productividad basadas en la nube, como G Suite, para cumplir con el trabajo, y comprender los desafíos y las oportunidades de la administración de costos que trae aparejados una infraestructura de TI cambiante basada en la nube.

Sep 28th 2026
5-12 Weeks
Data Visualization with Python & R for Engineers (Coursera) Coursera
Northeastern University

Data Visualization with Python & R for Engineers (Coursera)

The primary objective of this course is to offer students an opportunity to learn how to use visualization tools and techniques for data exploration, knowledge discovery, data storytelling, and decision making in engineering, healthcare operations, manufacturing, and related applications. This course covers basics of data mining and visualization, and Python. It also introduces students to static visualization charts and techniques that reveal information, patterns, interactions.

Sep 28th 2026
4 Weeks
Machine Learning: Concepts and Applications (Coursera) Coursera
University of Chicago

Machine Learning: Concepts and Applications (Coursera)

This course gives you a comprehensive introduction to both the theory and practice of machine learning. You will learn to use Python along with industry-standard libraries and tools, including Pandas, Scikit-learn, and Tensorflow, to ingest, explore, and prepare data for modeling and then train and evaluate models using a wide variety of techniques. Those techniques include linear regression with ordinary least squares, logistic regression, support vector machines, decision trees and ensembles, clustering, principal component analysis, hidden Markov models, and deep learning.

Sep 21st 2026
5-12 Weeks
HTTP & Web Servers (Udacity) Udacity
Udacity

HTTP & Web Servers (Udacity)

How does HTTP work? This course is intended for budding full-stack web developers to master the basics of HTTP, the protocol that underlies all web technology. In this course, you'll explore HTTP directly, talking with web servers and browsers by hand. You'll write and deploy low-level web applications in Python. And you'll learn more about how HTTP connects with other web technologies.

Self Paced
Self-Paced