Fellowship members, quests and artifacts from a fictional fantasy epic. Practice CRUD, Bearer auth, nested resources, pagination and optimistic concurrency.
The Middle-earth API tracks a fellowship, the quests it is assigned and the artifacts it carries. Members join and leave quests, so it is built around association endpoints — the join-table operations that are easy to write and easy to get wrong when the same member is added twice or removed from a quest they were never on.
Base URL: https://funapi.dev/api/middleearth/v1 · 9 endpoints · OpenAPI 3.1 spec and Postman collection available. New here? Read the getting started guide.
six companions, six races
GET /middleearth/v1/fellowship — List fellowship members (paginated, filter by race)GET /middleearth/v1/fellowship/{id} — Get one fellowship memberGET /middleearth/v1/fellowship/{id}/artifact — Get the artifact carried by a member (nested resource)POST /middleearth/v1/fellowship — Recruit a new member (requires Bearer auth)PUT /middleearth/v1/fellowship/{id} — Update a fellowship member (requires Bearer auth)DELETE /middleearth/v1/fellowship/{id} — Remove a member from the fellowship (requires Bearer auth)one ring, several detours
GET /middleearth/v1/quests — List quests, filter by statusGET /middleearth/v1/quests/random — A random questeach bound to a bearer
GET /middleearth/v1/artifacts — List all artifacts