Week 5 – API Design

INCS 1008 Software Studio

Goal

Define your airline backend's external API contract and expose the documentation from your backend service at /docs. Use OpenAPI for the contract.

Due: Thursday, May 21 · 11:59 PM

Required Deliverables

  1. Publish OpenAPI documentation for your backend at /docs.
  2. Define only the external-facing APIs that other systems would use to shop for flights, view flight details, and perform any other airline-facing operations you choose to support.
  3. Create a full distributed system diagram in Excalidraw showing the major services, queues, databases, and integrations in your team architecture.
Save the .excalidraw design file in your backend repo and push it to GitHub.

API Scope

Each team has flexibility in the exact request/response shape. You are free to define your own interface and response model.

I strongly recommend that teams hold design meetings and agree on a normalized external contract so adoption is easier across the class, but this is not required.

Minimum Expectations

Suggested Endpoints

These are examples only; you may define your own shape.

Grading Breakdown

Criterion Points
backend-external-api-contract30
distributed-system-diagram20
live-docs-endpoint15
in-class-instructor-assessment15
Total80