---
title: "API engineering — ZudoJS Academy"
description: "Design APIs other people can depend on: REST resources and contracts, pagination and versioning, idempotency and safe retries, rate limiting, and contracts that evolve without breaking clients."
source: https://zudojs.oyinlola.site/learn/api-engineering
---

LEVEL 9 · BACKEND ENGINEERING

Course Core

# API engineering

Design APIs other people can depend on: REST resources and contracts, pagination and versioning, idempotency and safe retries, rate limiting, and contracts that evolve without breaking clients.

- **1 lessons**
- **40 min** to read and try
- **Before this:** [Backend engineering](https://zudojs.oyinlola.site/learn/backend)

0 of 1 lessons done

[Start lesson 1 →](https://zudojs.oyinlola.site/learn/rest-design)

## When you finish, you can

- Design resources, URLs, status codes and error bodies
- Paginate with offsets and cursors and version an API
- Make a payment endpoint idempotent
- Rate-limit an API fairly
- Evolve a contract without breaking existing clients

**You build:** A money-transfer API that is safe to retry and safe under load

MODULE 1

## Designing APIs

1. [1**Designing a REST API**Turn the Task API into a well-designed REST API: resources and URLs, a written contract, filtering, sorting, offset and cursor pagination, versioning and one consistent error format.40 min](https://zudojs.oyinlola.site/learn/rest-design)

## Course checkpoint

Prove you can move on. The checkpoint picks 5 questions at random from every lesson in this course. Get 4 right to pass. Your result is saved in this browser only.
