# 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`
