# Bookmark Sync

Sync bookmarks from Kobo device.

**Endpoint**: `POST /api/sync/kobo/bookmark`
**Auth**: Required (Device authentication)

## Device Authentication

This endpoint requires device authentication (not user JWT). Kobo devices authenticate using their device credentials and access tokens.

## Request Body

| Field | Type | Required | Description |
|--------|------|-----------|-------------|
| bookmarks | array | Yes | Array of bookmark objects |

### Bookmark Object

| Field | Type | Required | Description |
|--------|------|-----------|-------------|
| BookmarkID | string | Yes | Unique bookmark ID |
| ContentID | string | Yes | Book content ID |
| StartPosition | integer | Yes | Bookmark position |
| Text | string | No | Bookmark text |
| DateCreated | string | Yes | ISO 8601 timestamp |

### Example Request

```json
{
  "bookmarks": [
    {
      "BookmarkID": "bookmark123",
      "ContentID": "book-uuid",
      "StartPosition": 1234,
      "Text": "Chapter 5",
      "DateCreated": "2026-02-08T10:00:00Z"
    }
  ]
}
```

## Response (200 OK)

```json
{
  "message": "Bookmarks synced successfully",
  "synced_count": 1
}
```

## Error Responses

| Code | Description |
|------|-------------|
| 401 | Device authentication failed |
| 400 | Invalid request data |
| 404 | Device or book not found |
