API Design & Contracts

API Design & Contracts

The interface is the part you cannot change later
Free
4h · 5 lessons
Overview

What actually happens between a client and a server, what a millisecond costs, and why you cannot have consistency, availability and partition tolerance at once. Start here if you can draw the boxes but not defend them.

This module is 01.5 of the 5 in Foundations. It runs about 4 hours across 5 lessons, and closes with Contract — Ship four versions of an API to a client you cannot update. Break it once and the round ends.

Lessons
1. REST, RPC and GraphQL: what each is for

Concept · 40 minutes

2. Pagination, filtering and the cursor

Concept · 30 minutes

3. Versioning without breaking a client

Concept · 35 minutes

4. Errors, status codes and retryability

Concept · 30 minutes

5. Authentication, authorization and tokens

Concept · 40 minutes

Module information
Duration
4 hours
Lessons
5
Level
Beginner
Track
Foundations
Drill
Contract
Price
Free

Related modules

How the Network Actually Works
5 hours
6 lessons
Beginner
How the Network Actually Works
Free
01.1
Latency Numbers & Estimation
4 hours
5 lessons
Beginner
Latency Numbers & Estimation
Free
01.2
The Machine Underneath
5 hours
5 lessons
Beginner
The Machine Underneath
Free
01.3
Consistency, Availability & Partitions
5 hours
5 lessons
Beginner
Consistency, Availability & Partitions
Free
01.4