Challenges/Computing For All/General/Building Reliable APIs

Building Reliable APIs

Design and explain a simple REST API for a task tracking application

API Design
REST
Software Engineering
Backend Development
Testing, Entry Level
Estimated Time:
30 minutes
Difficulty:Beginner
Status:Not started
Start this challenge

Create a free account to upload your work. Your progress saves as a draft until you submit.

What You'll Be Doing

You're building a simple REST API for a small "Task Tracker" web app where users can create, read, update, and delete their tasks (title, status, due date).

Scenario: "The Task Tracker API"

Design the basic structure for the API (routes, request/response format), explain how you'd handle errors, and describe one simple test case.

Example:

  • GET /tasks → returns list of user tasks
  • POST /tasks → creates a new task with title + due date

Record a video walking through your API design and reasoning. You'll also submit a written document outlining your endpoints and testing approach.

Challenge Guidelines

Challenge Rules

Time Limit: 30 minutes total

  • Video recording: 5-7 minutes
  • Written artifact: 1 page maximum
  • Review and submission: Remaining time

Resources Allowed:

  • You may reference REST API documentation or tutorials
  • You may use AI tools for ideas (must be disclosed)
  • You may reference your own notes or class materials

Individual Work:

  • This must be your own original design
  • Your video should show your thinking process

Video Requirements:

  • 5-7 minutes total length
  • Clear audio quality
  • Address both sections (Introduction and Challenge Response)

Important:

  • Focus on clarity and reasoning, not complex code
  • You don't need to write actual code—just explain your design
  • Simple, clear answers are better than overly complex ones

AI Usage Declaration: Disclose if you used any AI tools (what prompts, how you edited output)

Video Requirements (5-7 minutes total)

1. Introduction (1-2 minutes) Share one example of a time you built something—even a small feature or class project. What did you learn?

2. Challenge Response (3-5 minutes) Walk through your API design:

  • What are your main endpoints?
  • How would you handle errors or invalid input?
  • Describe one simple test case

What You'll Accomplish

Design basic RESTful API endpoints with logical routes

Think through error handling and input validation

Describe simple test cases to verify functionality

Communicate technical ideas clearly

How Your Work Will Be Scored

Technical Clarity -40 pointsProblem-Solving -30 pointsCommunication-20 pointsAI Usage Transparency-10 points

What to Submit

Submission Guidelines

Submit the following two deliverables:

Deliverable 1: Video Response File Name: CFA_SoftwareEng_Video_[YourName].mp4

Requirements:

  • 5-7 minutes total
  • Address both sections: Introduction and Challenge Response
  • Clear audio quality
  • File format: MP4, MOV, or any standard video format

Deliverable 2: Written Artifact - API Design & Testing File Name: CFA_SoftwareEng_Design_[YourName].pdf or .docx

Requirements:

  • 1 page maximum
  • List main endpoints and what each does
  • Show example request/response for one endpoint
  • Describe how you'd test and handle errors
  • Note any assumptions (e.g., auth, validation)
  • Must include AI Usage Declaration

AI Usage Declaration (required): ☐ I did not use any AI tools ☐ I used AI tools (briefly describe how, including prompts and edits)

API Design Document

Document · 1 page maxRequired

Format: .pdf, .doc, .docx, .rtf, .txt, .md

Create a 1-page document covering your API design:

Required content:

  • List main endpoints and what each does
  • Show example request/response for one endpoint
  • Describe how you'd test and handle errors
  • Note any assumptions (e.g., auth, validation)

AI Usage Declaration (required at end of document): ☐ I did not use any AI tools ☐ I used AI tools (briefly describe how, including prompts and edits)

Resources allowed:

  • You may reference REST API documentation or tutorials
  • You may use AI tools for ideas (must be disclosed)
  • You may reference your own notes or class materials

Simple, clear answers are better than overly complex ones.

Sign in to upload files

Video Response

Video · 5-7 minRequired

Format: .mp4, .mov, .webm

Record a 5-7 minute video covering both sections:

Section 1: Introduction (1-2 minutes) Share one example of a time you built something—even a small feature or class project. What did you learn?

Section 2: Challenge Response (3-5 minutes) Walk through your API design:

  • What are your main endpoints?
  • How would you handle errors or invalid input?
  • Describe one simple test case

Requirements:

  • Clear audio quality
  • Address both sections (Introduction and Challenge Response)
  • Focus on clarity and reasoning, not complex code
  • You don't need to write actual code—just explain your design

Sign in to upload files