@boatdev/sdk 1.3.0 → 1.5.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/.openapi-generator/FILES +2 -0
- package/dist/apis/BoatApi.d.ts +24 -2
- package/dist/apis/BoatApi.js +53 -2
- package/dist/esm/apis/BoatApi.d.ts +24 -2
- package/dist/esm/apis/BoatApi.js +53 -2
- package/dist/esm/models/CreateSandboxRequest.d.ts +1 -1
- package/dist/esm/models/ForkRequest.d.ts +6 -0
- package/dist/esm/models/ForkRequest.js +2 -0
- package/dist/esm/models/PromptRequest.d.ts +6 -0
- package/dist/esm/models/PromptRequest.js +2 -0
- package/dist/esm/models/PromptResponse.d.ts +6 -0
- package/dist/esm/models/PromptResponse.js +2 -0
- package/dist/esm/models/PromptRun.d.ts +6 -0
- package/dist/esm/models/PromptRun.js +2 -0
- package/dist/esm/models/ResumeRequest.d.ts +6 -0
- package/dist/esm/models/ResumeRequest.js +2 -0
- package/dist/esm/models/Sandbox.d.ts +65 -0
- package/dist/esm/models/Sandbox.js +31 -0
- package/dist/esm/models/Share200Response.d.ts +45 -0
- package/dist/esm/models/Share200Response.js +46 -0
- package/dist/esm/models/WebhookEventData.d.ts +10 -4
- package/dist/esm/models/WebhookEventData.js +4 -6
- package/dist/esm/models/WebhookEventType.d.ts +2 -0
- package/dist/esm/models/WebhookEventType.js +3 -1
- package/dist/esm/models/index.d.ts +1 -0
- package/dist/esm/models/index.js +1 -0
- package/dist/models/CreateSandboxRequest.d.ts +1 -1
- package/dist/models/ForkRequest.d.ts +6 -0
- package/dist/models/ForkRequest.js +2 -0
- package/dist/models/PromptRequest.d.ts +6 -0
- package/dist/models/PromptRequest.js +2 -0
- package/dist/models/PromptResponse.d.ts +6 -0
- package/dist/models/PromptResponse.js +2 -0
- package/dist/models/PromptRun.d.ts +6 -0
- package/dist/models/PromptRun.js +2 -0
- package/dist/models/ResumeRequest.d.ts +6 -0
- package/dist/models/ResumeRequest.js +2 -0
- package/dist/models/Sandbox.d.ts +65 -0
- package/dist/models/Sandbox.js +32 -1
- package/dist/models/Share200Response.d.ts +45 -0
- package/dist/models/Share200Response.js +53 -0
- package/dist/models/WebhookEventData.d.ts +10 -4
- package/dist/models/WebhookEventData.js +4 -6
- package/dist/models/WebhookEventType.d.ts +2 -0
- package/dist/models/WebhookEventType.js +3 -1
- package/dist/models/index.d.ts +1 -0
- package/dist/models/index.js +1 -0
- package/docs/BoatApi.md +89 -3
- package/docs/ForkRequest.md +2 -0
- package/docs/PromptRequest.md +2 -0
- package/docs/PromptResponse.md +2 -0
- package/docs/PromptRun.md +2 -0
- package/docs/ResumeRequest.md +2 -0
- package/docs/Sandbox.md +16 -0
- package/docs/Share200Response.md +36 -0
- package/docs/WebhookEventData.md +2 -0
- package/package.json +1 -1
- package/src/apis/BoatApi.ts +78 -2
- package/src/models/CreateSandboxRequest.ts +1 -1
- package/src/models/ForkRequest.ts +8 -0
- package/src/models/PromptRequest.ts +8 -0
- package/src/models/PromptResponse.ts +8 -0
- package/src/models/PromptRun.ts +8 -0
- package/src/models/ResumeRequest.ts +8 -0
- package/src/models/Sandbox.ts +83 -0
- package/src/models/Share200Response.ts +89 -0
- package/src/models/WebhookEventData.ts +14 -8
- package/src/models/WebhookEventType.ts +3 -1
- package/src/models/index.ts +1 -0
package/.openapi-generator/FILES
CHANGED
|
@@ -104,6 +104,7 @@ docs/SecretsUpdateRequest.md
|
|
|
104
104
|
docs/SelectedRepository.md
|
|
105
105
|
docs/SetEnvironmentSecretFileRequest.md
|
|
106
106
|
docs/SetEnvironmentVarRequest.md
|
|
107
|
+
docs/Share200Response.md
|
|
107
108
|
docs/SnapshotChunk.md
|
|
108
109
|
docs/SnapshotDownloadResponse.md
|
|
109
110
|
docs/SnapshotDownloadResponseAllOfInventory.md
|
|
@@ -243,6 +244,7 @@ src/models/SecretsUpdateRequest.ts
|
|
|
243
244
|
src/models/SelectedRepository.ts
|
|
244
245
|
src/models/SetEnvironmentSecretFileRequest.ts
|
|
245
246
|
src/models/SetEnvironmentVarRequest.ts
|
|
247
|
+
src/models/Share200Response.ts
|
|
246
248
|
src/models/SnapshotChunk.ts
|
|
247
249
|
src/models/SnapshotDownloadResponse.ts
|
|
248
250
|
src/models/SnapshotDownloadResponseAllOfInventory.ts
|
package/dist/apis/BoatApi.d.ts
CHANGED
|
@@ -64,6 +64,7 @@ import { type SecretsResponse } from '../models/SecretsResponse';
|
|
|
64
64
|
import { type SecretsUpdateRequest } from '../models/SecretsUpdateRequest';
|
|
65
65
|
import { type SetEnvironmentSecretFileRequest } from '../models/SetEnvironmentSecretFileRequest';
|
|
66
66
|
import { type SetEnvironmentVarRequest } from '../models/SetEnvironmentVarRequest';
|
|
67
|
+
import { type Share200Response } from '../models/Share200Response';
|
|
67
68
|
import { type SnapshotDownloadResponse } from '../models/SnapshotDownloadResponse';
|
|
68
69
|
import { type SnapshotLatestResponse } from '../models/SnapshotLatestResponse';
|
|
69
70
|
import { type SnapshotListResponse } from '../models/SnapshotListResponse';
|
|
@@ -257,6 +258,8 @@ export interface RotateWebhookSigningSecretRequest {
|
|
|
257
258
|
webhookId: string;
|
|
258
259
|
}
|
|
259
260
|
export interface SandboxesRequest {
|
|
261
|
+
org?: string;
|
|
262
|
+
xBoatOrg?: string;
|
|
260
263
|
limit?: number;
|
|
261
264
|
cursor?: string | null;
|
|
262
265
|
sort?: SandboxesSortEnum;
|
|
@@ -280,6 +283,9 @@ export interface SetEnvironmentVarOperationRequest {
|
|
|
280
283
|
key: string;
|
|
281
284
|
setEnvironmentVarRequest: SetEnvironmentVarRequest;
|
|
282
285
|
}
|
|
286
|
+
export interface ShareRequest {
|
|
287
|
+
sandboxId: string;
|
|
288
|
+
}
|
|
283
289
|
export interface SshKeyOperationRequest {
|
|
284
290
|
sandboxId: string;
|
|
285
291
|
sshKeyRequest: SshKeyRequest;
|
|
@@ -387,12 +393,12 @@ export declare class BoatApi extends runtime.BaseAPI {
|
|
|
387
393
|
*/
|
|
388
394
|
commandRequestOpts(input: CommandOperationRequest | runtime.FlatBody<CommandOperationRequest, 'commandRequest'>): Promise<runtime.RequestOpts>;
|
|
389
395
|
/**
|
|
390
|
-
* Runs the command synchronously by default (timeout configurable via `timeoutSeconds`, 600s cap). With `detached: true` the command starts in the background and a process id is returned immediately; poll `/sandboxes/{sandboxId}/commands/{processId}` for status and logs. With `stream: true` the output arrives as the command writes it, as newline-delimited JSON (`application/x-ndjson`): `{\"type\":\"started\"}`, then `{\"type\":\"stdout\"|\"stderr\",\"data\":\"...\"}` per chunk, and last `{\"type\":\"exit\",...}` (the synchronous result without stdout/stderr) or `{\"type\":\"error\",\"error\":\"...\",\"message\":\"...\"}`. Returns 400 invalid_timeout when `timeoutSeconds` is not an integer in 1-600. A command sent while the sandbox is still starting (right after a resume) waits up to 60s for it to be ready instead of failing; 409 boat_starting (retryable) is returned only if it is still not ready by then. Command execution is never retried automatically: a 502 boat_direct_failed means the command may already be running on the sandbox.
|
|
396
|
+
* Runs the command synchronously by default (timeout configurable via `timeoutSeconds`, 600s cap). With `detached: true` the command starts in the background and a process id is returned immediately; poll `/sandboxes/{sandboxId}/commands/{processId}` for status and logs. With `stream: true` the output arrives as the command writes it, as newline-delimited JSON (`application/x-ndjson`): `{\"type\":\"started\"}`, then `{\"type\":\"stdout\"|\"stderr\",\"data\":\"...\"}` per chunk, and last `{\"type\":\"exit\",...}` (the synchronous result without stdout/stderr) or `{\"type\":\"error\",\"error\":\"...\",\"message\":\"...\"}`. Returns 400 invalid_timeout when `timeoutSeconds` is not an integer in 1-600. A command sent while the sandbox is still starting (right after a resume) waits up to 60s for it to be ready instead of failing; 409 boat_starting (retryable) is returned only if it is still not ready by then. A sandbox that is not starting (`error`, `stopped`) returns 409 sandbox_not_ready with `retryable: false` and its `state` at once: resume or recover it first. Command execution is never retried automatically: a 502 boat_direct_failed means the command may already be running on the sandbox.
|
|
391
397
|
* Execute a command in a sandbox
|
|
392
398
|
*/
|
|
393
399
|
commandRaw(requestParameters: CommandOperationRequest | runtime.FlatBody<CommandOperationRequest, 'commandRequest'>, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Command200Response>>;
|
|
394
400
|
/**
|
|
395
|
-
* Runs the command synchronously by default (timeout configurable via `timeoutSeconds`, 600s cap). With `detached: true` the command starts in the background and a process id is returned immediately; poll `/sandboxes/{sandboxId}/commands/{processId}` for status and logs. With `stream: true` the output arrives as the command writes it, as newline-delimited JSON (`application/x-ndjson`): `{\"type\":\"started\"}`, then `{\"type\":\"stdout\"|\"stderr\",\"data\":\"...\"}` per chunk, and last `{\"type\":\"exit\",...}` (the synchronous result without stdout/stderr) or `{\"type\":\"error\",\"error\":\"...\",\"message\":\"...\"}`. Returns 400 invalid_timeout when `timeoutSeconds` is not an integer in 1-600. A command sent while the sandbox is still starting (right after a resume) waits up to 60s for it to be ready instead of failing; 409 boat_starting (retryable) is returned only if it is still not ready by then. Command execution is never retried automatically: a 502 boat_direct_failed means the command may already be running on the sandbox.
|
|
401
|
+
* Runs the command synchronously by default (timeout configurable via `timeoutSeconds`, 600s cap). With `detached: true` the command starts in the background and a process id is returned immediately; poll `/sandboxes/{sandboxId}/commands/{processId}` for status and logs. With `stream: true` the output arrives as the command writes it, as newline-delimited JSON (`application/x-ndjson`): `{\"type\":\"started\"}`, then `{\"type\":\"stdout\"|\"stderr\",\"data\":\"...\"}` per chunk, and last `{\"type\":\"exit\",...}` (the synchronous result without stdout/stderr) or `{\"type\":\"error\",\"error\":\"...\",\"message\":\"...\"}`. Returns 400 invalid_timeout when `timeoutSeconds` is not an integer in 1-600. A command sent while the sandbox is still starting (right after a resume) waits up to 60s for it to be ready instead of failing; 409 boat_starting (retryable) is returned only if it is still not ready by then. A sandbox that is not starting (`error`, `stopped`) returns 409 sandbox_not_ready with `retryable: false` and its `state` at once: resume or recover it first. Command execution is never retried automatically: a 502 boat_direct_failed means the command may already be running on the sandbox.
|
|
396
402
|
* Execute a command in a sandbox
|
|
397
403
|
*/
|
|
398
404
|
command(requestParameters: CommandOperationRequest | runtime.FlatBody<CommandOperationRequest, 'commandRequest'>, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Command200Response>;
|
|
@@ -1023,10 +1029,12 @@ export declare class BoatApi extends runtime.BaseAPI {
|
|
|
1023
1029
|
*/
|
|
1024
1030
|
sandboxesRequestOpts(requestParameters: SandboxesRequest): Promise<runtime.RequestOpts>;
|
|
1025
1031
|
/**
|
|
1032
|
+
* Your sandboxes. In an organization\'s scope (the active wallet, `org`, or `X-Boat-Org`) the list also holds every sandbox that organization pays for, whoever created it; `createdBy` and `access` say whose it is and what you may do with it.
|
|
1026
1033
|
* List sandboxes
|
|
1027
1034
|
*/
|
|
1028
1035
|
sandboxesRaw(requestParameters: SandboxesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SandboxListResponse>>;
|
|
1029
1036
|
/**
|
|
1037
|
+
* Your sandboxes. In an organization\'s scope (the active wallet, `org`, or `X-Boat-Org`) the list also holds every sandbox that organization pays for, whoever created it; `createdBy` and `access` say whose it is and what you may do with it.
|
|
1030
1038
|
* List sandboxes
|
|
1031
1039
|
*/
|
|
1032
1040
|
sandboxes(requestParameters?: SandboxesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SandboxListResponse>;
|
|
@@ -1114,6 +1122,20 @@ export declare class BoatApi extends runtime.BaseAPI {
|
|
|
1114
1122
|
* Set one environment variable
|
|
1115
1123
|
*/
|
|
1116
1124
|
setEnvironmentVar(requestParameters: SetEnvironmentVarOperationRequest | runtime.FlatBody<SetEnvironmentVarOperationRequest, 'setEnvironmentVarRequest'>, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<EnvironmentItemChangeResponse>;
|
|
1125
|
+
/**
|
|
1126
|
+
* Creates request options for share without sending the request
|
|
1127
|
+
*/
|
|
1128
|
+
shareRequestOpts(requestParameters: ShareRequest): Promise<runtime.RequestOpts>;
|
|
1129
|
+
/**
|
|
1130
|
+
* Let every member of the organization that pays for this sandbox use it. Your personal logins (GitHub token, Claude and Codex logins, environment secrets, the sandbox\'s own CLI key) are never pushed to it again and are wiped off its disk at its next start, so a teammate never acts as you. Files you wrote stay. One-way: the sandbox stays like a `noEnv` sandbox from then on. A running sandbox stays `view` for the organization until you stop and resume it (`restartRequired`). Only the person who created the sandbox can share it, and only a sandbox billed to an organization. Sharing an already shared sandbox is a no-op.
|
|
1131
|
+
* Share sandbox with the organization
|
|
1132
|
+
*/
|
|
1133
|
+
shareRaw(requestParameters: ShareRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Share200Response>>;
|
|
1134
|
+
/**
|
|
1135
|
+
* Let every member of the organization that pays for this sandbox use it. Your personal logins (GitHub token, Claude and Codex logins, environment secrets, the sandbox\'s own CLI key) are never pushed to it again and are wiped off its disk at its next start, so a teammate never acts as you. Files you wrote stay. One-way: the sandbox stays like a `noEnv` sandbox from then on. A running sandbox stays `view` for the organization until you stop and resume it (`restartRequired`). Only the person who created the sandbox can share it, and only a sandbox billed to an organization. Sharing an already shared sandbox is a no-op.
|
|
1136
|
+
* Share sandbox with the organization
|
|
1137
|
+
*/
|
|
1138
|
+
share(requestParameters: ShareRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Share200Response>;
|
|
1117
1139
|
/**
|
|
1118
1140
|
* Creates request options for sshKey without sending the request
|
|
1119
1141
|
*/
|
package/dist/apis/BoatApi.js
CHANGED
|
@@ -102,6 +102,7 @@ const SecretsResponse_1 = require("../models/SecretsResponse");
|
|
|
102
102
|
const SecretsUpdateRequest_1 = require("../models/SecretsUpdateRequest");
|
|
103
103
|
const SetEnvironmentSecretFileRequest_1 = require("../models/SetEnvironmentSecretFileRequest");
|
|
104
104
|
const SetEnvironmentVarRequest_1 = require("../models/SetEnvironmentVarRequest");
|
|
105
|
+
const Share200Response_1 = require("../models/Share200Response");
|
|
105
106
|
const SnapshotDownloadResponse_1 = require("../models/SnapshotDownloadResponse");
|
|
106
107
|
const SnapshotLatestResponse_1 = require("../models/SnapshotLatestResponse");
|
|
107
108
|
const SnapshotListResponse_1 = require("../models/SnapshotListResponse");
|
|
@@ -331,7 +332,7 @@ class BoatApi extends runtime.BaseAPI {
|
|
|
331
332
|
};
|
|
332
333
|
}
|
|
333
334
|
/**
|
|
334
|
-
* Runs the command synchronously by default (timeout configurable via `timeoutSeconds`, 600s cap). With `detached: true` the command starts in the background and a process id is returned immediately; poll `/sandboxes/{sandboxId}/commands/{processId}` for status and logs. With `stream: true` the output arrives as the command writes it, as newline-delimited JSON (`application/x-ndjson`): `{\"type\":\"started\"}`, then `{\"type\":\"stdout\"|\"stderr\",\"data\":\"...\"}` per chunk, and last `{\"type\":\"exit\",...}` (the synchronous result without stdout/stderr) or `{\"type\":\"error\",\"error\":\"...\",\"message\":\"...\"}`. Returns 400 invalid_timeout when `timeoutSeconds` is not an integer in 1-600. A command sent while the sandbox is still starting (right after a resume) waits up to 60s for it to be ready instead of failing; 409 boat_starting (retryable) is returned only if it is still not ready by then. Command execution is never retried automatically: a 502 boat_direct_failed means the command may already be running on the sandbox.
|
|
335
|
+
* Runs the command synchronously by default (timeout configurable via `timeoutSeconds`, 600s cap). With `detached: true` the command starts in the background and a process id is returned immediately; poll `/sandboxes/{sandboxId}/commands/{processId}` for status and logs. With `stream: true` the output arrives as the command writes it, as newline-delimited JSON (`application/x-ndjson`): `{\"type\":\"started\"}`, then `{\"type\":\"stdout\"|\"stderr\",\"data\":\"...\"}` per chunk, and last `{\"type\":\"exit\",...}` (the synchronous result without stdout/stderr) or `{\"type\":\"error\",\"error\":\"...\",\"message\":\"...\"}`. Returns 400 invalid_timeout when `timeoutSeconds` is not an integer in 1-600. A command sent while the sandbox is still starting (right after a resume) waits up to 60s for it to be ready instead of failing; 409 boat_starting (retryable) is returned only if it is still not ready by then. A sandbox that is not starting (`error`, `stopped`) returns 409 sandbox_not_ready with `retryable: false` and its `state` at once: resume or recover it first. Command execution is never retried automatically: a 502 boat_direct_failed means the command may already be running on the sandbox.
|
|
335
336
|
* Execute a command in a sandbox
|
|
336
337
|
*/
|
|
337
338
|
async commandRaw(requestParameters, initOverrides) {
|
|
@@ -340,7 +341,7 @@ class BoatApi extends runtime.BaseAPI {
|
|
|
340
341
|
return new runtime.JSONApiResponse(response, (jsonValue) => (0, Command200Response_1.Command200ResponseFromJSON)(jsonValue));
|
|
341
342
|
}
|
|
342
343
|
/**
|
|
343
|
-
* Runs the command synchronously by default (timeout configurable via `timeoutSeconds`, 600s cap). With `detached: true` the command starts in the background and a process id is returned immediately; poll `/sandboxes/{sandboxId}/commands/{processId}` for status and logs. With `stream: true` the output arrives as the command writes it, as newline-delimited JSON (`application/x-ndjson`): `{\"type\":\"started\"}`, then `{\"type\":\"stdout\"|\"stderr\",\"data\":\"...\"}` per chunk, and last `{\"type\":\"exit\",...}` (the synchronous result without stdout/stderr) or `{\"type\":\"error\",\"error\":\"...\",\"message\":\"...\"}`. Returns 400 invalid_timeout when `timeoutSeconds` is not an integer in 1-600. A command sent while the sandbox is still starting (right after a resume) waits up to 60s for it to be ready instead of failing; 409 boat_starting (retryable) is returned only if it is still not ready by then. Command execution is never retried automatically: a 502 boat_direct_failed means the command may already be running on the sandbox.
|
|
344
|
+
* Runs the command synchronously by default (timeout configurable via `timeoutSeconds`, 600s cap). With `detached: true` the command starts in the background and a process id is returned immediately; poll `/sandboxes/{sandboxId}/commands/{processId}` for status and logs. With `stream: true` the output arrives as the command writes it, as newline-delimited JSON (`application/x-ndjson`): `{\"type\":\"started\"}`, then `{\"type\":\"stdout\"|\"stderr\",\"data\":\"...\"}` per chunk, and last `{\"type\":\"exit\",...}` (the synchronous result without stdout/stderr) or `{\"type\":\"error\",\"error\":\"...\",\"message\":\"...\"}`. Returns 400 invalid_timeout when `timeoutSeconds` is not an integer in 1-600. A command sent while the sandbox is still starting (right after a resume) waits up to 60s for it to be ready instead of failing; 409 boat_starting (retryable) is returned only if it is still not ready by then. A sandbox that is not starting (`error`, `stopped`) returns 409 sandbox_not_ready with `retryable: false` and its `state` at once: resume or recover it first. Command execution is never retried automatically: a 502 boat_direct_failed means the command may already be running on the sandbox.
|
|
344
345
|
* Execute a command in a sandbox
|
|
345
346
|
*/
|
|
346
347
|
async command(requestParameters, initOverrides) {
|
|
@@ -2360,6 +2361,9 @@ class BoatApi extends runtime.BaseAPI {
|
|
|
2360
2361
|
*/
|
|
2361
2362
|
async sandboxesRequestOpts(requestParameters) {
|
|
2362
2363
|
const queryParameters = {};
|
|
2364
|
+
if (requestParameters['org'] != null) {
|
|
2365
|
+
queryParameters['org'] = requestParameters['org'];
|
|
2366
|
+
}
|
|
2363
2367
|
if (requestParameters['limit'] != null) {
|
|
2364
2368
|
queryParameters['limit'] = requestParameters['limit'];
|
|
2365
2369
|
}
|
|
@@ -2373,6 +2377,9 @@ class BoatApi extends runtime.BaseAPI {
|
|
|
2373
2377
|
queryParameters['state'] = requestParameters['state'];
|
|
2374
2378
|
}
|
|
2375
2379
|
const headerParameters = {};
|
|
2380
|
+
if (requestParameters['xBoatOrg'] != null) {
|
|
2381
|
+
headerParameters['X-Boat-Org'] = String(requestParameters['xBoatOrg']);
|
|
2382
|
+
}
|
|
2376
2383
|
if (this.configuration && this.configuration.accessToken) {
|
|
2377
2384
|
const token = this.configuration.accessToken;
|
|
2378
2385
|
const tokenString = await token("BoatBearerAuth", []);
|
|
@@ -2389,6 +2396,7 @@ class BoatApi extends runtime.BaseAPI {
|
|
|
2389
2396
|
};
|
|
2390
2397
|
}
|
|
2391
2398
|
/**
|
|
2399
|
+
* Your sandboxes. In an organization\'s scope (the active wallet, `org`, or `X-Boat-Org`) the list also holds every sandbox that organization pays for, whoever created it; `createdBy` and `access` say whose it is and what you may do with it.
|
|
2392
2400
|
* List sandboxes
|
|
2393
2401
|
*/
|
|
2394
2402
|
async sandboxesRaw(requestParameters, initOverrides) {
|
|
@@ -2397,6 +2405,7 @@ class BoatApi extends runtime.BaseAPI {
|
|
|
2397
2405
|
return new runtime.JSONApiResponse(response, (jsonValue) => (0, SandboxListResponse_1.SandboxListResponseFromJSON)(jsonValue));
|
|
2398
2406
|
}
|
|
2399
2407
|
/**
|
|
2408
|
+
* Your sandboxes. In an organization\'s scope (the active wallet, `org`, or `X-Boat-Org`) the list also holds every sandbox that organization pays for, whoever created it; `createdBy` and `access` say whose it is and what you may do with it.
|
|
2400
2409
|
* List sandboxes
|
|
2401
2410
|
*/
|
|
2402
2411
|
async sandboxes(requestParameters = {}, initOverrides) {
|
|
@@ -2673,6 +2682,48 @@ class BoatApi extends runtime.BaseAPI {
|
|
|
2673
2682
|
const response = await this.setEnvironmentVarRaw(requestParameters, initOverrides);
|
|
2674
2683
|
return await response.value();
|
|
2675
2684
|
}
|
|
2685
|
+
/**
|
|
2686
|
+
* Creates request options for share without sending the request
|
|
2687
|
+
*/
|
|
2688
|
+
async shareRequestOpts(requestParameters) {
|
|
2689
|
+
if (requestParameters['sandboxId'] == null) {
|
|
2690
|
+
throw new runtime.RequiredError('sandboxId', 'Required parameter "sandboxId" was null or undefined when calling share().');
|
|
2691
|
+
}
|
|
2692
|
+
const queryParameters = {};
|
|
2693
|
+
const headerParameters = {};
|
|
2694
|
+
if (this.configuration && this.configuration.accessToken) {
|
|
2695
|
+
const token = this.configuration.accessToken;
|
|
2696
|
+
const tokenString = await token("BoatBearerAuth", []);
|
|
2697
|
+
if (tokenString) {
|
|
2698
|
+
headerParameters["Authorization"] = `Bearer ${tokenString}`;
|
|
2699
|
+
}
|
|
2700
|
+
}
|
|
2701
|
+
let urlPath = `/sandboxes/{sandboxId}/share`;
|
|
2702
|
+
urlPath = urlPath.replace('{sandboxId}', encodeURIComponent(String(requestParameters['sandboxId'])));
|
|
2703
|
+
return {
|
|
2704
|
+
path: urlPath,
|
|
2705
|
+
method: 'POST',
|
|
2706
|
+
headers: headerParameters,
|
|
2707
|
+
query: queryParameters,
|
|
2708
|
+
};
|
|
2709
|
+
}
|
|
2710
|
+
/**
|
|
2711
|
+
* Let every member of the organization that pays for this sandbox use it. Your personal logins (GitHub token, Claude and Codex logins, environment secrets, the sandbox\'s own CLI key) are never pushed to it again and are wiped off its disk at its next start, so a teammate never acts as you. Files you wrote stay. One-way: the sandbox stays like a `noEnv` sandbox from then on. A running sandbox stays `view` for the organization until you stop and resume it (`restartRequired`). Only the person who created the sandbox can share it, and only a sandbox billed to an organization. Sharing an already shared sandbox is a no-op.
|
|
2712
|
+
* Share sandbox with the organization
|
|
2713
|
+
*/
|
|
2714
|
+
async shareRaw(requestParameters, initOverrides) {
|
|
2715
|
+
const requestOptions = await this.shareRequestOpts(requestParameters);
|
|
2716
|
+
const response = await this.request(requestOptions, initOverrides);
|
|
2717
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => (0, Share200Response_1.Share200ResponseFromJSON)(jsonValue));
|
|
2718
|
+
}
|
|
2719
|
+
/**
|
|
2720
|
+
* Let every member of the organization that pays for this sandbox use it. Your personal logins (GitHub token, Claude and Codex logins, environment secrets, the sandbox\'s own CLI key) are never pushed to it again and are wiped off its disk at its next start, so a teammate never acts as you. Files you wrote stay. One-way: the sandbox stays like a `noEnv` sandbox from then on. A running sandbox stays `view` for the organization until you stop and resume it (`restartRequired`). Only the person who created the sandbox can share it, and only a sandbox billed to an organization. Sharing an already shared sandbox is a no-op.
|
|
2721
|
+
* Share sandbox with the organization
|
|
2722
|
+
*/
|
|
2723
|
+
async share(requestParameters, initOverrides) {
|
|
2724
|
+
const response = await this.shareRaw(requestParameters, initOverrides);
|
|
2725
|
+
return await response.value();
|
|
2726
|
+
}
|
|
2676
2727
|
/**
|
|
2677
2728
|
* Creates request options for sshKey without sending the request
|
|
2678
2729
|
*/
|
|
@@ -64,6 +64,7 @@ import { type SecretsResponse } from '../models/SecretsResponse';
|
|
|
64
64
|
import { type SecretsUpdateRequest } from '../models/SecretsUpdateRequest';
|
|
65
65
|
import { type SetEnvironmentSecretFileRequest } from '../models/SetEnvironmentSecretFileRequest';
|
|
66
66
|
import { type SetEnvironmentVarRequest } from '../models/SetEnvironmentVarRequest';
|
|
67
|
+
import { type Share200Response } from '../models/Share200Response';
|
|
67
68
|
import { type SnapshotDownloadResponse } from '../models/SnapshotDownloadResponse';
|
|
68
69
|
import { type SnapshotLatestResponse } from '../models/SnapshotLatestResponse';
|
|
69
70
|
import { type SnapshotListResponse } from '../models/SnapshotListResponse';
|
|
@@ -257,6 +258,8 @@ export interface RotateWebhookSigningSecretRequest {
|
|
|
257
258
|
webhookId: string;
|
|
258
259
|
}
|
|
259
260
|
export interface SandboxesRequest {
|
|
261
|
+
org?: string;
|
|
262
|
+
xBoatOrg?: string;
|
|
260
263
|
limit?: number;
|
|
261
264
|
cursor?: string | null;
|
|
262
265
|
sort?: SandboxesSortEnum;
|
|
@@ -280,6 +283,9 @@ export interface SetEnvironmentVarOperationRequest {
|
|
|
280
283
|
key: string;
|
|
281
284
|
setEnvironmentVarRequest: SetEnvironmentVarRequest;
|
|
282
285
|
}
|
|
286
|
+
export interface ShareRequest {
|
|
287
|
+
sandboxId: string;
|
|
288
|
+
}
|
|
283
289
|
export interface SshKeyOperationRequest {
|
|
284
290
|
sandboxId: string;
|
|
285
291
|
sshKeyRequest: SshKeyRequest;
|
|
@@ -387,12 +393,12 @@ export declare class BoatApi extends runtime.BaseAPI {
|
|
|
387
393
|
*/
|
|
388
394
|
commandRequestOpts(input: CommandOperationRequest | runtime.FlatBody<CommandOperationRequest, 'commandRequest'>): Promise<runtime.RequestOpts>;
|
|
389
395
|
/**
|
|
390
|
-
* Runs the command synchronously by default (timeout configurable via `timeoutSeconds`, 600s cap). With `detached: true` the command starts in the background and a process id is returned immediately; poll `/sandboxes/{sandboxId}/commands/{processId}` for status and logs. With `stream: true` the output arrives as the command writes it, as newline-delimited JSON (`application/x-ndjson`): `{\"type\":\"started\"}`, then `{\"type\":\"stdout\"|\"stderr\",\"data\":\"...\"}` per chunk, and last `{\"type\":\"exit\",...}` (the synchronous result without stdout/stderr) or `{\"type\":\"error\",\"error\":\"...\",\"message\":\"...\"}`. Returns 400 invalid_timeout when `timeoutSeconds` is not an integer in 1-600. A command sent while the sandbox is still starting (right after a resume) waits up to 60s for it to be ready instead of failing; 409 boat_starting (retryable) is returned only if it is still not ready by then. Command execution is never retried automatically: a 502 boat_direct_failed means the command may already be running on the sandbox.
|
|
396
|
+
* Runs the command synchronously by default (timeout configurable via `timeoutSeconds`, 600s cap). With `detached: true` the command starts in the background and a process id is returned immediately; poll `/sandboxes/{sandboxId}/commands/{processId}` for status and logs. With `stream: true` the output arrives as the command writes it, as newline-delimited JSON (`application/x-ndjson`): `{\"type\":\"started\"}`, then `{\"type\":\"stdout\"|\"stderr\",\"data\":\"...\"}` per chunk, and last `{\"type\":\"exit\",...}` (the synchronous result without stdout/stderr) or `{\"type\":\"error\",\"error\":\"...\",\"message\":\"...\"}`. Returns 400 invalid_timeout when `timeoutSeconds` is not an integer in 1-600. A command sent while the sandbox is still starting (right after a resume) waits up to 60s for it to be ready instead of failing; 409 boat_starting (retryable) is returned only if it is still not ready by then. A sandbox that is not starting (`error`, `stopped`) returns 409 sandbox_not_ready with `retryable: false` and its `state` at once: resume or recover it first. Command execution is never retried automatically: a 502 boat_direct_failed means the command may already be running on the sandbox.
|
|
391
397
|
* Execute a command in a sandbox
|
|
392
398
|
*/
|
|
393
399
|
commandRaw(requestParameters: CommandOperationRequest | runtime.FlatBody<CommandOperationRequest, 'commandRequest'>, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Command200Response>>;
|
|
394
400
|
/**
|
|
395
|
-
* Runs the command synchronously by default (timeout configurable via `timeoutSeconds`, 600s cap). With `detached: true` the command starts in the background and a process id is returned immediately; poll `/sandboxes/{sandboxId}/commands/{processId}` for status and logs. With `stream: true` the output arrives as the command writes it, as newline-delimited JSON (`application/x-ndjson`): `{\"type\":\"started\"}`, then `{\"type\":\"stdout\"|\"stderr\",\"data\":\"...\"}` per chunk, and last `{\"type\":\"exit\",...}` (the synchronous result without stdout/stderr) or `{\"type\":\"error\",\"error\":\"...\",\"message\":\"...\"}`. Returns 400 invalid_timeout when `timeoutSeconds` is not an integer in 1-600. A command sent while the sandbox is still starting (right after a resume) waits up to 60s for it to be ready instead of failing; 409 boat_starting (retryable) is returned only if it is still not ready by then. Command execution is never retried automatically: a 502 boat_direct_failed means the command may already be running on the sandbox.
|
|
401
|
+
* Runs the command synchronously by default (timeout configurable via `timeoutSeconds`, 600s cap). With `detached: true` the command starts in the background and a process id is returned immediately; poll `/sandboxes/{sandboxId}/commands/{processId}` for status and logs. With `stream: true` the output arrives as the command writes it, as newline-delimited JSON (`application/x-ndjson`): `{\"type\":\"started\"}`, then `{\"type\":\"stdout\"|\"stderr\",\"data\":\"...\"}` per chunk, and last `{\"type\":\"exit\",...}` (the synchronous result without stdout/stderr) or `{\"type\":\"error\",\"error\":\"...\",\"message\":\"...\"}`. Returns 400 invalid_timeout when `timeoutSeconds` is not an integer in 1-600. A command sent while the sandbox is still starting (right after a resume) waits up to 60s for it to be ready instead of failing; 409 boat_starting (retryable) is returned only if it is still not ready by then. A sandbox that is not starting (`error`, `stopped`) returns 409 sandbox_not_ready with `retryable: false` and its `state` at once: resume or recover it first. Command execution is never retried automatically: a 502 boat_direct_failed means the command may already be running on the sandbox.
|
|
396
402
|
* Execute a command in a sandbox
|
|
397
403
|
*/
|
|
398
404
|
command(requestParameters: CommandOperationRequest | runtime.FlatBody<CommandOperationRequest, 'commandRequest'>, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Command200Response>;
|
|
@@ -1023,10 +1029,12 @@ export declare class BoatApi extends runtime.BaseAPI {
|
|
|
1023
1029
|
*/
|
|
1024
1030
|
sandboxesRequestOpts(requestParameters: SandboxesRequest): Promise<runtime.RequestOpts>;
|
|
1025
1031
|
/**
|
|
1032
|
+
* Your sandboxes. In an organization\'s scope (the active wallet, `org`, or `X-Boat-Org`) the list also holds every sandbox that organization pays for, whoever created it; `createdBy` and `access` say whose it is and what you may do with it.
|
|
1026
1033
|
* List sandboxes
|
|
1027
1034
|
*/
|
|
1028
1035
|
sandboxesRaw(requestParameters: SandboxesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SandboxListResponse>>;
|
|
1029
1036
|
/**
|
|
1037
|
+
* Your sandboxes. In an organization\'s scope (the active wallet, `org`, or `X-Boat-Org`) the list also holds every sandbox that organization pays for, whoever created it; `createdBy` and `access` say whose it is and what you may do with it.
|
|
1030
1038
|
* List sandboxes
|
|
1031
1039
|
*/
|
|
1032
1040
|
sandboxes(requestParameters?: SandboxesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SandboxListResponse>;
|
|
@@ -1114,6 +1122,20 @@ export declare class BoatApi extends runtime.BaseAPI {
|
|
|
1114
1122
|
* Set one environment variable
|
|
1115
1123
|
*/
|
|
1116
1124
|
setEnvironmentVar(requestParameters: SetEnvironmentVarOperationRequest | runtime.FlatBody<SetEnvironmentVarOperationRequest, 'setEnvironmentVarRequest'>, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<EnvironmentItemChangeResponse>;
|
|
1125
|
+
/**
|
|
1126
|
+
* Creates request options for share without sending the request
|
|
1127
|
+
*/
|
|
1128
|
+
shareRequestOpts(requestParameters: ShareRequest): Promise<runtime.RequestOpts>;
|
|
1129
|
+
/**
|
|
1130
|
+
* Let every member of the organization that pays for this sandbox use it. Your personal logins (GitHub token, Claude and Codex logins, environment secrets, the sandbox\'s own CLI key) are never pushed to it again and are wiped off its disk at its next start, so a teammate never acts as you. Files you wrote stay. One-way: the sandbox stays like a `noEnv` sandbox from then on. A running sandbox stays `view` for the organization until you stop and resume it (`restartRequired`). Only the person who created the sandbox can share it, and only a sandbox billed to an organization. Sharing an already shared sandbox is a no-op.
|
|
1131
|
+
* Share sandbox with the organization
|
|
1132
|
+
*/
|
|
1133
|
+
shareRaw(requestParameters: ShareRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Share200Response>>;
|
|
1134
|
+
/**
|
|
1135
|
+
* Let every member of the organization that pays for this sandbox use it. Your personal logins (GitHub token, Claude and Codex logins, environment secrets, the sandbox\'s own CLI key) are never pushed to it again and are wiped off its disk at its next start, so a teammate never acts as you. Files you wrote stay. One-way: the sandbox stays like a `noEnv` sandbox from then on. A running sandbox stays `view` for the organization until you stop and resume it (`restartRequired`). Only the person who created the sandbox can share it, and only a sandbox billed to an organization. Sharing an already shared sandbox is a no-op.
|
|
1136
|
+
* Share sandbox with the organization
|
|
1137
|
+
*/
|
|
1138
|
+
share(requestParameters: ShareRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Share200Response>;
|
|
1117
1139
|
/**
|
|
1118
1140
|
* Creates request options for sshKey without sending the request
|
|
1119
1141
|
*/
|
package/dist/esm/apis/BoatApi.js
CHANGED
|
@@ -66,6 +66,7 @@ import { SecretsResponseFromJSON, } from '../models/SecretsResponse';
|
|
|
66
66
|
import { SecretsUpdateRequestToJSON, } from '../models/SecretsUpdateRequest';
|
|
67
67
|
import { SetEnvironmentSecretFileRequestToJSON, } from '../models/SetEnvironmentSecretFileRequest';
|
|
68
68
|
import { SetEnvironmentVarRequestToJSON, } from '../models/SetEnvironmentVarRequest';
|
|
69
|
+
import { Share200ResponseFromJSON, } from '../models/Share200Response';
|
|
69
70
|
import { SnapshotDownloadResponseFromJSON, } from '../models/SnapshotDownloadResponse';
|
|
70
71
|
import { SnapshotLatestResponseFromJSON, } from '../models/SnapshotLatestResponse';
|
|
71
72
|
import { SnapshotListResponseFromJSON, } from '../models/SnapshotListResponse';
|
|
@@ -295,7 +296,7 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
295
296
|
};
|
|
296
297
|
}
|
|
297
298
|
/**
|
|
298
|
-
* Runs the command synchronously by default (timeout configurable via `timeoutSeconds`, 600s cap). With `detached: true` the command starts in the background and a process id is returned immediately; poll `/sandboxes/{sandboxId}/commands/{processId}` for status and logs. With `stream: true` the output arrives as the command writes it, as newline-delimited JSON (`application/x-ndjson`): `{\"type\":\"started\"}`, then `{\"type\":\"stdout\"|\"stderr\",\"data\":\"...\"}` per chunk, and last `{\"type\":\"exit\",...}` (the synchronous result without stdout/stderr) or `{\"type\":\"error\",\"error\":\"...\",\"message\":\"...\"}`. Returns 400 invalid_timeout when `timeoutSeconds` is not an integer in 1-600. A command sent while the sandbox is still starting (right after a resume) waits up to 60s for it to be ready instead of failing; 409 boat_starting (retryable) is returned only if it is still not ready by then. Command execution is never retried automatically: a 502 boat_direct_failed means the command may already be running on the sandbox.
|
|
299
|
+
* Runs the command synchronously by default (timeout configurable via `timeoutSeconds`, 600s cap). With `detached: true` the command starts in the background and a process id is returned immediately; poll `/sandboxes/{sandboxId}/commands/{processId}` for status and logs. With `stream: true` the output arrives as the command writes it, as newline-delimited JSON (`application/x-ndjson`): `{\"type\":\"started\"}`, then `{\"type\":\"stdout\"|\"stderr\",\"data\":\"...\"}` per chunk, and last `{\"type\":\"exit\",...}` (the synchronous result without stdout/stderr) or `{\"type\":\"error\",\"error\":\"...\",\"message\":\"...\"}`. Returns 400 invalid_timeout when `timeoutSeconds` is not an integer in 1-600. A command sent while the sandbox is still starting (right after a resume) waits up to 60s for it to be ready instead of failing; 409 boat_starting (retryable) is returned only if it is still not ready by then. A sandbox that is not starting (`error`, `stopped`) returns 409 sandbox_not_ready with `retryable: false` and its `state` at once: resume or recover it first. Command execution is never retried automatically: a 502 boat_direct_failed means the command may already be running on the sandbox.
|
|
299
300
|
* Execute a command in a sandbox
|
|
300
301
|
*/
|
|
301
302
|
async commandRaw(requestParameters, initOverrides) {
|
|
@@ -304,7 +305,7 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
304
305
|
return new runtime.JSONApiResponse(response, (jsonValue) => Command200ResponseFromJSON(jsonValue));
|
|
305
306
|
}
|
|
306
307
|
/**
|
|
307
|
-
* Runs the command synchronously by default (timeout configurable via `timeoutSeconds`, 600s cap). With `detached: true` the command starts in the background and a process id is returned immediately; poll `/sandboxes/{sandboxId}/commands/{processId}` for status and logs. With `stream: true` the output arrives as the command writes it, as newline-delimited JSON (`application/x-ndjson`): `{\"type\":\"started\"}`, then `{\"type\":\"stdout\"|\"stderr\",\"data\":\"...\"}` per chunk, and last `{\"type\":\"exit\",...}` (the synchronous result without stdout/stderr) or `{\"type\":\"error\",\"error\":\"...\",\"message\":\"...\"}`. Returns 400 invalid_timeout when `timeoutSeconds` is not an integer in 1-600. A command sent while the sandbox is still starting (right after a resume) waits up to 60s for it to be ready instead of failing; 409 boat_starting (retryable) is returned only if it is still not ready by then. Command execution is never retried automatically: a 502 boat_direct_failed means the command may already be running on the sandbox.
|
|
308
|
+
* Runs the command synchronously by default (timeout configurable via `timeoutSeconds`, 600s cap). With `detached: true` the command starts in the background and a process id is returned immediately; poll `/sandboxes/{sandboxId}/commands/{processId}` for status and logs. With `stream: true` the output arrives as the command writes it, as newline-delimited JSON (`application/x-ndjson`): `{\"type\":\"started\"}`, then `{\"type\":\"stdout\"|\"stderr\",\"data\":\"...\"}` per chunk, and last `{\"type\":\"exit\",...}` (the synchronous result without stdout/stderr) or `{\"type\":\"error\",\"error\":\"...\",\"message\":\"...\"}`. Returns 400 invalid_timeout when `timeoutSeconds` is not an integer in 1-600. A command sent while the sandbox is still starting (right after a resume) waits up to 60s for it to be ready instead of failing; 409 boat_starting (retryable) is returned only if it is still not ready by then. A sandbox that is not starting (`error`, `stopped`) returns 409 sandbox_not_ready with `retryable: false` and its `state` at once: resume or recover it first. Command execution is never retried automatically: a 502 boat_direct_failed means the command may already be running on the sandbox.
|
|
308
309
|
* Execute a command in a sandbox
|
|
309
310
|
*/
|
|
310
311
|
async command(requestParameters, initOverrides) {
|
|
@@ -2324,6 +2325,9 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
2324
2325
|
*/
|
|
2325
2326
|
async sandboxesRequestOpts(requestParameters) {
|
|
2326
2327
|
const queryParameters = {};
|
|
2328
|
+
if (requestParameters['org'] != null) {
|
|
2329
|
+
queryParameters['org'] = requestParameters['org'];
|
|
2330
|
+
}
|
|
2327
2331
|
if (requestParameters['limit'] != null) {
|
|
2328
2332
|
queryParameters['limit'] = requestParameters['limit'];
|
|
2329
2333
|
}
|
|
@@ -2337,6 +2341,9 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
2337
2341
|
queryParameters['state'] = requestParameters['state'];
|
|
2338
2342
|
}
|
|
2339
2343
|
const headerParameters = {};
|
|
2344
|
+
if (requestParameters['xBoatOrg'] != null) {
|
|
2345
|
+
headerParameters['X-Boat-Org'] = String(requestParameters['xBoatOrg']);
|
|
2346
|
+
}
|
|
2340
2347
|
if (this.configuration && this.configuration.accessToken) {
|
|
2341
2348
|
const token = this.configuration.accessToken;
|
|
2342
2349
|
const tokenString = await token("BoatBearerAuth", []);
|
|
@@ -2353,6 +2360,7 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
2353
2360
|
};
|
|
2354
2361
|
}
|
|
2355
2362
|
/**
|
|
2363
|
+
* Your sandboxes. In an organization\'s scope (the active wallet, `org`, or `X-Boat-Org`) the list also holds every sandbox that organization pays for, whoever created it; `createdBy` and `access` say whose it is and what you may do with it.
|
|
2356
2364
|
* List sandboxes
|
|
2357
2365
|
*/
|
|
2358
2366
|
async sandboxesRaw(requestParameters, initOverrides) {
|
|
@@ -2361,6 +2369,7 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
2361
2369
|
return new runtime.JSONApiResponse(response, (jsonValue) => SandboxListResponseFromJSON(jsonValue));
|
|
2362
2370
|
}
|
|
2363
2371
|
/**
|
|
2372
|
+
* Your sandboxes. In an organization\'s scope (the active wallet, `org`, or `X-Boat-Org`) the list also holds every sandbox that organization pays for, whoever created it; `createdBy` and `access` say whose it is and what you may do with it.
|
|
2364
2373
|
* List sandboxes
|
|
2365
2374
|
*/
|
|
2366
2375
|
async sandboxes(requestParameters = {}, initOverrides) {
|
|
@@ -2637,6 +2646,48 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
2637
2646
|
const response = await this.setEnvironmentVarRaw(requestParameters, initOverrides);
|
|
2638
2647
|
return await response.value();
|
|
2639
2648
|
}
|
|
2649
|
+
/**
|
|
2650
|
+
* Creates request options for share without sending the request
|
|
2651
|
+
*/
|
|
2652
|
+
async shareRequestOpts(requestParameters) {
|
|
2653
|
+
if (requestParameters['sandboxId'] == null) {
|
|
2654
|
+
throw new runtime.RequiredError('sandboxId', 'Required parameter "sandboxId" was null or undefined when calling share().');
|
|
2655
|
+
}
|
|
2656
|
+
const queryParameters = {};
|
|
2657
|
+
const headerParameters = {};
|
|
2658
|
+
if (this.configuration && this.configuration.accessToken) {
|
|
2659
|
+
const token = this.configuration.accessToken;
|
|
2660
|
+
const tokenString = await token("BoatBearerAuth", []);
|
|
2661
|
+
if (tokenString) {
|
|
2662
|
+
headerParameters["Authorization"] = `Bearer ${tokenString}`;
|
|
2663
|
+
}
|
|
2664
|
+
}
|
|
2665
|
+
let urlPath = `/sandboxes/{sandboxId}/share`;
|
|
2666
|
+
urlPath = urlPath.replace('{sandboxId}', encodeURIComponent(String(requestParameters['sandboxId'])));
|
|
2667
|
+
return {
|
|
2668
|
+
path: urlPath,
|
|
2669
|
+
method: 'POST',
|
|
2670
|
+
headers: headerParameters,
|
|
2671
|
+
query: queryParameters,
|
|
2672
|
+
};
|
|
2673
|
+
}
|
|
2674
|
+
/**
|
|
2675
|
+
* Let every member of the organization that pays for this sandbox use it. Your personal logins (GitHub token, Claude and Codex logins, environment secrets, the sandbox\'s own CLI key) are never pushed to it again and are wiped off its disk at its next start, so a teammate never acts as you. Files you wrote stay. One-way: the sandbox stays like a `noEnv` sandbox from then on. A running sandbox stays `view` for the organization until you stop and resume it (`restartRequired`). Only the person who created the sandbox can share it, and only a sandbox billed to an organization. Sharing an already shared sandbox is a no-op.
|
|
2676
|
+
* Share sandbox with the organization
|
|
2677
|
+
*/
|
|
2678
|
+
async shareRaw(requestParameters, initOverrides) {
|
|
2679
|
+
const requestOptions = await this.shareRequestOpts(requestParameters);
|
|
2680
|
+
const response = await this.request(requestOptions, initOverrides);
|
|
2681
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => Share200ResponseFromJSON(jsonValue));
|
|
2682
|
+
}
|
|
2683
|
+
/**
|
|
2684
|
+
* Let every member of the organization that pays for this sandbox use it. Your personal logins (GitHub token, Claude and Codex logins, environment secrets, the sandbox\'s own CLI key) are never pushed to it again and are wiped off its disk at its next start, so a teammate never acts as you. Files you wrote stay. One-way: the sandbox stays like a `noEnv` sandbox from then on. A running sandbox stays `view` for the organization until you stop and resume it (`restartRequired`). Only the person who created the sandbox can share it, and only a sandbox billed to an organization. Sharing an already shared sandbox is a no-op.
|
|
2685
|
+
* Share sandbox with the organization
|
|
2686
|
+
*/
|
|
2687
|
+
async share(requestParameters, initOverrides) {
|
|
2688
|
+
const response = await this.shareRaw(requestParameters, initOverrides);
|
|
2689
|
+
return await response.value();
|
|
2690
|
+
}
|
|
2640
2691
|
/**
|
|
2641
2692
|
* Creates request options for sshKey without sending the request
|
|
2642
2693
|
*/
|
|
@@ -54,7 +54,7 @@ export interface CreateSandboxRequest {
|
|
|
54
54
|
*/
|
|
55
55
|
snapshots?: boolean;
|
|
56
56
|
/**
|
|
57
|
-
* Pass `true` to get a sandbox only if a machine of this type is ready right now. The call answers within about 1.5 s: either the usual `202` with the sandbox, or `503` `no_ready_machine` with nothing created, billed, or counted against your start limits, so you can retry or fall back at once. Without it, a create waits for a machine to be built when none is ready.
|
|
57
|
+
* Pass `true` to get a sandbox only if a machine of this type is ready right now. The call answers within about 1.5 s: either the usual `202` with the sandbox, or `503` `no_ready_machine` with nothing created, billed, or counted against your start limits, so you can retry or fall back at once. Without it, a create waits for a machine to be built when none is ready. Works with `from`; fork and resume take it too.
|
|
58
58
|
* @type {boolean}
|
|
59
59
|
* @memberof CreateSandboxRequest
|
|
60
60
|
*/
|
|
@@ -15,6 +15,12 @@
|
|
|
15
15
|
* @interface ForkRequest
|
|
16
16
|
*/
|
|
17
17
|
export interface ForkRequest {
|
|
18
|
+
/**
|
|
19
|
+
* Pass `true` to fork only if a machine is ready right now. Within about 1.5 s you get the usual `202`, or `503` `no_ready_machine` with no fork created and nothing counted against your start limits.
|
|
20
|
+
* @type {boolean}
|
|
21
|
+
* @memberof ForkRequest
|
|
22
|
+
*/
|
|
23
|
+
failFast?: boolean;
|
|
18
24
|
/**
|
|
19
25
|
* Replaces the env the fork would otherwise inherit from the source sandbox. Same validation rules as `CreateSandboxRequest.env`.
|
|
20
26
|
* @type {{ [key: string]: string; }}
|
|
@@ -33,6 +33,7 @@ export function ForkRequestFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
33
33
|
return json;
|
|
34
34
|
}
|
|
35
35
|
return {
|
|
36
|
+
'failFast': json['failFast'] == null ? undefined : json['failFast'],
|
|
36
37
|
'env': json['env'] == null ? undefined : json['env'],
|
|
37
38
|
'environment': json['environment'] == null ? undefined : json['environment'],
|
|
38
39
|
'noEnv': json['noEnv'] == null ? undefined : json['noEnv'],
|
|
@@ -48,6 +49,7 @@ export function ForkRequestToJSONTyped(value, ignoreDiscriminator = false) {
|
|
|
48
49
|
return value;
|
|
49
50
|
}
|
|
50
51
|
return {
|
|
52
|
+
'failFast': value['failFast'],
|
|
51
53
|
'env': value['env'],
|
|
52
54
|
'environment': value['environment'],
|
|
53
55
|
'noEnv': value['noEnv'],
|
|
@@ -40,6 +40,12 @@ export interface PromptRequest {
|
|
|
40
40
|
* @memberof PromptRequest
|
|
41
41
|
*/
|
|
42
42
|
reasoningEffort?: string | null;
|
|
43
|
+
/**
|
|
44
|
+
* Optional. `true` runs this prompt in fast mode. The model stays the same and gives output faster. The provider bills fast mode at its higher fast rate. Omit to use the choice saved on the Agents dashboard for that model. `false` forces standard speed. Only models with `fastMode` set to `true` in `GET /provider-models` accept `true`. Other models return 400 `fast_mode_not_supported`.
|
|
45
|
+
* @type {boolean}
|
|
46
|
+
* @memberof PromptRequest
|
|
47
|
+
*/
|
|
48
|
+
fast?: boolean | null;
|
|
43
49
|
/**
|
|
44
50
|
* Start a NEW conversation on the sandbox (runs in parallel with any existing ones) instead of continuing the most-recently-active one. Mutually exclusive with `conversationId`.
|
|
45
51
|
* @type {boolean}
|
|
@@ -46,6 +46,7 @@ export function PromptRequestFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
46
46
|
'provider': json['provider'],
|
|
47
47
|
'model': json['model'] == null ? undefined : json['model'],
|
|
48
48
|
'reasoningEffort': json['reasoningEffort'] == null ? undefined : json['reasoningEffort'],
|
|
49
|
+
'fast': json['fast'] == null ? undefined : json['fast'],
|
|
49
50
|
'_new': json['new'] == null ? undefined : json['new'],
|
|
50
51
|
'conversationId': json['conversationId'] == null ? undefined : json['conversationId'],
|
|
51
52
|
'prompt': json['prompt'],
|
|
@@ -62,6 +63,7 @@ export function PromptRequestToJSONTyped(value, ignoreDiscriminator = false) {
|
|
|
62
63
|
'provider': value['provider'],
|
|
63
64
|
'model': value['model'],
|
|
64
65
|
'reasoningEffort': value['reasoningEffort'],
|
|
66
|
+
'fast': value['fast'],
|
|
65
67
|
'new': value['_new'],
|
|
66
68
|
'conversationId': value['conversationId'],
|
|
67
69
|
'prompt': value['prompt'],
|
|
@@ -62,6 +62,7 @@ export function PromptResponseFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
62
62
|
'provider': json['provider'],
|
|
63
63
|
'model': json['model'] == null ? undefined : json['model'],
|
|
64
64
|
'reasoningEffort': json['reasoningEffort'] == null ? undefined : json['reasoningEffort'],
|
|
65
|
+
'fast': json['fast'] == null ? undefined : json['fast'],
|
|
65
66
|
};
|
|
66
67
|
}
|
|
67
68
|
export function PromptResponseToJSON(json) {
|
|
@@ -82,5 +83,6 @@ export function PromptResponseToJSONTyped(value, ignoreDiscriminator = false) {
|
|
|
82
83
|
'provider': value['provider'],
|
|
83
84
|
'model': value['model'],
|
|
84
85
|
'reasoningEffort': value['reasoningEffort'],
|
|
86
|
+
'fast': value['fast'],
|
|
85
87
|
};
|
|
86
88
|
}
|
|
@@ -63,6 +63,12 @@ export interface PromptRun {
|
|
|
63
63
|
* @memberof PromptRun
|
|
64
64
|
*/
|
|
65
65
|
reasoningEffort?: string | null;
|
|
66
|
+
/**
|
|
67
|
+
* The prompt runs in fast mode. `null` means no speed is set yet. The prompt waits without a speed choice, or it ended without running (`done` is true). The speed is set when the prompt starts, for the model that runs.
|
|
68
|
+
* @type {boolean}
|
|
69
|
+
* @memberof PromptRun
|
|
70
|
+
*/
|
|
71
|
+
fast?: boolean | null;
|
|
66
72
|
/**
|
|
67
73
|
* The conversation this prompt ran in. A Sandbox runs many conversations in parallel; see [Integrated agents](/integrated-agents).
|
|
68
74
|
* @type {string}
|
|
@@ -54,6 +54,7 @@ export function PromptRunFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
54
54
|
'createdAt': json['createdAt'] == null ? undefined : (new Date(json['createdAt'])),
|
|
55
55
|
'model': json['model'] == null ? undefined : json['model'],
|
|
56
56
|
'reasoningEffort': json['reasoningEffort'] == null ? undefined : json['reasoningEffort'],
|
|
57
|
+
'fast': json['fast'] == null ? undefined : json['fast'],
|
|
57
58
|
'conversationId': json['conversationId'] == null ? undefined : json['conversationId'],
|
|
58
59
|
};
|
|
59
60
|
}
|
|
@@ -73,6 +74,7 @@ export function PromptRunToJSONTyped(value, ignoreDiscriminator = false) {
|
|
|
73
74
|
'createdAt': value['createdAt'] == null ? value['createdAt'] : value['createdAt'].toISOString(),
|
|
74
75
|
'model': value['model'],
|
|
75
76
|
'reasoningEffort': value['reasoningEffort'],
|
|
77
|
+
'fast': value['fast'],
|
|
76
78
|
'conversationId': value['conversationId'],
|
|
77
79
|
};
|
|
78
80
|
}
|
|
@@ -15,6 +15,12 @@
|
|
|
15
15
|
* @interface ResumeRequest
|
|
16
16
|
*/
|
|
17
17
|
export interface ResumeRequest {
|
|
18
|
+
/**
|
|
19
|
+
* Pass `true` to resume only if a machine is ready right now. Within about 1.5 s you get the usual `202`, or `503` `no_ready_machine` with the sandbox left stopped and nothing counted against your start limits.
|
|
20
|
+
* @type {boolean}
|
|
21
|
+
* @memberof ResumeRequest
|
|
22
|
+
*/
|
|
23
|
+
failFast?: boolean;
|
|
18
24
|
/**
|
|
19
25
|
* Resume onto a different machine size. Omit to keep the sandbox's current type. A resume already restores onto a fresh machine, so changing size costs nothing extra. Shrinking is rejected with `type_too_small` when the sandbox's data would not fit the smaller disk.
|
|
20
26
|
* @type {ResumeRequestTypeEnum}
|
|
@@ -33,6 +33,7 @@ export function ResumeRequestFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
33
33
|
return json;
|
|
34
34
|
}
|
|
35
35
|
return {
|
|
36
|
+
'failFast': json['failFast'] == null ? undefined : json['failFast'],
|
|
36
37
|
'type': json['type'] == null ? undefined : json['type'],
|
|
37
38
|
'env': json['env'] == null ? undefined : json['env'],
|
|
38
39
|
'environment': json['environment'] == null ? undefined : json['environment'],
|
|
@@ -48,6 +49,7 @@ export function ResumeRequestToJSONTyped(value, ignoreDiscriminator = false) {
|
|
|
48
49
|
return value;
|
|
49
50
|
}
|
|
50
51
|
return {
|
|
52
|
+
'failFast': value['failFast'],
|
|
51
53
|
'type': value['type'],
|
|
52
54
|
'env': value['env'],
|
|
53
55
|
'environment': value['environment'],
|