RoomBox: practice testing a REST API

A booking API for meeting rooms with planted bugs. Send requests as two users, compare what comes back with the API reference, write down what breaks, and get an instant check of your report: which planted bugs you found and which traps caught you.

Starting means you agree to the recording described below: clicks, mouse and key timings and your report. No cookies.

What this page records, in full

Clicks, mouse movement, key presses (counts and timing, not the keys themselves), pastes, focus changes and the bug report you submit. The API keeps the bookings you create (room, date, start and end time, number of attendees) for a day, so that it can answer your requests; it keeps no free text. The data is used only for this experiment; aggregate results may be published. Please do not put personal data into the bug report. Visits to this page are counted by date and by the site you came from, without IP addresses or cookies. Your report is checked against the list of planted bugs by an automated model.

Preview: press Start to make it live

RoomBox API

RoomBox books the meeting rooms of a small coworking space. Test its REST API from the console below or from your own client.

Console

API reference (excerpt)

  • Every request needs a bearer token; Alice and Bob each have one.
  • GET /api/v1/rooms: three rooms, open from 08:00 to 20:00.
  • POST /api/v1/bookings creates a booking: 201 Created with a Location header.
  • GET, PATCH and DELETE /api/v1/bookings/{id} work on one booking.
  • Bookings of one room must not overlap; a clash gets 409.
  • Invalid values get 422, broken JSON gets 400.
  • The live page lists all the rules.

The live page comes with its own release notes.

Your task

Test the API against its reference. Write each bug you find on its own line: the request you sent and what came back is enough. Expected and actual results help, but are not required. Your draft is saved in this browser. You can check what you have so far twice, then submit.

Other exercises

Guides