Project

Fitness Tracker API

Challenging
44 completions
~ 53 hours
4.5

You will practice building a REST API, get hands-on experience in creating custom Spring Security authentication flows, learn about request rate limiting techniques and gain knowledge about scheduling and thread-safe programming.

Provided by

JetBrains Academy JetBrains Academy

About

You probably have used public APIs in your projects but have you ever wanted to build such an API on your own? If yes, this project is the right place to start. You will create a public API that allows client applications to upload and download data from fitness devices, protect your API with API-Key authentication and apply different rate limit policies to different categories of clients.

Training project icon

Training project

This project allows you to practice and strengthen your coding skills, helping you get ready for more advanced tasks ahead.

What you'll learn

Once you choose a project, we'll provide you with a study plan that includes all the necessary topics from your course to get it built. Here’s what awaits you:
Create the main REST API to upload and download fitness trackers data.
Create endpoints for registering developers and apply basic security rules.
Allow registered developers to register their applications with your API and assign unique API keys for each such application.
Create an API-Key authentication flow so that only registered applications can upload and download data via the API.
Apply request rate limits to different kinds of clients to keep the service load under control.

Reviews

Olivier Leroy avatar
Olivier Leroy
5 months ago
Great way to practice Spring Security on a realistic use-case. I learned about different authentication means and implemented them. And don't worry, REST controllers and repositories are still here !It was very interesting, sometimes challenging, without having to write tons of code.
Ivan Zlobin
5 months ago
It's okay, made me struggle at some points. The authentication manager / provider / filter etc. could be explained in more detail, had to read documentation to actually understand what's going on, but maybe that's just me.
Sebastian Müller
7 months ago
I have learned how to build a secure REST API with Spring Boot, including Basic Authentication, API key authentication, and rate limiting.The project helped me better understand Spring Security, clean architecture, and practical API design. Debugging security and configuration issues was challengin ...

4.5

Learners who completed this project within the Java Backend Developer (Spring Boot) course rated it as follows:
Usefulness
4.7
Fun
4.4
Clarity
4.4