Skip to content

Bookmark API

Pokke exposes a small authenticated API for bookmark operations.

https://api.pokke.femto-cloud.com

All /api/v1/* endpoints require an API key in the Authorization header.

Authorization: Bearer <YOUR_API_KEY>

If the header is missing or invalid, the API returns 401.

  • OpenAPI JSON/YAML endpoint: /doc
  • Swagger UI: /ui

POST /api/v1/bookmarks.create

Request body:

{
"workspaceId": "00000000-0000-0000-0000-000000000000",
"url": "https://example.com"
}

You can also provide manual metadata:

{
"workspaceId": "00000000-0000-0000-0000-000000000000",
"url": "https://example.com",
"metadata": {
"source": "manual_input",
"title": "Example",
"description": "Saved from a custom client"
}
}

Notes:

  • workspaceId must be a valid UUID.
  • url must be a valid URL.
  • metadata.source must be manual_input when metadata is provided.

GET /api/v1/bookmarks.list

Query parameters:

  • workspaceId required
  • limit optional, 1-100, default 20
  • offset optional, default 0

Example:

GET /api/v1/bookmarks.list?workspaceId=<WORKSPACE_ID>&limit=20&offset=0

The response includes:

  • bookmark IDs
  • original and normalized URLs
  • bookmark metadata when available
  • optional AI summary fields
  • totalCount

GET /api/v1/bookmarks.search

Query parameters:

  • workspaceId required
  • query required
  • limit optional, 1-100, default 20
  • offset optional, default 0

Example:

GET /api/v1/bookmarks.search?workspaceId=<WORKSPACE_ID>&query=typescript&limit=20&offset=0

Search returns the same bookmark shape as the list endpoint.

Terminal window
curl -X POST "https://api.pokke.femto-cloud.com/api/v1/bookmarks.create" \
-H "Authorization: Bearer <YOUR_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"workspaceId": "<WORKSPACE_ID>",
"url": "https://example.com"
}'