@knowledge-stack/ksapi 1.58.0 → 1.59.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/.openapi-generator/FILES +8 -0
  2. package/README.md +9 -2
  3. package/dist/apis/FoldersApi.d.ts +63 -4
  4. package/dist/apis/FoldersApi.js +64 -3
  5. package/dist/apis/PathPartsApi.d.ts +45 -1
  6. package/dist/apis/PathPartsApi.js +44 -0
  7. package/dist/apis/SectionsApi.d.ts +44 -0
  8. package/dist/apis/SectionsApi.js +43 -0
  9. package/dist/apis/TenantsApi.d.ts +4 -4
  10. package/dist/apis/TenantsApi.js +2 -2
  11. package/dist/esm/apis/FoldersApi.d.ts +63 -4
  12. package/dist/esm/apis/FoldersApi.js +64 -3
  13. package/dist/esm/apis/PathPartsApi.d.ts +45 -1
  14. package/dist/esm/apis/PathPartsApi.js +45 -1
  15. package/dist/esm/apis/SectionsApi.d.ts +44 -0
  16. package/dist/esm/apis/SectionsApi.js +43 -0
  17. package/dist/esm/apis/TenantsApi.d.ts +4 -4
  18. package/dist/esm/apis/TenantsApi.js +2 -2
  19. package/dist/esm/models/AncestryResponse.d.ts +48 -0
  20. package/dist/esm/models/AncestryResponse.js +45 -0
  21. package/dist/esm/models/PathPartAncestorItem.d.ts +96 -0
  22. package/dist/esm/models/PathPartAncestorItem.js +77 -0
  23. package/dist/esm/models/SearchSortOrder.d.ts +26 -0
  24. package/dist/esm/models/SearchSortOrder.js +44 -0
  25. package/dist/esm/models/SearchablePartType.d.ts +25 -0
  26. package/dist/esm/models/SearchablePartType.js +43 -0
  27. package/dist/esm/models/index.d.ts +4 -0
  28. package/dist/esm/models/index.js +4 -0
  29. package/dist/models/AncestryResponse.d.ts +48 -0
  30. package/dist/models/AncestryResponse.js +53 -0
  31. package/dist/models/PathPartAncestorItem.d.ts +96 -0
  32. package/dist/models/PathPartAncestorItem.js +85 -0
  33. package/dist/models/SearchSortOrder.d.ts +26 -0
  34. package/dist/models/SearchSortOrder.js +52 -0
  35. package/dist/models/SearchablePartType.d.ts +25 -0
  36. package/dist/models/SearchablePartType.js +51 -0
  37. package/dist/models/index.d.ts +4 -0
  38. package/dist/models/index.js +4 -0
  39. package/docs/AncestryResponse.md +35 -0
  40. package/docs/FoldersApi.md +94 -4
  41. package/docs/PathPartAncestorItem.md +51 -0
  42. package/docs/PathPartsApi.md +75 -0
  43. package/docs/SearchSortOrder.md +33 -0
  44. package/docs/SearchablePartType.md +33 -0
  45. package/docs/SectionsApi.md +75 -0
  46. package/docs/TenantsApi.md +1 -1
  47. package/package.json +1 -1
  48. package/src/apis/FoldersApi.ts +136 -7
  49. package/src/apis/PathPartsApi.ts +88 -0
  50. package/src/apis/SectionsApi.ts +81 -0
  51. package/src/apis/TenantsApi.ts +4 -4
  52. package/src/models/AncestryResponse.ts +91 -0
  53. package/src/models/PathPartAncestorItem.ts +165 -0
  54. package/src/models/SearchSortOrder.ts +54 -0
  55. package/src/models/SearchablePartType.ts +53 -0
  56. package/src/models/index.ts +4 -0
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * Knowledge Stack API
6
+ * Knowledge Stack backend API for authentication and knowledge management
7
+ *
8
+ * The version of the OpenAPI document: 0.1.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.SearchSortOrder = void 0;
17
+ exports.instanceOfSearchSortOrder = instanceOfSearchSortOrder;
18
+ exports.SearchSortOrderFromJSON = SearchSortOrderFromJSON;
19
+ exports.SearchSortOrderFromJSONTyped = SearchSortOrderFromJSONTyped;
20
+ exports.SearchSortOrderToJSON = SearchSortOrderToJSON;
21
+ exports.SearchSortOrderToJSONTyped = SearchSortOrderToJSONTyped;
22
+ /**
23
+ * Sort order options for search results.
24
+ * @export
25
+ */
26
+ exports.SearchSortOrder = {
27
+ Name: 'NAME',
28
+ UpdatedAt: 'UPDATED_AT',
29
+ CreatedAt: 'CREATED_AT'
30
+ };
31
+ function instanceOfSearchSortOrder(value) {
32
+ for (const key in exports.SearchSortOrder) {
33
+ if (Object.prototype.hasOwnProperty.call(exports.SearchSortOrder, key)) {
34
+ if (exports.SearchSortOrder[key] === value) {
35
+ return true;
36
+ }
37
+ }
38
+ }
39
+ return false;
40
+ }
41
+ function SearchSortOrderFromJSON(json) {
42
+ return SearchSortOrderFromJSONTyped(json, false);
43
+ }
44
+ function SearchSortOrderFromJSONTyped(json, ignoreDiscriminator) {
45
+ return json;
46
+ }
47
+ function SearchSortOrderToJSON(value) {
48
+ return value;
49
+ }
50
+ function SearchSortOrderToJSONTyped(value, ignoreDiscriminator) {
51
+ return value;
52
+ }
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Knowledge Stack API
3
+ * Knowledge Stack backend API for authentication and knowledge management
4
+ *
5
+ * The version of the OpenAPI document: 0.1.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * Part types that can be searched.
14
+ * @export
15
+ */
16
+ export declare const SearchablePartType: {
17
+ readonly Folder: "FOLDER";
18
+ readonly Document: "DOCUMENT";
19
+ };
20
+ export type SearchablePartType = typeof SearchablePartType[keyof typeof SearchablePartType];
21
+ export declare function instanceOfSearchablePartType(value: any): boolean;
22
+ export declare function SearchablePartTypeFromJSON(json: any): SearchablePartType;
23
+ export declare function SearchablePartTypeFromJSONTyped(json: any, ignoreDiscriminator: boolean): SearchablePartType;
24
+ export declare function SearchablePartTypeToJSON(value?: SearchablePartType | null): any;
25
+ export declare function SearchablePartTypeToJSONTyped(value: any, ignoreDiscriminator: boolean): SearchablePartType;
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * Knowledge Stack API
6
+ * Knowledge Stack backend API for authentication and knowledge management
7
+ *
8
+ * The version of the OpenAPI document: 0.1.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.SearchablePartType = void 0;
17
+ exports.instanceOfSearchablePartType = instanceOfSearchablePartType;
18
+ exports.SearchablePartTypeFromJSON = SearchablePartTypeFromJSON;
19
+ exports.SearchablePartTypeFromJSONTyped = SearchablePartTypeFromJSONTyped;
20
+ exports.SearchablePartTypeToJSON = SearchablePartTypeToJSON;
21
+ exports.SearchablePartTypeToJSONTyped = SearchablePartTypeToJSONTyped;
22
+ /**
23
+ * Part types that can be searched.
24
+ * @export
25
+ */
26
+ exports.SearchablePartType = {
27
+ Folder: 'FOLDER',
28
+ Document: 'DOCUMENT'
29
+ };
30
+ function instanceOfSearchablePartType(value) {
31
+ for (const key in exports.SearchablePartType) {
32
+ if (Object.prototype.hasOwnProperty.call(exports.SearchablePartType, key)) {
33
+ if (exports.SearchablePartType[key] === value) {
34
+ return true;
35
+ }
36
+ }
37
+ }
38
+ return false;
39
+ }
40
+ function SearchablePartTypeFromJSON(json) {
41
+ return SearchablePartTypeFromJSONTyped(json, false);
42
+ }
43
+ function SearchablePartTypeFromJSONTyped(json, ignoreDiscriminator) {
44
+ return json;
45
+ }
46
+ function SearchablePartTypeToJSON(value) {
47
+ return value;
48
+ }
49
+ function SearchablePartTypeToJSONTyped(value, ignoreDiscriminator) {
50
+ return value;
51
+ }
@@ -1,4 +1,5 @@
1
1
  export * from './AcceptInviteResponse';
2
+ export * from './AncestryResponse';
2
3
  export * from './ApiKeyResponse';
3
4
  export * from './Args';
4
5
  export * from './BrandingLogoType';
@@ -81,6 +82,7 @@ export * from './PartType';
81
82
  export * from './PasswordResetRequest';
82
83
  export * from './PasswordResetWithTokenRequest';
83
84
  export * from './PathOrder';
85
+ export * from './PathPartAncestorItem';
84
86
  export * from './PathPartResponse';
85
87
  export * from './PathPartTagsResponse';
86
88
  export * from './PermissionCapability';
@@ -95,7 +97,9 @@ export * from './ResolvedReferenceOutput';
95
97
  export * from './RootResponse';
96
98
  export * from './SSOInitiateResponse';
97
99
  export * from './ScoredChunkResponse';
100
+ export * from './SearchSortOrder';
98
101
  export * from './SearchType';
102
+ export * from './SearchablePartType';
99
103
  export * from './SectionContentItem';
100
104
  export * from './SectionContentItemOrChunkContentItem';
101
105
  export * from './SectionResponse';
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  /* tslint:disable */
18
18
  /* eslint-disable */
19
19
  __exportStar(require("./AcceptInviteResponse"), exports);
20
+ __exportStar(require("./AncestryResponse"), exports);
20
21
  __exportStar(require("./ApiKeyResponse"), exports);
21
22
  __exportStar(require("./Args"), exports);
22
23
  __exportStar(require("./BrandingLogoType"), exports);
@@ -99,6 +100,7 @@ __exportStar(require("./PartType"), exports);
99
100
  __exportStar(require("./PasswordResetRequest"), exports);
100
101
  __exportStar(require("./PasswordResetWithTokenRequest"), exports);
101
102
  __exportStar(require("./PathOrder"), exports);
103
+ __exportStar(require("./PathPartAncestorItem"), exports);
102
104
  __exportStar(require("./PathPartResponse"), exports);
103
105
  __exportStar(require("./PathPartTagsResponse"), exports);
104
106
  __exportStar(require("./PermissionCapability"), exports);
@@ -113,7 +115,9 @@ __exportStar(require("./ResolvedReferenceOutput"), exports);
113
115
  __exportStar(require("./RootResponse"), exports);
114
116
  __exportStar(require("./SSOInitiateResponse"), exports);
115
117
  __exportStar(require("./ScoredChunkResponse"), exports);
118
+ __exportStar(require("./SearchSortOrder"), exports);
116
119
  __exportStar(require("./SearchType"), exports);
120
+ __exportStar(require("./SearchablePartType"), exports);
117
121
  __exportStar(require("./SectionContentItem"), exports);
118
122
  __exportStar(require("./SectionContentItemOrChunkContentItem"), exports);
119
123
  __exportStar(require("./SectionResponse"), exports);
@@ -0,0 +1,35 @@
1
+
2
+ # AncestryResponse
3
+
4
+ Response containing the ancestry chain from root to target (inclusive).
5
+
6
+ ## Properties
7
+
8
+ Name | Type
9
+ ------------ | -------------
10
+ `ancestors` | [Array<PathPartAncestorItem>](PathPartAncestorItem.md)
11
+
12
+ ## Example
13
+
14
+ ```typescript
15
+ import type { AncestryResponse } from '@knowledge-stack/ksapi'
16
+
17
+ // TODO: Update the object below with actual values
18
+ const example = {
19
+ "ancestors": null,
20
+ } satisfies AncestryResponse
21
+
22
+ console.log(example)
23
+
24
+ // Convert the instance to a JSON string
25
+ const exampleJSON: string = JSON.stringify(example)
26
+ console.log(exampleJSON)
27
+
28
+ // Parse the JSON string back to an object
29
+ const exampleParsed = JSON.parse(exampleJSON) as AncestryResponse
30
+ console.log(exampleParsed)
31
+ ```
32
+
33
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
34
+
35
+
@@ -10,6 +10,7 @@ All URIs are relative to *http://localhost:8000*
10
10
  | [**getFolder**](FoldersApi.md#getfolder) | **GET** /v1/folders/{folder_id} | Get Folder Handler |
11
11
  | [**listFolderContents**](FoldersApi.md#listfoldercontents) | **GET** /v1/folders/{folder_id}/contents | List Folder Contents Handler |
12
12
  | [**listFolders**](FoldersApi.md#listfolders) | **GET** /v1/folders | List Folders Handler |
13
+ | [**searchItems**](FoldersApi.md#searchitems) | **GET** /v1/folders/search | Search Items Handler |
13
14
  | [**updateFolder**](FoldersApi.md#updatefolderoperation) | **PATCH** /v1/folders/{folder_id} | Update Folder Handler |
14
15
 
15
16
 
@@ -318,7 +319,7 @@ No authorization required
318
319
 
319
320
  ## listFolderContents
320
321
 
321
- > PaginatedResponseAnnotatedUnionFolderResponseDocumentResponseDiscriminator listFolderContents(folderId, maxDepth, sortOrder, withTags, nameLike, limit, offset, authorization, ksUat)
322
+ > PaginatedResponseAnnotatedUnionFolderResponseDocumentResponseDiscriminator listFolderContents(folderId, maxDepth, sortOrder, withTags, limit, offset, authorization, ksUat)
322
323
 
323
324
  List Folder Contents Handler
324
325
 
@@ -346,8 +347,6 @@ async function example() {
346
347
  sortOrder: ...,
347
348
  // boolean | Include tag IDs for each item (default: false) (optional)
348
349
  withTags: true,
349
- // string | Case-insensitive partial name search filter (optional)
350
- nameLike: nameLike_example,
351
350
  // number | Number of items per page (optional)
352
351
  limit: 56,
353
352
  // number | Number of items to skip (optional)
@@ -379,7 +378,6 @@ example().catch(console.error);
379
378
  | **maxDepth** | `number` | Maximum depth to traverse (1=direct children, default: 1) | [Optional] [Defaults to `1`] |
380
379
  | **sortOrder** | `PathOrder` | Sort order for results (default: LOGICAL) | [Optional] [Defaults to `undefined`] [Enum: LOGICAL, NAME, UPDATED_AT, CREATED_AT] |
381
380
  | **withTags** | `boolean` | Include tag IDs for each item (default: false) | [Optional] [Defaults to `false`] |
382
- | **nameLike** | `string` | Case-insensitive partial name search filter | [Optional] [Defaults to `undefined`] |
383
381
  | **limit** | `number` | Number of items per page | [Optional] [Defaults to `20`] |
384
382
  | **offset** | `number` | Number of items to skip | [Optional] [Defaults to `0`] |
385
383
  | **authorization** | `string` | | [Optional] [Defaults to `undefined`] |
@@ -494,6 +492,98 @@ No authorization required
494
492
  [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
495
493
 
496
494
 
495
+ ## searchItems
496
+
497
+ > PaginatedResponseAnnotatedUnionFolderResponseDocumentResponseDiscriminator searchItems(nameLike, sortOrder, partType, withTags, parentPathPartId, limit, offset, authorization, ksUat)
498
+
499
+ Search Items Handler
500
+
501
+ Search for folders and documents by name. Performs a case-insensitive partial name match using trigram indexing. Results are filtered by the current user\'s path permissions. When parent_path_part_id is provided, only items under that folder are searched. Otherwise, all accessible items across the tenant are searched.
502
+
503
+ ### Example
504
+
505
+ ```ts
506
+ import {
507
+ Configuration,
508
+ FoldersApi,
509
+ } from '@knowledge-stack/ksapi';
510
+ import type { SearchItemsRequest } from '@knowledge-stack/ksapi';
511
+
512
+ async function example() {
513
+ console.log("🚀 Testing @knowledge-stack/ksapi SDK...");
514
+ const api = new FoldersApi();
515
+
516
+ const body = {
517
+ // string | Case-insensitive partial name search
518
+ nameLike: nameLike_example,
519
+ // SearchSortOrder | Sort order for results (default: NAME) (optional)
520
+ sortOrder: ...,
521
+ // SearchablePartType | Filter by item type (default: both folders and documents) (optional)
522
+ partType: ...,
523
+ // boolean | Include tags in the response (default: false) (optional)
524
+ withTags: true,
525
+ // string | Scope search to descendants of this folder\'s path part (optional)
526
+ parentPathPartId: 38400000-8cf0-11bd-b23e-10b96e4ef00d,
527
+ // number | Number of items per page (optional)
528
+ limit: 56,
529
+ // number | Number of items to skip (optional)
530
+ offset: 56,
531
+ // string (optional)
532
+ authorization: authorization_example,
533
+ // string (optional)
534
+ ksUat: ksUat_example,
535
+ } satisfies SearchItemsRequest;
536
+
537
+ try {
538
+ const data = await api.searchItems(body);
539
+ console.log(data);
540
+ } catch (error) {
541
+ console.error(error);
542
+ }
543
+ }
544
+
545
+ // Run the test
546
+ example().catch(console.error);
547
+ ```
548
+
549
+ ### Parameters
550
+
551
+
552
+ | Name | Type | Description | Notes |
553
+ |------------- | ------------- | ------------- | -------------|
554
+ | **nameLike** | `string` | Case-insensitive partial name search | [Defaults to `undefined`] |
555
+ | **sortOrder** | `SearchSortOrder` | Sort order for results (default: NAME) | [Optional] [Defaults to `undefined`] [Enum: NAME, UPDATED_AT, CREATED_AT] |
556
+ | **partType** | `SearchablePartType` | Filter by item type (default: both folders and documents) | [Optional] [Defaults to `undefined`] [Enum: FOLDER, DOCUMENT] |
557
+ | **withTags** | `boolean` | Include tags in the response (default: false) | [Optional] [Defaults to `false`] |
558
+ | **parentPathPartId** | `string` | Scope search to descendants of this folder\'s path part | [Optional] [Defaults to `undefined`] |
559
+ | **limit** | `number` | Number of items per page | [Optional] [Defaults to `20`] |
560
+ | **offset** | `number` | Number of items to skip | [Optional] [Defaults to `0`] |
561
+ | **authorization** | `string` | | [Optional] [Defaults to `undefined`] |
562
+ | **ksUat** | `string` | | [Optional] [Defaults to `undefined`] |
563
+
564
+ ### Return type
565
+
566
+ [**PaginatedResponseAnnotatedUnionFolderResponseDocumentResponseDiscriminator**](PaginatedResponseAnnotatedUnionFolderResponseDocumentResponseDiscriminator.md)
567
+
568
+ ### Authorization
569
+
570
+ No authorization required
571
+
572
+ ### HTTP request headers
573
+
574
+ - **Content-Type**: Not defined
575
+ - **Accept**: `application/json`
576
+
577
+
578
+ ### HTTP response details
579
+ | Status code | Description | Response headers |
580
+ |-------------|-------------|------------------|
581
+ | **200** | Successful Response | - |
582
+ | **422** | Validation Error | - |
583
+
584
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
585
+
586
+
497
587
  ## updateFolder
498
588
 
499
589
  > FolderResponse updateFolder(folderId, updateFolderRequest, authorization, ksUat)
@@ -0,0 +1,51 @@
1
+
2
+ # PathPartAncestorItem
3
+
4
+ Single ancestor item in an ancestry chain.
5
+
6
+ ## Properties
7
+
8
+ Name | Type
9
+ ------------ | -------------
10
+ `pathPartId` | string
11
+ `name` | string
12
+ `partType` | [PartType](PartType.md)
13
+ `parentPathId` | string
14
+ `metadataObjId` | string
15
+ `materializedPath` | string
16
+ `systemManaged` | boolean
17
+ `createdAt` | Date
18
+ `updatedAt` | Date
19
+
20
+ ## Example
21
+
22
+ ```typescript
23
+ import type { PathPartAncestorItem } from '@knowledge-stack/ksapi'
24
+
25
+ // TODO: Update the object below with actual values
26
+ const example = {
27
+ "pathPartId": null,
28
+ "name": null,
29
+ "partType": null,
30
+ "parentPathId": null,
31
+ "metadataObjId": null,
32
+ "materializedPath": null,
33
+ "systemManaged": null,
34
+ "createdAt": null,
35
+ "updatedAt": null,
36
+ } satisfies PathPartAncestorItem
37
+
38
+ console.log(example)
39
+
40
+ // Convert the instance to a JSON string
41
+ const exampleJSON: string = JSON.stringify(example)
42
+ console.log(exampleJSON)
43
+
44
+ // Parse the JSON string back to an object
45
+ const exampleParsed = JSON.parse(exampleJSON) as PathPartAncestorItem
46
+ console.log(exampleParsed)
47
+ ```
48
+
49
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
50
+
51
+
@@ -7,6 +7,7 @@ All URIs are relative to *http://localhost:8000*
7
7
  | [**bulkAddPathPartTags**](PathPartsApi.md#bulkaddpathparttags) | **POST** /v1/path-parts/{path_part_id}/tags | Bulk Add Path Part Tags Handler |
8
8
  | [**bulkRemovePathPartTags**](PathPartsApi.md#bulkremovepathparttags) | **DELETE** /v1/path-parts/{path_part_id}/tags | Bulk Remove Path Part Tags Handler |
9
9
  | [**getPathPart**](PathPartsApi.md#getpathpart) | **GET** /v1/path-parts/{path_part_id} | Get Path Part Handler |
10
+ | [**getPathPartAncestry**](PathPartsApi.md#getpathpartancestry) | **GET** /v1/path-parts/{path_part_id}/ancestry | Get Path Part Ancestry Handler |
10
11
  | [**getPathPartSubtreeChunks**](PathPartsApi.md#getpathpartsubtreechunks) | **GET** /v1/path-parts/{path_part_id}/subtree_chunks | Get Path Part Subtree Chunks Handler |
11
12
  | [**getPathPartTags**](PathPartsApi.md#getpathparttags) | **GET** /v1/path-parts/{path_part_id}/tags | Get Path Part Tags Handler |
12
13
  | [**listPathParts**](PathPartsApi.md#listpathparts) | **GET** /v1/path-parts | List Path Parts Handler |
@@ -241,6 +242,80 @@ No authorization required
241
242
  [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
242
243
 
243
244
 
245
+ ## getPathPartAncestry
246
+
247
+ > AncestryResponse getPathPartAncestry(pathPartId, authorization, ksUat)
248
+
249
+ Get Path Part Ancestry Handler
250
+
251
+ Get the full ancestry chain for a path part (root to leaf, inclusive). Returns all ancestors from the root down to and including the target path part. Authorization is checked on the leaf — if the user can read the leaf, they can navigate its ancestors.
252
+
253
+ ### Example
254
+
255
+ ```ts
256
+ import {
257
+ Configuration,
258
+ PathPartsApi,
259
+ } from '@knowledge-stack/ksapi';
260
+ import type { GetPathPartAncestryRequest } from '@knowledge-stack/ksapi';
261
+
262
+ async function example() {
263
+ console.log("🚀 Testing @knowledge-stack/ksapi SDK...");
264
+ const api = new PathPartsApi();
265
+
266
+ const body = {
267
+ // string
268
+ pathPartId: 38400000-8cf0-11bd-b23e-10b96e4ef00d,
269
+ // string (optional)
270
+ authorization: authorization_example,
271
+ // string (optional)
272
+ ksUat: ksUat_example,
273
+ } satisfies GetPathPartAncestryRequest;
274
+
275
+ try {
276
+ const data = await api.getPathPartAncestry(body);
277
+ console.log(data);
278
+ } catch (error) {
279
+ console.error(error);
280
+ }
281
+ }
282
+
283
+ // Run the test
284
+ example().catch(console.error);
285
+ ```
286
+
287
+ ### Parameters
288
+
289
+
290
+ | Name | Type | Description | Notes |
291
+ |------------- | ------------- | ------------- | -------------|
292
+ | **pathPartId** | `string` | | [Defaults to `undefined`] |
293
+ | **authorization** | `string` | | [Optional] [Defaults to `undefined`] |
294
+ | **ksUat** | `string` | | [Optional] [Defaults to `undefined`] |
295
+
296
+ ### Return type
297
+
298
+ [**AncestryResponse**](AncestryResponse.md)
299
+
300
+ ### Authorization
301
+
302
+ No authorization required
303
+
304
+ ### HTTP request headers
305
+
306
+ - **Content-Type**: Not defined
307
+ - **Accept**: `application/json`
308
+
309
+
310
+ ### HTTP response details
311
+ | Status code | Description | Response headers |
312
+ |-------------|-------------|------------------|
313
+ | **200** | Successful Response | - |
314
+ | **422** | Validation Error | - |
315
+
316
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
317
+
318
+
244
319
  ## getPathPartSubtreeChunks
245
320
 
246
321
  > SubtreeChunksResponse getPathPartSubtreeChunks(pathPartId, authorization, ksUat)
@@ -0,0 +1,33 @@
1
+
2
+ # SearchSortOrder
3
+
4
+ Sort order options for search results.
5
+
6
+ ## Properties
7
+
8
+ Name | Type
9
+ ------------ | -------------
10
+
11
+ ## Example
12
+
13
+ ```typescript
14
+ import type { SearchSortOrder } from '@knowledge-stack/ksapi'
15
+
16
+ // TODO: Update the object below with actual values
17
+ const example = {
18
+ } satisfies SearchSortOrder
19
+
20
+ console.log(example)
21
+
22
+ // Convert the instance to a JSON string
23
+ const exampleJSON: string = JSON.stringify(example)
24
+ console.log(exampleJSON)
25
+
26
+ // Parse the JSON string back to an object
27
+ const exampleParsed = JSON.parse(exampleJSON) as SearchSortOrder
28
+ console.log(exampleParsed)
29
+ ```
30
+
31
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
32
+
33
+
@@ -0,0 +1,33 @@
1
+
2
+ # SearchablePartType
3
+
4
+ Part types that can be searched.
5
+
6
+ ## Properties
7
+
8
+ Name | Type
9
+ ------------ | -------------
10
+
11
+ ## Example
12
+
13
+ ```typescript
14
+ import type { SearchablePartType } from '@knowledge-stack/ksapi'
15
+
16
+ // TODO: Update the object below with actual values
17
+ const example = {
18
+ } satisfies SearchablePartType
19
+
20
+ console.log(example)
21
+
22
+ // Convert the instance to a JSON string
23
+ const exampleJSON: string = JSON.stringify(example)
24
+ console.log(exampleJSON)
25
+
26
+ // Parse the JSON string back to an object
27
+ const exampleParsed = JSON.parse(exampleJSON) as SearchablePartType
28
+ console.log(exampleParsed)
29
+ ```
30
+
31
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
32
+
33
+
@@ -7,6 +7,7 @@ All URIs are relative to *http://localhost:8000*
7
7
  | [**createSection**](SectionsApi.md#createsectionoperation) | **POST** /v1/sections | Create Section Handler |
8
8
  | [**deleteSection**](SectionsApi.md#deletesection) | **DELETE** /v1/sections/{section_id} | Delete Section Handler |
9
9
  | [**getSection**](SectionsApi.md#getsection) | **GET** /v1/sections/{section_id} | Get Section Handler |
10
+ | [**getSectionsBulk**](SectionsApi.md#getsectionsbulk) | **GET** /v1/sections/bulk | Get Sections Bulk Handler |
10
11
  | [**updateSection**](SectionsApi.md#updatesectionoperation) | **PATCH** /v1/sections/{section_id} | Update Section Handler |
11
12
 
12
13
 
@@ -233,6 +234,80 @@ No authorization required
233
234
  [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
234
235
 
235
236
 
237
+ ## getSectionsBulk
238
+
239
+ > Array<SectionResponse> getSectionsBulk(sectionIds, authorization, ksUat)
240
+
241
+ Get Sections Bulk Handler
242
+
243
+ Batch-fetch sections by ID. Returns sections with system_metadata. Non-existent IDs are silently skipped. Limited to 200 IDs per call.
244
+
245
+ ### Example
246
+
247
+ ```ts
248
+ import {
249
+ Configuration,
250
+ SectionsApi,
251
+ } from '@knowledge-stack/ksapi';
252
+ import type { GetSectionsBulkRequest } from '@knowledge-stack/ksapi';
253
+
254
+ async function example() {
255
+ console.log("🚀 Testing @knowledge-stack/ksapi SDK...");
256
+ const api = new SectionsApi();
257
+
258
+ const body = {
259
+ // Array<string> | Section IDs to fetch (max 200) (optional)
260
+ sectionIds: ...,
261
+ // string (optional)
262
+ authorization: authorization_example,
263
+ // string (optional)
264
+ ksUat: ksUat_example,
265
+ } satisfies GetSectionsBulkRequest;
266
+
267
+ try {
268
+ const data = await api.getSectionsBulk(body);
269
+ console.log(data);
270
+ } catch (error) {
271
+ console.error(error);
272
+ }
273
+ }
274
+
275
+ // Run the test
276
+ example().catch(console.error);
277
+ ```
278
+
279
+ ### Parameters
280
+
281
+
282
+ | Name | Type | Description | Notes |
283
+ |------------- | ------------- | ------------- | -------------|
284
+ | **sectionIds** | `Array<string>` | Section IDs to fetch (max 200) | [Optional] |
285
+ | **authorization** | `string` | | [Optional] [Defaults to `undefined`] |
286
+ | **ksUat** | `string` | | [Optional] [Defaults to `undefined`] |
287
+
288
+ ### Return type
289
+
290
+ [**Array&lt;SectionResponse&gt;**](SectionResponse.md)
291
+
292
+ ### Authorization
293
+
294
+ No authorization required
295
+
296
+ ### HTTP request headers
297
+
298
+ - **Content-Type**: Not defined
299
+ - **Accept**: `application/json`
300
+
301
+
302
+ ### HTTP response details
303
+ | Status code | Description | Response headers |
304
+ |-------------|-------------|------------------|
305
+ | **200** | Successful Response | - |
306
+ | **422** | Validation Error | - |
307
+
308
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
309
+
310
+
236
311
  ## updateSection
237
312
 
238
313
  > SectionResponse updateSection(sectionId, updateSectionRequest, authorization, ksUat)
@@ -97,7 +97,7 @@ No authorization required
97
97
 
98
98
  Delete Tenant
99
99
 
100
- Delete a tenant. Requires OWNER role in the tenant. Deletes the tenant\&#39;s S3 bucket after the DB transaction commits.
100
+ Delete a tenant. Requires OWNER role in the tenant. Deletes the tenant\&#39;s LiteLLM team/keys and S3 bucket after the DB transaction commits.
101
101
 
102
102
  ### Example
103
103
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@knowledge-stack/ksapi",
3
- "version": "1.58.0",
3
+ "version": "1.59.1",
4
4
  "description": "OpenAPI client for @knowledge-stack/ksapi",
5
5
  "author": "OpenAPI-Generator",
6
6
  "repository": {