aboutsummaryrefslogtreecommitdiffstats
path: root/packages/open-api
diff options
context:
space:
mode:
Diffstat (limited to 'packages/open-api')
-rw-r--r--packages/open-api/karakeep-openapi-spec.json61
-rw-r--r--packages/open-api/lib/tags.ts6
2 files changed, 65 insertions, 2 deletions
diff --git a/packages/open-api/karakeep-openapi-spec.json b/packages/open-api/karakeep-openapi-spec.json
index 83a5b811..ffa9c357 100644
--- a/packages/open-api/karakeep-openapi-spec.json
+++ b/packages/open-api/karakeep-openapi-spec.json
@@ -2292,6 +2292,60 @@
"bearerAuth": []
}
],
+ "parameters": [
+ {
+ "schema": {
+ "type": "string"
+ },
+ "required": false,
+ "name": "nameContains",
+ "in": "query"
+ },
+ {
+ "schema": {
+ "type": "string",
+ "enum": [
+ "name",
+ "usage",
+ "relevance"
+ ],
+ "default": "usage"
+ },
+ "required": false,
+ "name": "sort",
+ "in": "query"
+ },
+ {
+ "schema": {
+ "type": "string",
+ "enum": [
+ "ai",
+ "human",
+ "none"
+ ]
+ },
+ "required": false,
+ "name": "attachedBy",
+ "in": "query"
+ },
+ {
+ "schema": {
+ "type": "string"
+ },
+ "required": false,
+ "name": "cursor",
+ "in": "query"
+ },
+ {
+ "schema": {
+ "type": "number",
+ "nullable": true
+ },
+ "required": false,
+ "name": "limit",
+ "in": "query"
+ }
+ ],
"responses": {
"200": {
"description": "Object with all tags data.",
@@ -2305,10 +2359,15 @@
"items": {
"$ref": "#/components/schemas/Tag"
}
+ },
+ "nextCursor": {
+ "type": "string",
+ "nullable": true
}
},
"required": [
- "tags"
+ "tags",
+ "nextCursor"
]
}
}
diff --git a/packages/open-api/lib/tags.ts b/packages/open-api/lib/tags.ts
index 0a4f62cb..84af39b1 100644
--- a/packages/open-api/lib/tags.ts
+++ b/packages/open-api/lib/tags.ts
@@ -9,6 +9,7 @@ import {
zCreateTagRequestSchema,
zGetTagResponseSchema,
zTagBasicSchema,
+ zTagListQueryParamsSchema,
zUpdateTagRequestSchema,
} from "@karakeep/shared/types/tags";
@@ -43,7 +44,9 @@ registry.registerPath({
summary: "Get all tags",
tags: ["Tags"],
security: [{ [BearerAuth.name]: [] }],
- request: {},
+ request: {
+ query: zTagListQueryParamsSchema,
+ },
responses: {
200: {
description: "Object with all tags data.",
@@ -51,6 +54,7 @@ registry.registerPath({
"application/json": {
schema: z.object({
tags: z.array(TagSchema),
+ nextCursor: z.string().nullable(),
}),
},
},