# BOOKMARKS_V1_CONSOLIDATION.md ## Endpoints - `POST /api/bookmarks` - `GET /api/bookmarks` - `DELETE /api/bookmarks/{bookmark_id}` ## Duplicate policy - Een bookmark is uniek op `path`. - Een tweede create met hetzelfde pad geeft `409 already_exists`. ## Validatie - `path` wordt centraal via `path_guard.resolve_path(...)` gevalideerd. - Dit dekt whitelist, traversal en root-alias validatie. - `label` mag niet leeg zijn (`trim()`), anders `400 invalid_request`. ## Model v1 - `id` - `path` - `label` - `created_at`