Bookmarks API

Bookmarks API thumbnail
View Gallery


Try the Demo

Read the Docs

Github


Project Overview

Bookmarks API is a Django REST Framework project designed to demonstrate curated link sharing with anonymous submissions and admin-moderated approvals.

It provides endpoints to browse approved bookmarks, search or filter by tags, and submit new links without requiring authentication. Submissions are rate-limited, run through validation, and marked pending until reviewed, making it a practical example of balancing openness with moderation in API design.


Iterative Development Log

12th September, 2025 – First Iteration (MVP)

  • Public read endpoints (/bookmarks/v1/bookmarks/, /bookmarks/v1/bookmarks/{id}/)
  • Anonymous submission endpoint (/bookmarks/v1/bookmarks/submit/) with honeypot anti-spam field
  • Moderation fields: is_approved, pending_tags, submitted_ip
  • Custom per-IP throttling (burst + daily limits)
  • Admin UI for approving bookmarks and managing tags
  • Deployed to Heroku with PostgreSQL backend
  • OpenAPI schema documented and served with rate-limit headers

Tags

  • Django
  • Django REST Framework
  • API
  • Python