diff options
| author | erik-nilcoast <138068205+erik-nilcoast@users.noreply.github.com> | 2025-03-09 10:18:46 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-03-09 15:18:46 +0000 |
| commit | 9fb80514773d63115a5b41787b339670326bb763 (patch) | |
| tree | d88c6e8b57336dbec0803974dd1f5b0205cdd4a9 /packages/open-api | |
| parent | 80a808048340f7f5e95e71c4ee649fdae7c8c565 (diff) | |
| download | karakeep-9fb80514773d63115a5b41787b339670326bb763.tar.zst | |
feat: Expose bookmark summarization in the API (#1088)
Proxy to the TRPC Summarize mutation for use in the public API
Diffstat (limited to 'packages/open-api')
| -rw-r--r-- | packages/open-api/hoarder-openapi-spec.json | 79 | ||||
| -rw-r--r-- | packages/open-api/lib/bookmarks.ts | 23 |
2 files changed, 102 insertions, 0 deletions
diff --git a/packages/open-api/hoarder-openapi-spec.json b/packages/open-api/hoarder-openapi-spec.json index 3af444b8..c33d0621 100644 --- a/packages/open-api/hoarder-openapi-spec.json +++ b/packages/open-api/hoarder-openapi-spec.json @@ -913,6 +913,85 @@ } } }, + "/bookmarks/{bookmarkId}/summarize": { + "post": { + "description": "Attaches a summary to the bookmark and returns the updated record.", + "summary": "Summarize a bookmark", + "tags": [ + "Bookmarks" + ], + "security": [ + { + "bearerAuth": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/BookmarkId" + } + ], + "responses": { + "200": { + "description": "The updated bookmark with summary", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "createdAt": { + "type": "string" + }, + "modifiedAt": { + "type": "string", + "nullable": true + }, + "title": { + "type": "string", + "nullable": true, + "maxLength": 250 + }, + "archived": { + "type": "boolean" + }, + "favourited": { + "type": "boolean" + }, + "taggingStatus": { + "type": "string", + "nullable": true, + "enum": [ + "success", + "failure", + "pending" + ] + }, + "note": { + "type": "string", + "nullable": true + }, + "summary": { + "type": "string", + "nullable": true + } + }, + "required": [ + "id", + "createdAt", + "modifiedAt", + "archived", + "favourited", + "taggingStatus" + ] + } + } + } + } + } + } + }, "/bookmarks/{bookmarkId}/tags": { "post": { "description": "Attach tags to a bookmark", diff --git a/packages/open-api/lib/bookmarks.ts b/packages/open-api/lib/bookmarks.ts index c7c05256..a1ab1353 100644 --- a/packages/open-api/lib/bookmarks.ts +++ b/packages/open-api/lib/bookmarks.ts @@ -199,6 +199,29 @@ registry.registerPath({ registry.registerPath({ method: "post", + path: "/bookmarks/{bookmarkId}/summarize", + description: + "Attaches a summary to the bookmark and returns the updated record.", + summary: "Summarize a bookmark", + tags: ["Bookmarks"], + security: [{ [BearerAuth.name]: [] }], + request: { + params: z.object({ bookmarkId: BookmarkIdSchema }), + }, + responses: { + 200: { + description: "The updated bookmark with summary", + content: { + "application/json": { + schema: zBareBookmarkSchema, + }, + }, + }, + }, +}); + +registry.registerPath({ + method: "post", path: "/bookmarks/{bookmarkId}/tags", description: "Attach tags to a bookmark", summary: "Attach tags to a bookmark", |
