diff --git a/apps/docs/app/[lang]/[[...slug]]/page.tsx b/apps/docs/app/[lang]/[[...slug]]/page.tsx index 81f3311921d..a817cae813b 100644 --- a/apps/docs/app/[lang]/[[...slug]]/page.tsx +++ b/apps/docs/app/[lang]/[[...slug]]/page.tsx @@ -233,6 +233,7 @@ export default async function Page(props: { params: Promise<{ slug?: string[]; l lang={lang} breadcrumb={breadcrumbs} /> + span.text-sm.font-mono.text-fd-muted-foreground { order: 2; - background-color: rgb(240 240 243); - color: rgb(100 100 110); - padding: 0.125rem 0.5rem; + background-color: rgb(241 245 249); + color: rgb(71 85 105); + padding: 0.1875rem 0.5rem; border-radius: 0.375rem; font-size: 0.6875rem; - line-height: 1.25rem; + line-height: 1.125rem; font-weight: 500; font-family: var(--font-geist-sans), ui-sans-serif, system-ui, sans-serif; } @@ -984,8 +998,8 @@ html.dark #nd-page:has(.api-page-header) .flex.flex-wrap.items-center.gap-3.not-prose > span.text-sm.font-mono.text-fd-muted-foreground { - background-color: rgb(39 39 42); - color: rgb(212 212 216); + background-color: rgb(51 51 56); + color: rgb(212 212 220); } /* Hide the "*" inside the name span — we'll add "required" as a ::after on the flex row */ @@ -993,33 +1007,30 @@ html.dark display: none; } -/* Required badge — order 3, light red pill */ -#nd-page:has(.api-page-header) - .flex.flex-wrap.items-center.gap-3.not-prose:has(span.text-red-400)::after { +/* Required badge — order 3, red pill */ +#nd-page:has(.api-page-header) .flex.flex-wrap.items-center.gap-3.not-prose:has(span.text-red-400)::after { content: "required"; order: 3; display: inline-flex; align-items: center; - background-color: rgb(254 235 235); - color: rgb(220 38 38); - padding: 0.125rem 0.5rem; + background-color: rgb(254 226 226); + color: rgb(185 28 28); + padding: 0.1875rem 0.5rem; border-radius: 0.375rem; font-size: 0.6875rem; - line-height: 1.25rem; + line-height: 1.125rem; font-weight: 500; font-family: var(--font-geist-sans), ui-sans-serif, system-ui, sans-serif; } html.dark #nd-page:has(.api-page-header) .flex.flex-wrap.items-center.gap-3.not-prose:has(span.text-red-400)::after { - background-color: rgb(127 29 29 / 0.2); + background-color: rgb(153 27 27 / 0.3); color: rgb(252 165 165); } /* Optional "?" indicator — hide it */ -#nd-page:has(.api-page-header) - span.font-medium.font-mono.text-fd-primary - > span.text-fd-muted-foreground { +#nd-page:has(.api-page-header) span.font-medium.font-mono.text-fd-primary > span.text-fd-muted-foreground { display: none; } @@ -1054,12 +1065,12 @@ html.dark > span.text-sm.font-mono.text-fd-muted-foreground::after { content: "string"; font-size: 0.6875rem; - line-height: 1.25rem; + line-height: 1.125rem; font-weight: 500; font-family: var(--font-geist-sans), ui-sans-serif, system-ui, sans-serif; - background-color: rgb(240 240 243); - color: rgb(100 100 110); - padding: 0.125rem 0.5rem; + background-color: rgb(241 245 249); + color: rgb(71 85 105); + padding: 0.1875rem 0.5rem; border-radius: 0.375rem; display: inline-flex; align-items: center; @@ -1069,8 +1080,8 @@ html.dark div.my-4 > .flex.flex-wrap.items-center.gap-3.not-prose > span.text-sm.font-mono.text-fd-muted-foreground::after { - background-color: rgb(39 39 42); - color: rgb(212 212 216); + background-color: rgb(51 51 56); + color: rgb(212 212 220); } /* "header" badge via ::before on the auth flex row */ @@ -1079,43 +1090,37 @@ html.dark order: 3; display: inline-flex; align-items: center; - background-color: rgb(240 240 243); - color: rgb(100 100 110); - padding: 0.125rem 0.5rem; + background-color: rgb(241 245 249); + color: rgb(71 85 105); + padding: 0.1875rem 0.5rem; border-radius: 0.375rem; font-size: 0.6875rem; - line-height: 1.25rem; + line-height: 1.125rem; font-weight: 500; font-family: var(--font-geist-sans), ui-sans-serif, system-ui, sans-serif; } -html.dark - #nd-page:has(.api-page-header) - div.my-4 - > .flex.flex-wrap.items-center.gap-3.not-prose::before { - background-color: rgb(39 39 42); - color: rgb(212 212 216); +html.dark #nd-page:has(.api-page-header) div.my-4 > .flex.flex-wrap.items-center.gap-3.not-prose::before { + background-color: rgb(51 51 56); + color: rgb(212 212 220); } -/* "required" badge via ::after on the auth flex row — light red pill */ +/* "required" badge via ::after on the auth flex row — red pill */ #nd-page:has(.api-page-header) div.my-4 > .flex.flex-wrap.items-center.gap-3.not-prose::after { content: "required"; order: 4; display: inline-flex; align-items: center; - background-color: rgb(254 235 235); - color: rgb(220 38 38); - padding: 0.125rem 0.5rem; + background-color: rgb(254 226 226); + color: rgb(185 28 28); + padding: 0.1875rem 0.5rem; border-radius: 0.375rem; font-size: 0.6875rem; - line-height: 1.25rem; + line-height: 1.125rem; font-weight: 500; font-family: var(--font-geist-sans), ui-sans-serif, system-ui, sans-serif; } -html.dark - #nd-page:has(.api-page-header) - div.my-4 - > .flex.flex-wrap.items-center.gap-3.not-prose::after { - background-color: rgb(127 29 29 / 0.2); +html.dark #nd-page:has(.api-page-header) div.my-4 > .flex.flex-wrap.items-center.gap-3.not-prose::after { + background-color: rgb(153 27 27 / 0.3); color: rgb(252 165 165); } @@ -1168,22 +1173,19 @@ html.dark #nd-page:has(.api-page-header) .text-sm.border-t { #nd-page:has(.api-page-header) .flex.flex-wrap.items-center.gap-3.not-prose > button, #nd-page:has(.api-page-header) .flex.flex-wrap.items-center.gap-3.not-prose > span:has(> button) { order: 2; - background-color: rgb(240 240 243); - color: rgb(100 100 110); - padding: 0.125rem 0.5rem; + background-color: rgb(241 245 249); + color: rgb(71 85 105); + padding: 0.1875rem 0.5rem; border-radius: 0.375rem; font-size: 0.6875rem; - line-height: 1.25rem; + line-height: 1.125rem; font-weight: 500; font-family: var(--font-geist-sans), ui-sans-serif, system-ui, sans-serif; } html.dark #nd-page:has(.api-page-header) .flex.flex-wrap.items-center.gap-3.not-prose > button, -html.dark - #nd-page:has(.api-page-header) - .flex.flex-wrap.items-center.gap-3.not-prose - > span:has(> button) { - background-color: rgb(39 39 42); - color: rgb(212 212 216); +html.dark #nd-page:has(.api-page-header) .flex.flex-wrap.items-center.gap-3.not-prose > span:has(> button) { + background-color: rgb(51 51 56); + color: rgb(212 212 220); } /* Section headings (Authorization, Path Parameters, etc.) — consistent top spacing */ diff --git a/apps/docs/lib/source.ts b/apps/docs/lib/source.ts index 99c5f85e8ff..7dcfc33c8fc 100644 --- a/apps/docs/lib/source.ts +++ b/apps/docs/lib/source.ts @@ -62,7 +62,10 @@ function openapiPluginBadgeLeft() { null, createElement( 'span', - { className: `font-mono font-medium me-1.5 text-[10px] text-nowrap ${colorClass}` }, + { + className: `font-mono font-medium me-1.5 text-[10px] text-nowrap ${colorClass}`, + 'data-method': method.toLowerCase(), + }, method ), node.name diff --git a/apps/docs/openapi.json b/apps/docs/openapi.json index 4034424acae..4ff02aabaed 100644 --- a/apps/docs/openapi.json +++ b/apps/docs/openapi.json @@ -284,7 +284,8 @@ "description": "Cursor for fetching the next page of results. null when there are no more results." }, "limits": { - "$ref": "#/components/schemas/Limits" + "$ref": "#/components/schemas/Limits", + "description": "Rate limit and usage information for the current API key." } } } @@ -342,7 +343,8 @@ "$ref": "#/components/schemas/WorkflowDetail" }, "limits": { - "$ref": "#/components/schemas/Limits" + "$ref": "#/components/schemas/Limits", + "description": "Rate limit and usage information for the current API key." } } } @@ -1063,7 +1065,8 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Indicates whether the request was successful." }, "data": { "type": "object", @@ -1072,13 +1075,15 @@ "type": "array", "items": { "$ref": "#/components/schemas/Table" - } + }, + "description": "Array of tables in the workspace." }, "totalCount": { "type": "integer", "description": "Total number of tables." } - } + }, + "description": "Response payload." } } } @@ -1145,7 +1150,8 @@ "minItems": 1, "description": "Column definitions for the table." } - } + }, + "description": "Table schema definition containing column definitions." } } } @@ -1161,18 +1167,22 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Indicates whether the request was successful." }, "data": { "type": "object", "properties": { "table": { - "$ref": "#/components/schemas/Table" + "$ref": "#/components/schemas/Table", + "description": "The newly created table." }, "message": { - "type": "string" + "type": "string", + "description": "Confirmation message." } - } + }, + "description": "Response payload." } } } @@ -1238,15 +1248,18 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Indicates whether the request was successful." }, "data": { "type": "object", "properties": { "table": { - "$ref": "#/components/schemas/Table" + "$ref": "#/components/schemas/Table", + "description": "The requested table with its metadata and schema." } - } + }, + "description": "Response payload." } } } @@ -1313,15 +1326,18 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Indicates whether the request was successful." }, "data": { "type": "object", "properties": { "message": { - "type": "string" + "type": "string", + "description": "Confirmation message." } - } + }, + "description": "Response payload." } } } @@ -1431,7 +1447,8 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Indicates whether the request was successful." }, "data": { "type": "object", @@ -1440,7 +1457,8 @@ "type": "array", "items": { "$ref": "#/components/schemas/TableRow" - } + }, + "description": "Array of rows matching the query." }, "rowCount": { "type": "integer", @@ -1451,12 +1469,15 @@ "description": "Total rows matching the filter." }, "limit": { - "type": "integer" + "type": "integer", + "description": "The limit that was applied to the query." }, "offset": { - "type": "integer" + "type": "integer", + "description": "The offset that was applied to the query." } - } + }, + "description": "Response payload." } } } @@ -1517,7 +1538,8 @@ "description": "Single row insert.", "properties": { "workspaceId": { - "type": "string" + "type": "string", + "description": "The workspace that owns the table." }, "data": { "type": "object", @@ -1532,7 +1554,8 @@ "description": "Batch insert (up to 1000 rows).", "properties": { "workspaceId": { - "type": "string" + "type": "string", + "description": "The workspace that owns the table." }, "rows": { "type": "array", @@ -1540,7 +1563,8 @@ "type": "object", "additionalProperties": true }, - "maxItems": 1000 + "maxItems": 1000, + "description": "Array of row objects to insert. Each object contains key-value pairs matching the table schema." } } } @@ -1558,27 +1582,33 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Indicates whether the request was successful." }, "data": { "type": "object", "properties": { "row": { - "$ref": "#/components/schemas/TableRow" + "$ref": "#/components/schemas/TableRow", + "description": "The inserted row (present for single-row inserts)." }, "rows": { "type": "array", "items": { "$ref": "#/components/schemas/TableRow" - } + }, + "description": "Array of inserted rows (present for batch inserts)." }, "insertedCount": { - "type": "integer" + "type": "integer", + "description": "Number of rows successfully inserted." }, "message": { - "type": "string" + "type": "string", + "description": "Confirmation message." } - } + }, + "description": "Response payload." } } } @@ -1623,7 +1653,8 @@ "schema": { "type": "string", "example": "tbl_abc123" - } + }, + "description": "The table to update rows in." } ], "requestBody": { @@ -1635,7 +1666,8 @@ "required": ["workspaceId", "filter", "data"], "properties": { "workspaceId": { - "type": "string" + "type": "string", + "description": "The workspace that owns the table." }, "filter": { "type": "object", @@ -1667,24 +1699,29 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Indicates whether the request was successful." }, "data": { "type": "object", "properties": { "message": { - "type": "string" + "type": "string", + "description": "Confirmation message describing how many rows were updated." }, "updatedCount": { - "type": "integer" + "type": "integer", + "description": "Number of rows that were updated." }, "updatedRowIds": { "type": "array", "items": { "type": "string" - } + }, + "description": "Array of IDs for each row that was updated." } - } + }, + "description": "Response payload." } } } @@ -1729,7 +1766,8 @@ "schema": { "type": "string", "example": "tbl_abc123" - } + }, + "description": "The table to delete rows from." } ], "requestBody": { @@ -1744,16 +1782,19 @@ "description": "Delete by filter.", "properties": { "workspaceId": { - "type": "string" + "type": "string", + "description": "The workspace that owns the table." }, "filter": { "type": "object", - "additionalProperties": true + "additionalProperties": true, + "description": "Filter criteria to match rows for deletion." }, "limit": { "type": "integer", "minimum": 1, - "maximum": 1000 + "maximum": 1000, + "description": "Maximum number of rows to delete. Defaults to all matching rows, capped at 1000." } } }, @@ -1763,14 +1804,16 @@ "description": "Delete by IDs.", "properties": { "workspaceId": { - "type": "string" + "type": "string", + "description": "The workspace that owns the table." }, "rowIds": { "type": "array", "items": { "type": "string" }, - "maxItems": 1000 + "maxItems": 1000, + "description": "Explicit list of row IDs to delete (max 1000)." } } } @@ -1788,22 +1831,26 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Indicates whether the request was successful." }, "data": { "type": "object", "properties": { "message": { - "type": "string" + "type": "string", + "description": "Confirmation message describing how many rows were deleted." }, "deletedCount": { - "type": "integer" + "type": "integer", + "description": "Number of rows that were deleted." }, "deletedRowIds": { "type": "array", "items": { "type": "string" - } + }, + "description": "Array of IDs for each row that was deleted." }, "requestedCount": { "type": "integer", @@ -1816,7 +1863,8 @@ }, "description": "Row IDs that were requested but not found (only present when deleting by IDs)." } - } + }, + "description": "Response payload." } } } @@ -1863,7 +1911,8 @@ "schema": { "type": "string", "example": "tbl_abc123" - } + }, + "description": "The table the row belongs to." }, { "name": "rowId", @@ -1881,7 +1930,8 @@ "required": true, "schema": { "type": "string" - } + }, + "description": "The workspace that owns the table." } ], "responses": { @@ -1893,15 +1943,18 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Indicates whether the request was successful." }, "data": { "type": "object", "properties": { "row": { - "$ref": "#/components/schemas/TableRow" + "$ref": "#/components/schemas/TableRow", + "description": "The requested row." } - } + }, + "description": "Response payload." } } } @@ -1946,7 +1999,8 @@ "schema": { "type": "string", "example": "tbl_abc123" - } + }, + "description": "The table the row belongs to." }, { "name": "rowId", @@ -1968,7 +2022,8 @@ "required": ["workspaceId", "data"], "properties": { "workspaceId": { - "type": "string" + "type": "string", + "description": "The workspace that owns the table." }, "data": { "type": "object", @@ -1989,18 +2044,22 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Indicates whether the request was successful." }, "data": { "type": "object", "properties": { "row": { - "$ref": "#/components/schemas/TableRow" + "$ref": "#/components/schemas/TableRow", + "description": "The updated row with all current field values." }, "message": { - "type": "string" + "type": "string", + "description": "Confirmation message." } - } + }, + "description": "Response payload." } } } @@ -2045,7 +2104,8 @@ "schema": { "type": "string", "example": "tbl_abc123" - } + }, + "description": "The table the row belongs to." }, { "name": "rowId", @@ -2063,7 +2123,8 @@ "required": true, "schema": { "type": "string" - } + }, + "description": "The workspace that owns the table." } ], "responses": { @@ -2075,18 +2136,22 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Indicates whether the request was successful." }, "data": { "type": "object", "properties": { "message": { - "type": "string" + "type": "string", + "description": "Confirmation message." }, "deletedCount": { - "type": "integer" + "type": "integer", + "description": "Number of rows deleted (always 1 for single-row deletion)." } - } + }, + "description": "Response payload." } } } @@ -2133,7 +2198,8 @@ "schema": { "type": "string", "example": "tbl_abc123" - } + }, + "description": "The table to upsert the row into." } ], "requestBody": { @@ -2171,13 +2237,15 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Indicates whether the request was successful." }, "data": { "type": "object", "properties": { "row": { - "$ref": "#/components/schemas/TableRow" + "$ref": "#/components/schemas/TableRow", + "description": "The inserted or updated row." }, "operation": { "type": "string", @@ -2185,9 +2253,11 @@ "description": "Whether the row was inserted or updated." }, "message": { - "type": "string" + "type": "string", + "description": "Confirmation message." } - } + }, + "description": "Response payload." } } } @@ -2246,7 +2316,8 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Whether the request completed successfully." }, "data": { "type": "object", @@ -2255,13 +2326,15 @@ "type": "array", "items": { "$ref": "#/components/schemas/FileMetadata" - } + }, + "description": "Array of file metadata objects in the workspace." }, "totalCount": { "type": "integer", "description": "Total number of files." } - } + }, + "description": "Response payload containing the files list and count." } } } @@ -2326,18 +2399,22 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Whether the upload completed successfully." }, "data": { "type": "object", "properties": { "file": { - "$ref": "#/components/schemas/FileMetadata" + "$ref": "#/components/schemas/FileMetadata", + "description": "Metadata of the newly uploaded file." }, "message": { - "type": "string" + "type": "string", + "description": "Human-readable confirmation message." } - } + }, + "description": "Response payload containing the uploaded file metadata." } } } @@ -2361,7 +2438,8 @@ "type": "object", "properties": { "error": { - "type": "string" + "type": "string", + "description": "Error message indicating a file with the same name already exists in this workspace." } } } @@ -2523,15 +2601,18 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Whether the deletion completed successfully." }, "data": { "type": "object", "properties": { "message": { - "type": "string" + "type": "string", + "description": "Human-readable confirmation message." } - } + }, + "description": "Response payload containing the deletion confirmation." } } } @@ -2590,7 +2671,8 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Whether the request was successful." }, "data": { "type": "object", @@ -2599,13 +2681,15 @@ "type": "array", "items": { "$ref": "#/components/schemas/KnowledgeBase" - } + }, + "description": "Array of knowledge base objects in the workspace." }, "totalCount": { "type": "integer", "description": "Total number of knowledge bases." } - } + }, + "description": "Response payload containing the list of knowledge bases." } } } @@ -2662,7 +2746,8 @@ "maxLength": 1000 }, "chunkingConfig": { - "$ref": "#/components/schemas/ChunkingConfig" + "$ref": "#/components/schemas/ChunkingConfig", + "description": "Optional chunking configuration for document processing. Defaults to maxSize=1024, minSize=100, overlap=200 if omitted." } } } @@ -2678,18 +2763,22 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Whether the request was successful." }, "data": { "type": "object", "properties": { "knowledgeBase": { - "$ref": "#/components/schemas/KnowledgeBase" + "$ref": "#/components/schemas/KnowledgeBase", + "description": "The newly created knowledge base object." }, "message": { - "type": "string" + "type": "string", + "description": "Human-readable confirmation message." } - } + }, + "description": "Response payload containing the created knowledge base." } } } @@ -2754,15 +2843,18 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Whether the request was successful." }, "data": { "type": "object", "properties": { "knowledgeBase": { - "$ref": "#/components/schemas/KnowledgeBase" + "$ref": "#/components/schemas/KnowledgeBase", + "description": "The knowledge base object." } - } + }, + "description": "Response payload containing the knowledge base details." } } } @@ -2833,7 +2925,8 @@ "maxLength": 1000 }, "chunkingConfig": { - "$ref": "#/components/schemas/ChunkingConfig" + "$ref": "#/components/schemas/ChunkingConfig", + "description": "Updated chunking configuration. All three fields (maxSize, minSize, overlap) must be provided if included." } } } @@ -2849,18 +2942,22 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Whether the request was successful." }, "data": { "type": "object", "properties": { "knowledgeBase": { - "$ref": "#/components/schemas/KnowledgeBase" + "$ref": "#/components/schemas/KnowledgeBase", + "description": "The updated knowledge base object." }, "message": { - "type": "string" + "type": "string", + "description": "Human-readable confirmation message." } - } + }, + "description": "Response payload containing the updated knowledge base." } } } @@ -2926,15 +3023,18 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Whether the request was successful." }, "data": { "type": "object", "properties": { "message": { - "type": "string" + "type": "string", + "description": "Human-readable confirmation message." } - } + }, + "description": "Response payload." } } } @@ -3066,7 +3166,8 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Whether the request was successful." }, "data": { "type": "object", @@ -3075,26 +3176,33 @@ "type": "array", "items": { "$ref": "#/components/schemas/KnowledgeDocument" - } + }, + "description": "Array of document objects in the knowledge base." }, "pagination": { "type": "object", "properties": { "total": { - "type": "integer" + "type": "integer", + "description": "Total number of documents matching the query." }, "limit": { - "type": "integer" + "type": "integer", + "description": "Maximum number of documents returned per page." }, "offset": { - "type": "integer" + "type": "integer", + "description": "Number of documents skipped from the beginning." }, "hasMore": { - "type": "boolean" + "type": "boolean", + "description": "Whether there are more documents beyond the current page." } - } + }, + "description": "Pagination metadata for the document list." } - } + }, + "description": "Response payload containing the documents and pagination info." } } } @@ -3173,18 +3281,22 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Whether the request was successful." }, "data": { "type": "object", "properties": { "document": { - "$ref": "#/components/schemas/KnowledgeDocument" + "$ref": "#/components/schemas/KnowledgeDocument", + "description": "The newly created document object with initial processing status of 'pending'." }, "message": { - "type": "string" + "type": "string", + "description": "Human-readable confirmation message." } - } + }, + "description": "Response payload containing the uploaded document." } } } @@ -3211,7 +3323,8 @@ "type": "object", "properties": { "error": { - "type": "string" + "type": "string", + "description": "Error message indicating a file with the same name already exists." } } } @@ -3226,7 +3339,8 @@ "type": "object", "properties": { "error": { - "type": "string" + "type": "string", + "description": "Error message indicating the workspace storage limit has been exceeded." } } } @@ -3241,7 +3355,8 @@ "type": "object", "properties": { "error": { - "type": "string" + "type": "string", + "description": "Error message indicating the file type is not supported." } } } @@ -3306,15 +3421,18 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Whether the request was successful." }, "data": { "type": "object", "properties": { "document": { - "$ref": "#/components/schemas/KnowledgeDocumentDetail" + "$ref": "#/components/schemas/KnowledgeDocumentDetail", + "description": "Detailed document object including processing and connector information." } - } + }, + "description": "Response payload containing the document details." } } } @@ -3386,15 +3504,18 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Whether the request was successful." }, "data": { "type": "object", "properties": { "message": { - "type": "string" + "type": "string", + "description": "Human-readable confirmation message." } - } + }, + "description": "Response payload." } } } @@ -3455,7 +3576,8 @@ }, "description": "An array of knowledge base IDs to search across." } - ] + ], + "description": "Array of knowledge base IDs to search across." }, "query": { "type": "string", @@ -3489,7 +3611,8 @@ "type": "object", "properties": { "success": { - "type": "boolean" + "type": "boolean", + "description": "Whether the request was successful." }, "data": { "type": "object", @@ -3498,7 +3621,8 @@ "type": "array", "items": { "$ref": "#/components/schemas/SearchResult" - } + }, + "description": "Array of search result objects ranked by similarity." }, "query": { "type": "string", @@ -3519,7 +3643,8 @@ "type": "integer", "description": "Number of results returned." } - } + }, + "description": "Response payload containing the search results and metadata." } } } @@ -3610,7 +3735,8 @@ "type": "array", "items": { "$ref": "#/components/schemas/ColumnDefinition" - } + }, + "description": "Array of column definitions for the table." } } }, @@ -4749,11 +4875,28 @@ "description": "Comparison operator (e.g. eq, neq, gt, lt, gte, lte, contains, between)." }, "value": { - "oneOf": [{ "type": "string" }, { "type": "number" }, { "type": "boolean" }], + "oneOf": [ + { + "type": "string" + }, + { + "type": "number" + }, + { + "type": "boolean" + } + ], "description": "Value to filter by." }, "valueTo": { - "oneOf": [{ "type": "string" }, { "type": "number" }], + "oneOf": [ + { + "type": "string" + }, + { + "type": "number" + } + ], "description": "Upper bound value for 'between' operator." } }