@unofficialbox/box-open-sdk 0.4.4 → 0.6.0
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.
- package/README.md +13 -0
- package/dist/cjs/buildinfo.js +2 -2
- package/dist/cjs/client.js +10 -3
- package/dist/cjs/errors.js +47 -0
- package/dist/cjs/managers/chunked_uploads.js +13 -0
- package/dist/cjs/managers/document_split.js +100 -0
- package/dist/cjs/managers/index.js +2 -0
- package/dist/cjs/managers/shuttle.js +679 -0
- package/dist/cjs/models/schemas/ai.js +1 -1
- package/dist/cjs/models/schemas/ai_studio.js +1 -1
- package/dist/cjs/models/schemas/app_item_associations.js +1 -1
- package/dist/cjs/models/schemas/archives.js +1 -1
- package/dist/cjs/models/schemas/authorization.js +1 -1
- package/dist/cjs/models/schemas/automate_workflows.js +1 -1
- package/dist/cjs/models/schemas/avatars.js +1 -1
- package/dist/cjs/models/schemas/chunked_uploads.js +1 -1
- package/dist/cjs/models/schemas/classifications.js +1 -1
- package/dist/cjs/models/schemas/collaboration_allowlist_entries.js +1 -1
- package/dist/cjs/models/schemas/collaboration_allowlist_exempt_targets.js +1 -1
- package/dist/cjs/models/schemas/collections.js +1 -1
- package/dist/cjs/models/schemas/comments.js +1 -1
- package/dist/cjs/models/schemas/device_pinners.js +1 -1
- package/dist/cjs/models/schemas/docgen.js +1 -1
- package/dist/cjs/models/schemas/docgen_template.js +1 -1
- package/dist/cjs/models/schemas/document_split.js +3 -0
- package/dist/cjs/models/schemas/email_aliases.js +1 -1
- package/dist/cjs/models/schemas/enterprise_configurations.js +1 -1
- package/dist/cjs/models/schemas/events.js +1 -1
- package/dist/cjs/models/schemas/external_users.js +1 -1
- package/dist/cjs/models/schemas/file_requests.js +1 -1
- package/dist/cjs/models/schemas/file_version_legal_holds.js +1 -1
- package/dist/cjs/models/schemas/file_version_retentions.js +1 -1
- package/dist/cjs/models/schemas/file_versions.js +1 -1
- package/dist/cjs/models/schemas/files.js +1 -1
- package/dist/cjs/models/schemas/folder_locks.js +1 -1
- package/dist/cjs/models/schemas/folders.js +1 -1
- package/dist/cjs/models/schemas/groups.js +1 -1
- package/dist/cjs/models/schemas/hub_collaborations.js +1 -1
- package/dist/cjs/models/schemas/hub_document.js +1 -1
- package/dist/cjs/models/schemas/hub_items.js +1 -1
- package/dist/cjs/models/schemas/hubs.js +1 -1
- package/dist/cjs/models/schemas/integration_mappings.js +1 -1
- package/dist/cjs/models/schemas/invites.js +1 -1
- package/dist/cjs/models/schemas/legal_hold_policies.js +1 -1
- package/dist/cjs/models/schemas/legal_hold_policy_assignments.js +1 -1
- package/dist/cjs/models/schemas/list_collaborations.js +1 -1
- package/dist/cjs/models/schemas/memberships.js +1 -1
- package/dist/cjs/models/schemas/metadata_cascade_policies.js +1 -1
- package/dist/cjs/models/schemas/metadata_taxonomies.js +1 -1
- package/dist/cjs/models/schemas/metadata_templates.js +1 -1
- package/dist/cjs/models/schemas/notes.js +1 -1
- package/dist/cjs/models/schemas/query.js +1 -1
- package/dist/cjs/models/schemas/recent_items.js +1 -1
- package/dist/cjs/models/schemas/retention_policies.js +1 -1
- package/dist/cjs/models/schemas/retention_policy_assignments.js +1 -1
- package/dist/cjs/models/schemas/search.js +1 -1
- package/dist/cjs/models/schemas/session_termination.js +1 -1
- package/dist/cjs/models/schemas/shared_links_folders.js +1 -1
- package/dist/cjs/models/schemas/shield_information_barrier_reports.js +1 -1
- package/dist/cjs/models/schemas/shield_information_barrier_segment_members.js +1 -1
- package/dist/cjs/models/schemas/shield_information_barrier_segment_restrictions.js +1 -1
- package/dist/cjs/models/schemas/shield_information_barrier_segments.js +1 -1
- package/dist/cjs/models/schemas/shield_information_barriers.js +1 -1
- package/dist/cjs/models/schemas/shield_lists.js +1 -1
- package/dist/cjs/models/schemas/shuttle.js +3 -0
- package/dist/cjs/models/schemas/sign_requests.js +1 -1
- package/dist/cjs/models/schemas/sign_templates.js +1 -1
- package/dist/cjs/models/schemas/skills.js +1 -1
- package/dist/cjs/models/schemas/storage_policies.js +1 -1
- package/dist/cjs/models/schemas/storage_policy_assignments.js +1 -1
- package/dist/cjs/models/schemas/task_assignments.js +1 -1
- package/dist/cjs/models/schemas/tasks.js +1 -1
- package/dist/cjs/models/schemas/terms_of_service_user_statuses.js +1 -1
- package/dist/cjs/models/schemas/terms_of_services.js +1 -1
- package/dist/cjs/models/schemas/transfer.js +1 -1
- package/dist/cjs/models/schemas/trashed_files.js +1 -1
- package/dist/cjs/models/schemas/trashed_folders.js +1 -1
- package/dist/cjs/models/schemas/trashed_items.js +1 -1
- package/dist/cjs/models/schemas/trashed_web_links.js +1 -1
- package/dist/cjs/models/schemas/uploads.js +1 -1
- package/dist/cjs/models/schemas/user_collaborations.js +1 -1
- package/dist/cjs/models/schemas/users.js +1 -1
- package/dist/cjs/models/schemas/web_links.js +1 -1
- package/dist/cjs/models/schemas/webhooks.js +1 -1
- package/dist/cjs/models/schemas/workflows.js +1 -1
- package/dist/cjs/models/schemas/zip_downloads.js +1 -1
- package/dist/cjs/models/schemas.js +3 -1
- package/dist/cjs/runtime.js +3 -0
- package/dist/esm/buildinfo.js +2 -2
- package/dist/esm/client.js +10 -3
- package/dist/esm/errors.js +46 -0
- package/dist/esm/managers/chunked_uploads.js +13 -0
- package/dist/esm/managers/document_split.js +63 -0
- package/dist/esm/managers/index.js +2 -0
- package/dist/esm/managers/shuttle.js +642 -0
- package/dist/esm/models/schemas/ai.js +1 -1
- package/dist/esm/models/schemas/ai_studio.js +1 -1
- package/dist/esm/models/schemas/app_item_associations.js +1 -1
- package/dist/esm/models/schemas/archives.js +1 -1
- package/dist/esm/models/schemas/authorization.js +1 -1
- package/dist/esm/models/schemas/automate_workflows.js +1 -1
- package/dist/esm/models/schemas/avatars.js +1 -1
- package/dist/esm/models/schemas/chunked_uploads.js +1 -1
- package/dist/esm/models/schemas/classifications.js +1 -1
- package/dist/esm/models/schemas/collaboration_allowlist_entries.js +1 -1
- package/dist/esm/models/schemas/collaboration_allowlist_exempt_targets.js +1 -1
- package/dist/esm/models/schemas/collections.js +1 -1
- package/dist/esm/models/schemas/comments.js +1 -1
- package/dist/esm/models/schemas/device_pinners.js +1 -1
- package/dist/esm/models/schemas/docgen.js +1 -1
- package/dist/esm/models/schemas/docgen_template.js +1 -1
- package/dist/esm/models/schemas/document_split.js +2 -0
- package/dist/esm/models/schemas/email_aliases.js +1 -1
- package/dist/esm/models/schemas/enterprise_configurations.js +1 -1
- package/dist/esm/models/schemas/events.js +1 -1
- package/dist/esm/models/schemas/external_users.js +1 -1
- package/dist/esm/models/schemas/file_requests.js +1 -1
- package/dist/esm/models/schemas/file_version_legal_holds.js +1 -1
- package/dist/esm/models/schemas/file_version_retentions.js +1 -1
- package/dist/esm/models/schemas/file_versions.js +1 -1
- package/dist/esm/models/schemas/files.js +1 -1
- package/dist/esm/models/schemas/folder_locks.js +1 -1
- package/dist/esm/models/schemas/folders.js +1 -1
- package/dist/esm/models/schemas/groups.js +1 -1
- package/dist/esm/models/schemas/hub_collaborations.js +1 -1
- package/dist/esm/models/schemas/hub_document.js +1 -1
- package/dist/esm/models/schemas/hub_items.js +1 -1
- package/dist/esm/models/schemas/hubs.js +1 -1
- package/dist/esm/models/schemas/integration_mappings.js +1 -1
- package/dist/esm/models/schemas/invites.js +1 -1
- package/dist/esm/models/schemas/legal_hold_policies.js +1 -1
- package/dist/esm/models/schemas/legal_hold_policy_assignments.js +1 -1
- package/dist/esm/models/schemas/list_collaborations.js +1 -1
- package/dist/esm/models/schemas/memberships.js +1 -1
- package/dist/esm/models/schemas/metadata_cascade_policies.js +1 -1
- package/dist/esm/models/schemas/metadata_taxonomies.js +1 -1
- package/dist/esm/models/schemas/metadata_templates.js +1 -1
- package/dist/esm/models/schemas/notes.js +1 -1
- package/dist/esm/models/schemas/query.js +1 -1
- package/dist/esm/models/schemas/recent_items.js +1 -1
- package/dist/esm/models/schemas/retention_policies.js +1 -1
- package/dist/esm/models/schemas/retention_policy_assignments.js +1 -1
- package/dist/esm/models/schemas/search.js +1 -1
- package/dist/esm/models/schemas/session_termination.js +1 -1
- package/dist/esm/models/schemas/shared_links_folders.js +1 -1
- package/dist/esm/models/schemas/shield_information_barrier_reports.js +1 -1
- package/dist/esm/models/schemas/shield_information_barrier_segment_members.js +1 -1
- package/dist/esm/models/schemas/shield_information_barrier_segment_restrictions.js +1 -1
- package/dist/esm/models/schemas/shield_information_barrier_segments.js +1 -1
- package/dist/esm/models/schemas/shield_information_barriers.js +1 -1
- package/dist/esm/models/schemas/shield_lists.js +1 -1
- package/dist/esm/models/schemas/shuttle.js +2 -0
- package/dist/esm/models/schemas/sign_requests.js +1 -1
- package/dist/esm/models/schemas/sign_templates.js +1 -1
- package/dist/esm/models/schemas/skills.js +1 -1
- package/dist/esm/models/schemas/storage_policies.js +1 -1
- package/dist/esm/models/schemas/storage_policy_assignments.js +1 -1
- package/dist/esm/models/schemas/task_assignments.js +1 -1
- package/dist/esm/models/schemas/tasks.js +1 -1
- package/dist/esm/models/schemas/terms_of_service_user_statuses.js +1 -1
- package/dist/esm/models/schemas/terms_of_services.js +1 -1
- package/dist/esm/models/schemas/transfer.js +1 -1
- package/dist/esm/models/schemas/trashed_files.js +1 -1
- package/dist/esm/models/schemas/trashed_folders.js +1 -1
- package/dist/esm/models/schemas/trashed_items.js +1 -1
- package/dist/esm/models/schemas/trashed_web_links.js +1 -1
- package/dist/esm/models/schemas/uploads.js +1 -1
- package/dist/esm/models/schemas/user_collaborations.js +1 -1
- package/dist/esm/models/schemas/users.js +1 -1
- package/dist/esm/models/schemas/web_links.js +1 -1
- package/dist/esm/models/schemas/webhooks.js +1 -1
- package/dist/esm/models/schemas/workflows.js +1 -1
- package/dist/esm/models/schemas/zip_downloads.js +1 -1
- package/dist/esm/models/schemas.js +3 -1
- package/dist/esm/runtime.js +4 -1
- package/dist/types/buildinfo.d.ts +1 -1
- package/dist/types/client.d.ts +8 -3
- package/dist/types/errors.d.ts +21 -0
- package/dist/types/managers/chunked_uploads.d.ts +1 -0
- package/dist/types/managers/document_split.d.ts +17 -0
- package/dist/types/managers/index.d.ts +2 -0
- package/dist/types/managers/retention_policies.d.ts +1 -1
- package/dist/types/managers/shuttle.d.ts +119 -0
- package/dist/types/models/schemas/archives.d.ts +2 -2
- package/dist/types/models/schemas/automate_workflows.d.ts +2 -2
- package/dist/types/models/schemas/chunked_uploads.d.ts +21 -0
- package/dist/types/models/schemas/docgen.d.ts +2 -0
- package/dist/types/models/schemas/document_split.d.ts +92 -0
- package/dist/types/models/schemas/events.d.ts +51 -3
- package/dist/types/models/schemas/groups.d.ts +2 -2
- package/dist/types/models/schemas/notes.d.ts +1 -1
- package/dist/types/models/schemas/retention_policies.d.ts +3 -3
- package/dist/types/models/schemas/shared_links_folders.d.ts +2 -1
- package/dist/types/models/schemas/shield_information_barrier_reports.d.ts +2 -2
- package/dist/types/models/schemas/shuttle.d.ts +436 -0
- package/dist/types/models/schemas/skills.d.ts +2 -2
- package/dist/types/models/schemas/web_links.d.ts +2 -1
- package/dist/types/models/schemas/workflows.d.ts +2 -2
- package/dist/types/models/schemas.d.ts +51 -61
- package/docs/README.md +3 -1
- package/docs/errors.md +5 -4
- package/docs/managers/chunked_uploads.md +18 -0
- package/docs/managers/document_split.md +56 -0
- package/docs/managers/retention_policies.md +1 -1
- package/docs/managers/shuttle.md +687 -0
- package/package.json +1 -1
package/dist/esm/errors.js
CHANGED
|
@@ -8,9 +8,55 @@
|
|
|
8
8
|
export class BoxApiError extends Error {
|
|
9
9
|
/** The HTTP status, when the error carries a response. */
|
|
10
10
|
status;
|
|
11
|
+
/** Box's error `code` (e.g. `not_found`), when the body was a Box error. */
|
|
12
|
+
code;
|
|
13
|
+
/** Box's error `message`, when the body was a Box error. */
|
|
14
|
+
boxMessage;
|
|
15
|
+
/** Box's `request_id`, when the body was a Box error. */
|
|
16
|
+
requestId;
|
|
17
|
+
/** The raw response body of a non-2xx response. */
|
|
18
|
+
body;
|
|
11
19
|
constructor(message, options = {}) {
|
|
12
20
|
super(message, options.cause !== undefined ? { cause: options.cause } : undefined);
|
|
13
21
|
this.name = 'BoxApiError';
|
|
14
22
|
this.status = options.status;
|
|
23
|
+
this.code = options.code;
|
|
24
|
+
this.boxMessage = options.boxMessage;
|
|
25
|
+
this.requestId = options.requestId;
|
|
26
|
+
this.body = options.body;
|
|
15
27
|
}
|
|
16
28
|
}
|
|
29
|
+
/** The error for a non-2xx response: `Client.fetch` throws it once the retry
|
|
30
|
+
* budget and the single 401 refresh are spent, so a caller never mistakes an
|
|
31
|
+
* error body for a result. Box's error fields are read from the body when it
|
|
32
|
+
* is a Box error object; the raw body is kept either way. */
|
|
33
|
+
export function apiErrorFromResponse(status, body) {
|
|
34
|
+
let payload;
|
|
35
|
+
try {
|
|
36
|
+
payload = JSON.parse(new TextDecoder().decode(body));
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
payload = undefined;
|
|
40
|
+
}
|
|
41
|
+
const field = (key) => {
|
|
42
|
+
if (typeof payload !== 'object' || payload === null) {
|
|
43
|
+
return undefined;
|
|
44
|
+
}
|
|
45
|
+
const value = payload[key];
|
|
46
|
+
return typeof value === 'string' ? value : undefined;
|
|
47
|
+
};
|
|
48
|
+
const code = field('code');
|
|
49
|
+
const boxMessage = field('message');
|
|
50
|
+
const requestId = field('request_id');
|
|
51
|
+
let message = `box: status ${status}`;
|
|
52
|
+
if (code !== undefined) {
|
|
53
|
+
message += ` ${code}`;
|
|
54
|
+
}
|
|
55
|
+
if (boxMessage !== undefined) {
|
|
56
|
+
message += `: ${boxMessage}`;
|
|
57
|
+
}
|
|
58
|
+
if (requestId !== undefined) {
|
|
59
|
+
message += ` (request_id ${requestId})`;
|
|
60
|
+
}
|
|
61
|
+
return new BoxApiError(message, { status, code, boxMessage, requestId, body });
|
|
62
|
+
}
|
|
@@ -95,6 +95,19 @@ export class ChunkedUploadsManager {
|
|
|
95
95
|
const data = runtime.responseBytes(resp);
|
|
96
96
|
return JSON.parse(new TextDecoder().decode(data));
|
|
97
97
|
}
|
|
98
|
+
async createFileUploadSessionPlan(uploadSessionId, body) {
|
|
99
|
+
let url = this.session.baseUrl("upload_session");
|
|
100
|
+
url += "/files";
|
|
101
|
+
url += "/upload_sessions";
|
|
102
|
+
url += '/' + pathEscape(uploadSessionId);
|
|
103
|
+
url += "/plan";
|
|
104
|
+
let req = this.session.newRequest("POST", url);
|
|
105
|
+
const payload = new TextEncoder().encode(JSON.stringify(body));
|
|
106
|
+
req = runtime.withJsonBody(req, payload);
|
|
107
|
+
const resp = await this.session.fetch(req);
|
|
108
|
+
const data = runtime.responseBytes(resp);
|
|
109
|
+
return JSON.parse(new TextDecoder().decode(data));
|
|
110
|
+
}
|
|
98
111
|
async commitFileUploadSession(uploadSessionId, digest, body, opts) {
|
|
99
112
|
let url = this.session.baseUrl("upload_session");
|
|
100
113
|
url += "/files";
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
// Code generated by box-gantry. DO NOT EDIT.
|
|
2
|
+
import * as runtime from '../runtime.js';
|
|
3
|
+
import { pathEscape } from '../internal.js';
|
|
4
|
+
/** Operations for the "document_split" API area. */
|
|
5
|
+
export class DocumentSplitManager {
|
|
6
|
+
session;
|
|
7
|
+
constructor(session) {
|
|
8
|
+
this.session = session;
|
|
9
|
+
}
|
|
10
|
+
/** Iterate every `models.schemas.DocumentSplit` across pages, threading the marker cursor. */
|
|
11
|
+
async *listDocumentSplits(opts) {
|
|
12
|
+
const options = { ...opts };
|
|
13
|
+
for (;;) {
|
|
14
|
+
const page = await this.listDocumentSplitsPage(options);
|
|
15
|
+
const items = page.entries ?? [];
|
|
16
|
+
for (const item of items) {
|
|
17
|
+
yield item;
|
|
18
|
+
}
|
|
19
|
+
const cursor = page.next_marker;
|
|
20
|
+
if (cursor === undefined || cursor === null || cursor === '') {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
options.marker = cursor;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
async listDocumentSplitsPage(opts) {
|
|
27
|
+
let url = this.session.baseUrl("api");
|
|
28
|
+
url += "/document_splits";
|
|
29
|
+
let req = this.session.newRequest("GET", url);
|
|
30
|
+
const options = opts ?? {};
|
|
31
|
+
if (options.marker !== undefined) {
|
|
32
|
+
req = runtime.withQuery(req, "marker", options.marker);
|
|
33
|
+
}
|
|
34
|
+
if (options.limit !== undefined) {
|
|
35
|
+
req = runtime.withQuery(req, "limit", String(options.limit));
|
|
36
|
+
}
|
|
37
|
+
req = runtime.withHeader(req, "box-version", "2026.0");
|
|
38
|
+
const resp = await this.session.fetch(req);
|
|
39
|
+
const data = runtime.responseBytes(resp);
|
|
40
|
+
return JSON.parse(new TextDecoder().decode(data));
|
|
41
|
+
}
|
|
42
|
+
async createDocumentSplits(body) {
|
|
43
|
+
let url = this.session.baseUrl("api");
|
|
44
|
+
url += "/document_splits";
|
|
45
|
+
let req = this.session.newRequest("POST", url);
|
|
46
|
+
req = runtime.withHeader(req, "box-version", "2026.0");
|
|
47
|
+
const payload = new TextEncoder().encode(JSON.stringify(body));
|
|
48
|
+
req = runtime.withJsonBody(req, payload);
|
|
49
|
+
const resp = await this.session.fetch(req);
|
|
50
|
+
const data = runtime.responseBytes(resp);
|
|
51
|
+
return JSON.parse(new TextDecoder().decode(data));
|
|
52
|
+
}
|
|
53
|
+
async getDocumentSplit(documentSplitId) {
|
|
54
|
+
let url = this.session.baseUrl("api");
|
|
55
|
+
url += "/document_splits";
|
|
56
|
+
url += '/' + pathEscape(documentSplitId);
|
|
57
|
+
let req = this.session.newRequest("GET", url);
|
|
58
|
+
req = runtime.withHeader(req, "box-version", "2026.0");
|
|
59
|
+
const resp = await this.session.fetch(req);
|
|
60
|
+
const data = runtime.responseBytes(resp);
|
|
61
|
+
return JSON.parse(new TextDecoder().decode(data));
|
|
62
|
+
}
|
|
63
|
+
}
|
|
@@ -15,6 +15,7 @@ export * from './comments.js';
|
|
|
15
15
|
export * from './device_pinners.js';
|
|
16
16
|
export * from './docgen.js';
|
|
17
17
|
export * from './docgen_template.js';
|
|
18
|
+
export * from './document_split.js';
|
|
18
19
|
export * from './downloads.js';
|
|
19
20
|
export * from './email_aliases.js';
|
|
20
21
|
export * from './enterprise_configurations.js';
|
|
@@ -64,6 +65,7 @@ export * from './shield_information_barrier_segment_restrictions.js';
|
|
|
64
65
|
export * from './shield_information_barrier_segments.js';
|
|
65
66
|
export * from './shield_information_barriers.js';
|
|
66
67
|
export * from './shield_lists.js';
|
|
68
|
+
export * from './shuttle.js';
|
|
67
69
|
export * from './sign_requests.js';
|
|
68
70
|
export * from './sign_templates.js';
|
|
69
71
|
export * from './skills.js';
|