@boatdev/sdk 1.10.0 → 1.11.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 +22 -0
- package/dist/apis/BoatApi.d.ts +92 -12
- package/dist/apis/BoatApi.js +196 -15
- package/dist/esm/apis/BoatApi.d.ts +92 -12
- package/dist/esm/apis/BoatApi.js +196 -15
- package/dist/esm/models/CreateSandboxRequest.d.ts +3 -3
- package/dist/esm/models/CredentialId.d.ts +3 -0
- package/dist/esm/models/CredentialId.js +3 -0
- package/dist/esm/models/CredentialProfile.d.ts +7 -0
- package/dist/esm/models/CredentialProfile.js +3 -0
- package/dist/esm/models/DeletionOperation.d.ts +1 -1
- package/dist/esm/models/ResourceAccess.d.ts +38 -0
- package/dist/esm/models/ResourceAccess.js +47 -0
- package/dist/esm/models/ResourceAccessUpdate.d.ts +38 -0
- package/dist/esm/models/ResourceAccessUpdate.js +45 -0
- package/dist/esm/models/Sandbox.d.ts +7 -0
- package/dist/esm/models/Sandbox.js +3 -0
- package/dist/esm/models/SandboxEnvironment.d.ts +7 -0
- package/dist/esm/models/SandboxEnvironment.js +3 -0
- package/dist/esm/models/SandboxLastReboot.d.ts +47 -0
- package/dist/esm/models/SandboxLastReboot.js +51 -0
- package/dist/esm/models/SandboxListResponse.d.ts +7 -0
- package/dist/esm/models/SandboxListResponse.js +3 -0
- package/dist/esm/models/SandboxListResponseAllOfDeletedCost.d.ts +44 -0
- package/dist/esm/models/SandboxListResponseAllOfDeletedCost.js +51 -0
- package/dist/esm/models/SavedSnapshot.d.ts +83 -0
- package/dist/esm/models/SavedSnapshot.js +71 -0
- package/dist/esm/models/SavedSnapshotAllowance.d.ts +81 -0
- package/dist/esm/models/SavedSnapshotAllowance.js +57 -0
- package/dist/esm/models/SavedSnapshotDeletedResponse.d.ts +64 -0
- package/dist/esm/models/SavedSnapshotDeletedResponse.js +67 -0
- package/dist/esm/models/SavedSnapshotInfoResponse.d.ts +52 -0
- package/dist/esm/models/SavedSnapshotInfoResponse.js +58 -0
- package/dist/esm/models/SavedSnapshotListResponse.d.ts +59 -0
- package/dist/esm/models/SavedSnapshotListResponse.js +61 -0
- package/dist/esm/models/SavedSnapshotSaveRequest.d.ts +38 -0
- package/dist/esm/models/SavedSnapshotSaveRequest.js +47 -0
- package/dist/esm/models/SavedSnapshotSavingResponse.d.ts +65 -0
- package/dist/esm/models/SavedSnapshotSavingResponse.js +68 -0
- package/dist/esm/models/SnapshotSummary.d.ts +1 -1
- package/dist/esm/models/UpdateCredentialProfileRequest.d.ts +7 -0
- package/dist/esm/models/UpdateCredentialProfileRequest.js +3 -0
- package/dist/esm/models/UpdateSandboxEnvironmentRequest.d.ts +7 -0
- package/dist/esm/models/UpdateSandboxEnvironmentRequest.js +3 -0
- package/dist/esm/models/index.d.ts +11 -0
- package/dist/esm/models/index.js +11 -0
- package/dist/models/CreateSandboxRequest.d.ts +3 -3
- package/dist/models/CredentialId.d.ts +3 -0
- package/dist/models/CredentialId.js +3 -0
- package/dist/models/CredentialProfile.d.ts +7 -0
- package/dist/models/CredentialProfile.js +3 -0
- package/dist/models/DeletionOperation.d.ts +1 -1
- package/dist/models/ResourceAccess.d.ts +38 -0
- package/dist/models/ResourceAccess.js +54 -0
- package/dist/models/ResourceAccessUpdate.d.ts +38 -0
- package/dist/models/ResourceAccessUpdate.js +52 -0
- package/dist/models/Sandbox.d.ts +7 -0
- package/dist/models/Sandbox.js +3 -0
- package/dist/models/SandboxEnvironment.d.ts +7 -0
- package/dist/models/SandboxEnvironment.js +3 -0
- package/dist/models/SandboxLastReboot.d.ts +47 -0
- package/dist/models/SandboxLastReboot.js +59 -0
- package/dist/models/SandboxListResponse.d.ts +7 -0
- package/dist/models/SandboxListResponse.js +3 -0
- package/dist/models/SandboxListResponseAllOfDeletedCost.d.ts +44 -0
- package/dist/models/SandboxListResponseAllOfDeletedCost.js +58 -0
- package/dist/models/SavedSnapshot.d.ts +83 -0
- package/dist/models/SavedSnapshot.js +79 -0
- package/dist/models/SavedSnapshotAllowance.d.ts +81 -0
- package/dist/models/SavedSnapshotAllowance.js +64 -0
- package/dist/models/SavedSnapshotDeletedResponse.d.ts +64 -0
- package/dist/models/SavedSnapshotDeletedResponse.js +75 -0
- package/dist/models/SavedSnapshotInfoResponse.d.ts +52 -0
- package/dist/models/SavedSnapshotInfoResponse.js +66 -0
- package/dist/models/SavedSnapshotListResponse.d.ts +59 -0
- package/dist/models/SavedSnapshotListResponse.js +69 -0
- package/dist/models/SavedSnapshotSaveRequest.d.ts +38 -0
- package/dist/models/SavedSnapshotSaveRequest.js +54 -0
- package/dist/models/SavedSnapshotSavingResponse.d.ts +65 -0
- package/dist/models/SavedSnapshotSavingResponse.js +76 -0
- package/dist/models/SnapshotSummary.d.ts +1 -1
- package/dist/models/UpdateCredentialProfileRequest.d.ts +7 -0
- package/dist/models/UpdateCredentialProfileRequest.js +3 -0
- package/dist/models/UpdateSandboxEnvironmentRequest.d.ts +7 -0
- package/dist/models/UpdateSandboxEnvironmentRequest.js +3 -0
- package/dist/models/index.d.ts +11 -0
- package/dist/models/index.js +11 -0
- package/docs/BoatApi.md +307 -15
- package/docs/CredentialProfile.md +2 -0
- package/docs/ResourceAccess.md +35 -0
- package/docs/ResourceAccessUpdate.md +35 -0
- package/docs/Sandbox.md +2 -0
- package/docs/SandboxEnvironment.md +2 -0
- package/docs/SandboxLastReboot.md +35 -0
- package/docs/SandboxListResponse.md +2 -0
- package/docs/SandboxListResponseAllOfDeletedCost.md +37 -0
- package/docs/SavedSnapshot.md +47 -0
- package/docs/SavedSnapshotAllowance.md +49 -0
- package/docs/SavedSnapshotDeletedResponse.md +38 -0
- package/docs/SavedSnapshotInfoResponse.md +36 -0
- package/docs/SavedSnapshotListResponse.md +38 -0
- package/docs/SavedSnapshotSaveRequest.md +34 -0
- package/docs/SavedSnapshotSavingResponse.md +38 -0
- package/docs/UpdateCredentialProfileRequest.md +2 -0
- package/docs/UpdateSandboxEnvironmentRequest.md +2 -0
- package/package.json +1 -1
- package/src/apis/BoatApi.ts +277 -15
- package/src/models/CreateSandboxRequest.ts +3 -3
- package/src/models/CredentialId.ts +3 -0
- package/src/models/CredentialProfile.ts +15 -0
- package/src/models/DeletionOperation.ts +1 -1
- package/src/models/ResourceAccess.ts +75 -0
- package/src/models/ResourceAccessUpdate.ts +74 -0
- package/src/models/Sandbox.ts +15 -0
- package/src/models/SandboxEnvironment.ts +15 -0
- package/src/models/SandboxLastReboot.ts +85 -0
- package/src/models/SandboxListResponse.ts +15 -0
- package/src/models/SandboxListResponseAllOfDeletedCost.ts +84 -0
- package/src/models/SavedSnapshot.ts +137 -0
- package/src/models/SavedSnapshotAllowance.ts +130 -0
- package/src/models/SavedSnapshotDeletedResponse.ts +111 -0
- package/src/models/SavedSnapshotInfoResponse.ts +102 -0
- package/src/models/SavedSnapshotListResponse.ts +117 -0
- package/src/models/SavedSnapshotSaveRequest.ts +75 -0
- package/src/models/SavedSnapshotSavingResponse.ts +119 -0
- package/src/models/SnapshotSummary.ts +1 -1
- package/src/models/UpdateCredentialProfileRequest.ts +16 -0
- package/src/models/UpdateSandboxEnvironmentRequest.ts +15 -0
- package/src/models/index.ts +11 -0
package/docs/BoatApi.md
CHANGED
|
@@ -20,7 +20,7 @@ All URIs are relative to *https://boat.dev/api/v1*
|
|
|
20
20
|
| [**createDownloadUrl**](BoatApi.md#createdownloadurl) | **POST** /sandboxes/{sandboxId}/files/download-url | Get a download URL for a sandbox file |
|
|
21
21
|
| [**createEnvironment**](BoatApi.md#createenvironment) | **POST** /environments | Create a sandbox environment |
|
|
22
22
|
| [**createScopedApiKey**](BoatApi.md#createscopedapikeyoperation) | **POST** /api-keys/scoped | Create a scoped API key |
|
|
23
|
-
| [**createSnapshotShare**](BoatApi.md#createsnapshotshare) | **POST** /
|
|
23
|
+
| [**createSnapshotShare**](BoatApi.md#createsnapshotshare) | **POST** /saved-snapshots/{name}/shares | Share a saved snapshot |
|
|
24
24
|
| [**createUploadUrl**](BoatApi.md#createuploadurl) | **POST** /sandboxes/{sandboxId}/files/upload-url | Get an upload URL for a sandbox file |
|
|
25
25
|
| [**createWebhook**](BoatApi.md#createwebhook) | **POST** /webhooks | Create webhook |
|
|
26
26
|
| [**deleteCredentialAccount**](BoatApi.md#deletecredentialaccount) | **DELETE** /credential-profiles/{profile}/accounts/{credential}/{account} | Forget an account of a credential |
|
|
@@ -34,6 +34,7 @@ All URIs are relative to *https://boat.dev/api/v1*
|
|
|
34
34
|
| [**deleteNamedSnapshot**](BoatApi.md#deletenamedsnapshot) | **DELETE** /named-snapshots/{name} | Remove a named snapshot |
|
|
35
35
|
| [**deleteSandbox**](BoatApi.md#deletesandbox) | **DELETE** /sandboxes/{sandboxId} | Permanently delete sandbox data |
|
|
36
36
|
| [**deleteSandboxSnapshots**](BoatApi.md#deletesandboxsnapshots) | **DELETE** /sandboxes/{sandboxId}/snapshots | Permanently delete all snapshots of a sandbox |
|
|
37
|
+
| [**deleteSavedSnapshot**](BoatApi.md#deletesavedsnapshot) | **DELETE** /saved-snapshots/{name} | Remove a saved snapshot |
|
|
37
38
|
| [**deleteSnapshot**](BoatApi.md#deletesnapshot) | **DELETE** /snapshots/{snapshotId} | Permanently delete snapshot data |
|
|
38
39
|
| [**deleteTelemetry**](BoatApi.md#deletetelemetry) | **DELETE** /telemetry | Remove OpenTelemetry export |
|
|
39
40
|
| [**deleteWebhook**](BoatApi.md#deletewebhook) | **DELETE** /webhooks/{webhookId} | Delete webhook |
|
|
@@ -50,6 +51,7 @@ All URIs are relative to *https://boat.dev/api/v1*
|
|
|
50
51
|
| [**getLatestSandboxSnapshot**](BoatApi.md#getlatestsandboxsnapshot) | **GET** /sandboxes/{sandboxId}/snapshots/latest | Get latest boat snapshot |
|
|
51
52
|
| [**getNamedSnapshot**](BoatApi.md#getnamedsnapshot) | **GET** /named-snapshots/{name} | Get a named snapshot |
|
|
52
53
|
| [**getSandboxAiUsage**](BoatApi.md#getsandboxaiusage) | **GET** /sandboxes/{sandboxId}/ai-usage | Get sandbox AI usage |
|
|
54
|
+
| [**getSavedSnapshot**](BoatApi.md#getsavedsnapshot) | **GET** /saved-snapshots/{name} | Get a saved snapshot |
|
|
53
55
|
| [**getSnapshotDownload**](BoatApi.md#getsnapshotdownload) | **GET** /snapshots/{snapshotId}/download | Get snapshot download |
|
|
54
56
|
| [**getSnapshotFile**](BoatApi.md#getsnapshotfile) | **GET** /snapshots/{snapshotId}/files | Download a file or folder from a snapshot |
|
|
55
57
|
| [**getSnapshotTree**](BoatApi.md#getsnapshottree) | **GET** /snapshots/{snapshotId}/tree | Get snapshot file tree |
|
|
@@ -64,7 +66,8 @@ All URIs are relative to *https://boat.dev/api/v1*
|
|
|
64
66
|
| [**listNamedSnapshots**](BoatApi.md#listnamedsnapshots) | **GET** /named-snapshots | List named snapshots |
|
|
65
67
|
| [**listOrganizations**](BoatApi.md#listorganizations) | **GET** /orgs | List organizations |
|
|
66
68
|
| [**listSandboxSnapshots**](BoatApi.md#listsandboxsnapshots) | **GET** /sandboxes/{sandboxId}/snapshots | List boat snapshots |
|
|
67
|
-
| [**
|
|
69
|
+
| [**listSavedSnapshots**](BoatApi.md#listsavedsnapshots) | **GET** /saved-snapshots | List saved snapshots |
|
|
70
|
+
| [**listSnapshotShares**](BoatApi.md#listsnapshotshares) | **GET** /saved-snapshots/{name}/shares | List share codes of a saved snapshot |
|
|
68
71
|
| [**listSnapshots**](BoatApi.md#listsnapshots) | **GET** /snapshots | List snapshots |
|
|
69
72
|
| [**listWebhooks**](BoatApi.md#listwebhooks) | **GET** /webhooks | List webhooks |
|
|
70
73
|
| [**me**](BoatApi.md#me) | **GET** /me | Get current Boat user |
|
|
@@ -76,11 +79,12 @@ All URIs are relative to *https://boat.dev/api/v1*
|
|
|
76
79
|
| [**repos**](BoatApi.md#repos) | **GET** /repos | List GitHub repositories available to Boat |
|
|
77
80
|
| [**resume**](BoatApi.md#resumeoperation) | **POST** /sandboxes/{sandboxId}/resume | Resume sandbox |
|
|
78
81
|
| [**revokeApiKey**](BoatApi.md#revokeapikey) | **DELETE** /api-keys/{apiKeyId} | Revoke an API key |
|
|
79
|
-
| [**revokeSnapshotShare**](BoatApi.md#revokesnapshotshare) | **DELETE** /
|
|
82
|
+
| [**revokeSnapshotShare**](BoatApi.md#revokesnapshotshare) | **DELETE** /saved-snapshots/{name}/shares/{shareId} | Revoke a share code |
|
|
80
83
|
| [**rotateApiKey**](BoatApi.md#rotateapikey) | **POST** /api-keys/{apiKeyId}/rotate | Rotate an API key |
|
|
81
84
|
| [**rotateWebhookSigningSecret**](BoatApi.md#rotatewebhooksigningsecret) | **POST** /webhooks/{webhookId}/rotate | Rotate webhook signing secret |
|
|
82
85
|
| [**sandboxes**](BoatApi.md#sandboxes) | **GET** /sandboxes | List sandboxes |
|
|
83
86
|
| [**saveNamedSnapshot**](BoatApi.md#savenamedsnapshot) | **POST** /named-snapshots | Save a named snapshot |
|
|
87
|
+
| [**saveSavedSnapshot**](BoatApi.md#savesavedsnapshot) | **POST** /saved-snapshots | Save a saved snapshot |
|
|
84
88
|
| [**secrets**](BoatApi.md#secrets) | **GET** /secrets | Get Boat secrets setup |
|
|
85
89
|
| [**selectRepo**](BoatApi.md#selectrepo) | **POST** /repos | Select repository for sandboxes |
|
|
86
90
|
| [**setActiveOrganization**](BoatApi.md#setactiveorganization) | **PATCH** /orgs/active | Set the active organization |
|
|
@@ -163,7 +167,7 @@ example().catch(console.error);
|
|
|
163
167
|
| Name | Type | Description | Notes |
|
|
164
168
|
|------------- | ------------- | ------------- | -------------|
|
|
165
169
|
| **profile** | `string` | Profile id or name. | [Defaults to `undefined`] |
|
|
166
|
-
| **credential** | `CredentialId` | | [Defaults to `undefined`] [Enum: anthropic-api-key, openai-api-key, openrouter-api-key, llmgateway-api-key, deepseek-api-key, moonshot-api-key, mistral-api-key, claude-subscription, chatgpt-subscription, kimi-subscription, mistral-vibe-subscription, claude-bedrock, codex-bedrock] |
|
|
170
|
+
| **credential** | `CredentialId` | | [Defaults to `undefined`] [Enum: anthropic-api-key, openai-api-key, openrouter-api-key, llmgateway-api-key, deepseek-api-key, moonshot-api-key, mistral-api-key, xai-api-key, opencode-api-key, claude-subscription, chatgpt-subscription, kimi-subscription, mistral-vibe-subscription, grok-subscription, claude-bedrock, codex-bedrock] |
|
|
167
171
|
| **setCredentialKeyRequest** | [SetCredentialKeyRequest](SetCredentialKeyRequest.md) | | |
|
|
168
172
|
|
|
169
173
|
### Return type
|
|
@@ -1060,6 +1064,7 @@ example().catch(console.error);
|
|
|
1060
1064
|
| **202** | Boat accepted for provisioning. | - |
|
|
1061
1065
|
| **401** | Missing or invalid bearer token. | - |
|
|
1062
1066
|
| **402** | Account cannot currently create or operate sandboxes. The error body may include a dashboard billing URL, but billing actions are not part of the v1 API. | - |
|
|
1067
|
+
| **403** | `environment_forbidden`: the organization limits this environment to other members. Ask an owner or admin to add you. Other `403` codes can also apply. | - |
|
|
1063
1068
|
| **409** | Request conflicts with current account or sandbox state. | - |
|
|
1064
1069
|
| **429** | Machine start or concurrent-sandbox limit reached. Create, fork and resume each count as one machine start against your plan\'s start limits (see the Billing guide; `rate_limited`, naming the window you hit). A sandbox that would exceed your plan\'s concurrent-sandbox cap is refused with `limit_reached`, or `member_limit_reached` when an organization owner has capped you below the plan. | - |
|
|
1065
1070
|
| **503** | No capacity. `no_ready_machine`: a `failFast` create, fork or resume found no ready machine of that type; nothing was started, billed, or counted, and a resumed sandbox stays stopped. `out_of_capacity`: creates and forks are paused until the provisioning queue drains. | - |
|
|
@@ -1376,9 +1381,9 @@ example().catch(console.error);
|
|
|
1376
1381
|
|
|
1377
1382
|
> NamedSnapshotShareCreatedResponse createSnapshotShare(name)
|
|
1378
1383
|
|
|
1379
|
-
Share a
|
|
1384
|
+
Share a saved snapshot
|
|
1380
1385
|
|
|
1381
|
-
Make a secret code that lets any Boat account create a sandbox from this
|
|
1386
|
+
Make a secret code that lets any Boat account create a sandbox from this saved snapshot (`boat snapshot share <name>` in the CLI). The response shows the code once; Boat stores only a hash. Re-saving the name changes what the code deploys. Removing the name removes its codes. Everything on the disk is shared, so do not keep secrets in files on it. Needs `snapshot.write`.
|
|
1382
1387
|
|
|
1383
1388
|
### Example
|
|
1384
1389
|
|
|
@@ -1649,7 +1654,7 @@ example().catch(console.error);
|
|
|
1649
1654
|
| Name | Type | Description | Notes |
|
|
1650
1655
|
|------------- | ------------- | ------------- | -------------|
|
|
1651
1656
|
| **profile** | `string` | Profile id or name. | [Defaults to `undefined`] |
|
|
1652
|
-
| **credential** | `CredentialId` | | [Defaults to `undefined`] [Enum: anthropic-api-key, openai-api-key, openrouter-api-key, llmgateway-api-key, deepseek-api-key, moonshot-api-key, mistral-api-key, claude-subscription, chatgpt-subscription, kimi-subscription, mistral-vibe-subscription, claude-bedrock, codex-bedrock] |
|
|
1657
|
+
| **credential** | `CredentialId` | | [Defaults to `undefined`] [Enum: anthropic-api-key, openai-api-key, openrouter-api-key, llmgateway-api-key, deepseek-api-key, moonshot-api-key, mistral-api-key, xai-api-key, opencode-api-key, claude-subscription, chatgpt-subscription, kimi-subscription, mistral-vibe-subscription, grok-subscription, claude-bedrock, codex-bedrock] |
|
|
1653
1658
|
| **account** | `string` | The account id from the list. | [Defaults to `undefined`] |
|
|
1654
1659
|
|
|
1655
1660
|
### Return type
|
|
@@ -1880,7 +1885,7 @@ example().catch(console.error);
|
|
|
1880
1885
|
| Name | Type | Description | Notes |
|
|
1881
1886
|
|------------- | ------------- | ------------- | -------------|
|
|
1882
1887
|
| **profile** | `string` | Profile id or name. | [Defaults to `undefined`] |
|
|
1883
|
-
| **credential** | `CredentialId` | | [Defaults to `undefined`] [Enum: anthropic-api-key, openai-api-key, openrouter-api-key, llmgateway-api-key, deepseek-api-key, moonshot-api-key, mistral-api-key, claude-subscription, chatgpt-subscription, kimi-subscription, mistral-vibe-subscription, claude-bedrock, codex-bedrock] |
|
|
1888
|
+
| **credential** | `CredentialId` | | [Defaults to `undefined`] [Enum: anthropic-api-key, openai-api-key, openrouter-api-key, llmgateway-api-key, deepseek-api-key, moonshot-api-key, mistral-api-key, xai-api-key, opencode-api-key, claude-subscription, chatgpt-subscription, kimi-subscription, mistral-vibe-subscription, grok-subscription, claude-bedrock, codex-bedrock] |
|
|
1884
1889
|
|
|
1885
1890
|
### Return type
|
|
1886
1891
|
|
|
@@ -2302,7 +2307,7 @@ example().catch(console.error);
|
|
|
2302
2307
|
|
|
2303
2308
|
Permanently delete sandbox data
|
|
2304
2309
|
|
|
2305
|
-
Accept irreversible background deletion of the sandbox machine, snapshots, and content-bearing records. This is not archive: the sandbox cannot be resumed.
|
|
2310
|
+
Accept irreversible background deletion of the sandbox machine, snapshots, and content-bearing records. This is not archive: the sandbox cannot be resumed. Saved snapshots and other shared artifacts remain independent. Poll the returned operation until `completed`.
|
|
2306
2311
|
|
|
2307
2312
|
### Example
|
|
2308
2313
|
|
|
@@ -2380,7 +2385,7 @@ example().catch(console.error);
|
|
|
2380
2385
|
|
|
2381
2386
|
Permanently delete all snapshots of a sandbox
|
|
2382
2387
|
|
|
2383
|
-
Accept irreversible deletion of every unpinned snapshot of this sandbox. The sandbox itself and its
|
|
2388
|
+
Accept irreversible deletion of every unpinned snapshot of this sandbox. The sandbox itself and its saved snapshots stay. Snapshots disappear from lists, restores and forks immediately; their stored data is purged in the background. Set `X-Ascii-Confirm-Delete` to the sandbox id.
|
|
2384
2389
|
|
|
2385
2390
|
### Example
|
|
2386
2391
|
|
|
@@ -2452,6 +2457,80 @@ example().catch(console.error);
|
|
|
2452
2457
|
[[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
|
|
2453
2458
|
|
|
2454
2459
|
|
|
2460
|
+
## deleteSavedSnapshot
|
|
2461
|
+
|
|
2462
|
+
> SavedSnapshotDeletedResponse deleteSavedSnapshot(name)
|
|
2463
|
+
|
|
2464
|
+
Remove a saved snapshot
|
|
2465
|
+
|
|
2466
|
+
Remove a saved snapshot and release its storage (`boat snapshot rm <name>` in the CLI). Sandboxes already deployed from it are unaffected.
|
|
2467
|
+
|
|
2468
|
+
### Example
|
|
2469
|
+
|
|
2470
|
+
```ts
|
|
2471
|
+
import {
|
|
2472
|
+
Configuration,
|
|
2473
|
+
BoatApi,
|
|
2474
|
+
} from '@boatdev/sdk';
|
|
2475
|
+
import type { DeleteSavedSnapshotRequest } from '@boatdev/sdk';
|
|
2476
|
+
|
|
2477
|
+
async function example() {
|
|
2478
|
+
console.log("🚀 Testing @boatdev/sdk SDK...");
|
|
2479
|
+
const config = new Configuration({
|
|
2480
|
+
// Configure HTTP bearer authorization: BoatBearerAuth
|
|
2481
|
+
accessToken: "YOUR BEARER TOKEN",
|
|
2482
|
+
});
|
|
2483
|
+
const api = new BoatApi(config);
|
|
2484
|
+
|
|
2485
|
+
const body = {
|
|
2486
|
+
// string
|
|
2487
|
+
name: name_example,
|
|
2488
|
+
} satisfies DeleteSavedSnapshotRequest;
|
|
2489
|
+
|
|
2490
|
+
try {
|
|
2491
|
+
const data = await api.deleteSavedSnapshot(body);
|
|
2492
|
+
console.log(data);
|
|
2493
|
+
} catch (error) {
|
|
2494
|
+
console.error(error);
|
|
2495
|
+
}
|
|
2496
|
+
}
|
|
2497
|
+
|
|
2498
|
+
// Run the test
|
|
2499
|
+
example().catch(console.error);
|
|
2500
|
+
```
|
|
2501
|
+
|
|
2502
|
+
### Parameters
|
|
2503
|
+
|
|
2504
|
+
|
|
2505
|
+
| Name | Type | Description | Notes |
|
|
2506
|
+
|------------- | ------------- | ------------- | -------------|
|
|
2507
|
+
| **name** | `string` | | [Defaults to `undefined`] |
|
|
2508
|
+
|
|
2509
|
+
### Return type
|
|
2510
|
+
|
|
2511
|
+
[**SavedSnapshotDeletedResponse**](SavedSnapshotDeletedResponse.md)
|
|
2512
|
+
|
|
2513
|
+
### Authorization
|
|
2514
|
+
|
|
2515
|
+
[BoatBearerAuth](../README.md#BoatBearerAuth)
|
|
2516
|
+
|
|
2517
|
+
### HTTP request headers
|
|
2518
|
+
|
|
2519
|
+
- **Content-Type**: Not defined
|
|
2520
|
+
- **Accept**: `application/json`
|
|
2521
|
+
|
|
2522
|
+
|
|
2523
|
+
### HTTP response details
|
|
2524
|
+
| Status code | Description | Response headers |
|
|
2525
|
+
|-------------|-------------|------------------|
|
|
2526
|
+
| **200** | Removed. | - |
|
|
2527
|
+
| **401** | Missing or invalid bearer token. | - |
|
|
2528
|
+
| **404** | Resource not found. | - |
|
|
2529
|
+
| **409** | `save_in_progress`: a save under this name is still running. Wait for it to settle before removing it. | - |
|
|
2530
|
+
|
|
2531
|
+
[[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
|
|
2532
|
+
|
|
2533
|
+
|
|
2455
2534
|
## deleteSnapshot
|
|
2456
2535
|
|
|
2457
2536
|
> DeletionOperationResponse deleteSnapshot(snapshotId, xAsciiConfirmDelete)
|
|
@@ -2988,6 +3067,7 @@ example().catch(console.error);
|
|
|
2988
3067
|
| **202** | Fork started. The response `id` is the new forked sandbox id. | - |
|
|
2989
3068
|
| **401** | Missing or invalid bearer token. | - |
|
|
2990
3069
|
| **402** | Account cannot currently create or operate sandboxes. The error body may include a dashboard billing URL, but billing actions are not part of the v1 API. | - |
|
|
3070
|
+
| **403** | `environment_forbidden`: the organization limits this environment to other members. Ask an owner or admin to add you. Other `403` codes can also apply. | - |
|
|
2991
3071
|
| **404** | Resource not found. | - |
|
|
2992
3072
|
| **409** | Request conflicts with current account or sandbox state. | - |
|
|
2993
3073
|
| **429** | Machine start or concurrent-sandbox limit reached. Create, fork and resume each count as one machine start against your plan\'s start limits (see the Billing guide; `rate_limited`, naming the window you hit). A sandbox that would exceed your plan\'s concurrent-sandbox cap is refused with `limit_reached`, or `member_limit_reached` when an organization owner has capped you below the plan. | - |
|
|
@@ -3657,6 +3737,77 @@ example().catch(console.error);
|
|
|
3657
3737
|
[[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
|
|
3658
3738
|
|
|
3659
3739
|
|
|
3740
|
+
## getSavedSnapshot
|
|
3741
|
+
|
|
3742
|
+
> SavedSnapshotInfoResponse getSavedSnapshot(name)
|
|
3743
|
+
|
|
3744
|
+
Get a saved snapshot
|
|
3745
|
+
|
|
3746
|
+
### Example
|
|
3747
|
+
|
|
3748
|
+
```ts
|
|
3749
|
+
import {
|
|
3750
|
+
Configuration,
|
|
3751
|
+
BoatApi,
|
|
3752
|
+
} from '@boatdev/sdk';
|
|
3753
|
+
import type { GetSavedSnapshotRequest } from '@boatdev/sdk';
|
|
3754
|
+
|
|
3755
|
+
async function example() {
|
|
3756
|
+
console.log("🚀 Testing @boatdev/sdk SDK...");
|
|
3757
|
+
const config = new Configuration({
|
|
3758
|
+
// Configure HTTP bearer authorization: BoatBearerAuth
|
|
3759
|
+
accessToken: "YOUR BEARER TOKEN",
|
|
3760
|
+
});
|
|
3761
|
+
const api = new BoatApi(config);
|
|
3762
|
+
|
|
3763
|
+
const body = {
|
|
3764
|
+
// string
|
|
3765
|
+
name: name_example,
|
|
3766
|
+
} satisfies GetSavedSnapshotRequest;
|
|
3767
|
+
|
|
3768
|
+
try {
|
|
3769
|
+
const data = await api.getSavedSnapshot(body);
|
|
3770
|
+
console.log(data);
|
|
3771
|
+
} catch (error) {
|
|
3772
|
+
console.error(error);
|
|
3773
|
+
}
|
|
3774
|
+
}
|
|
3775
|
+
|
|
3776
|
+
// Run the test
|
|
3777
|
+
example().catch(console.error);
|
|
3778
|
+
```
|
|
3779
|
+
|
|
3780
|
+
### Parameters
|
|
3781
|
+
|
|
3782
|
+
|
|
3783
|
+
| Name | Type | Description | Notes |
|
|
3784
|
+
|------------- | ------------- | ------------- | -------------|
|
|
3785
|
+
| **name** | `string` | | [Defaults to `undefined`] |
|
|
3786
|
+
|
|
3787
|
+
### Return type
|
|
3788
|
+
|
|
3789
|
+
[**SavedSnapshotInfoResponse**](SavedSnapshotInfoResponse.md)
|
|
3790
|
+
|
|
3791
|
+
### Authorization
|
|
3792
|
+
|
|
3793
|
+
[BoatBearerAuth](../README.md#BoatBearerAuth)
|
|
3794
|
+
|
|
3795
|
+
### HTTP request headers
|
|
3796
|
+
|
|
3797
|
+
- **Content-Type**: Not defined
|
|
3798
|
+
- **Accept**: `application/json`
|
|
3799
|
+
|
|
3800
|
+
|
|
3801
|
+
### HTTP response details
|
|
3802
|
+
| Status code | Description | Response headers |
|
|
3803
|
+
|-------------|-------------|------------------|
|
|
3804
|
+
| **200** | The saved snapshot. | - |
|
|
3805
|
+
| **401** | Missing or invalid bearer token. | - |
|
|
3806
|
+
| **404** | Resource not found. | - |
|
|
3807
|
+
|
|
3808
|
+
[[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
|
|
3809
|
+
|
|
3810
|
+
|
|
3660
3811
|
## getSnapshotDownload
|
|
3661
3812
|
|
|
3662
3813
|
> SnapshotDownloadResponse getSnapshotDownload(snapshotId)
|
|
@@ -4377,7 +4528,7 @@ example().catch(console.error);
|
|
|
4377
4528
|
| Name | Type | Description | Notes |
|
|
4378
4529
|
|------------- | ------------- | ------------- | -------------|
|
|
4379
4530
|
| **profile** | `string` | Profile id or name. | [Defaults to `undefined`] |
|
|
4380
|
-
| **credential** | `CredentialId` | | [Defaults to `undefined`] [Enum: anthropic-api-key, openai-api-key, openrouter-api-key, llmgateway-api-key, deepseek-api-key, moonshot-api-key, mistral-api-key, claude-subscription, chatgpt-subscription, kimi-subscription, mistral-vibe-subscription, claude-bedrock, codex-bedrock] |
|
|
4531
|
+
| **credential** | `CredentialId` | | [Defaults to `undefined`] [Enum: anthropic-api-key, openai-api-key, openrouter-api-key, llmgateway-api-key, deepseek-api-key, moonshot-api-key, mistral-api-key, xai-api-key, opencode-api-key, claude-subscription, chatgpt-subscription, kimi-subscription, mistral-vibe-subscription, grok-subscription, claude-bedrock, codex-bedrock] |
|
|
4381
4532
|
|
|
4382
4533
|
### Return type
|
|
4383
4534
|
|
|
@@ -4680,13 +4831,77 @@ example().catch(console.error);
|
|
|
4680
4831
|
[[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
|
|
4681
4832
|
|
|
4682
4833
|
|
|
4834
|
+
## listSavedSnapshots
|
|
4835
|
+
|
|
4836
|
+
> SavedSnapshotListResponse listSavedSnapshots()
|
|
4837
|
+
|
|
4838
|
+
List saved snapshots
|
|
4839
|
+
|
|
4840
|
+
List your saved snapshots, newest first.
|
|
4841
|
+
|
|
4842
|
+
### Example
|
|
4843
|
+
|
|
4844
|
+
```ts
|
|
4845
|
+
import {
|
|
4846
|
+
Configuration,
|
|
4847
|
+
BoatApi,
|
|
4848
|
+
} from '@boatdev/sdk';
|
|
4849
|
+
import type { ListSavedSnapshotsRequest } from '@boatdev/sdk';
|
|
4850
|
+
|
|
4851
|
+
async function example() {
|
|
4852
|
+
console.log("🚀 Testing @boatdev/sdk SDK...");
|
|
4853
|
+
const config = new Configuration({
|
|
4854
|
+
// Configure HTTP bearer authorization: BoatBearerAuth
|
|
4855
|
+
accessToken: "YOUR BEARER TOKEN",
|
|
4856
|
+
});
|
|
4857
|
+
const api = new BoatApi(config);
|
|
4858
|
+
|
|
4859
|
+
try {
|
|
4860
|
+
const data = await api.listSavedSnapshots();
|
|
4861
|
+
console.log(data);
|
|
4862
|
+
} catch (error) {
|
|
4863
|
+
console.error(error);
|
|
4864
|
+
}
|
|
4865
|
+
}
|
|
4866
|
+
|
|
4867
|
+
// Run the test
|
|
4868
|
+
example().catch(console.error);
|
|
4869
|
+
```
|
|
4870
|
+
|
|
4871
|
+
### Parameters
|
|
4872
|
+
|
|
4873
|
+
This endpoint does not need any parameter.
|
|
4874
|
+
|
|
4875
|
+
### Return type
|
|
4876
|
+
|
|
4877
|
+
[**SavedSnapshotListResponse**](SavedSnapshotListResponse.md)
|
|
4878
|
+
|
|
4879
|
+
### Authorization
|
|
4880
|
+
|
|
4881
|
+
[BoatBearerAuth](../README.md#BoatBearerAuth)
|
|
4882
|
+
|
|
4883
|
+
### HTTP request headers
|
|
4884
|
+
|
|
4885
|
+
- **Content-Type**: Not defined
|
|
4886
|
+
- **Accept**: `application/json`
|
|
4887
|
+
|
|
4888
|
+
|
|
4889
|
+
### HTTP response details
|
|
4890
|
+
| Status code | Description | Response headers |
|
|
4891
|
+
|-------------|-------------|------------------|
|
|
4892
|
+
| **200** | Saved snapshots owned by the authenticated Boat user. | - |
|
|
4893
|
+
| **401** | Missing or invalid bearer token. | - |
|
|
4894
|
+
|
|
4895
|
+
[[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
|
|
4896
|
+
|
|
4897
|
+
|
|
4683
4898
|
## listSnapshotShares
|
|
4684
4899
|
|
|
4685
4900
|
> NamedSnapshotShareListResponse listSnapshotShares(name)
|
|
4686
4901
|
|
|
4687
|
-
List share codes of a
|
|
4902
|
+
List share codes of a saved snapshot
|
|
4688
4903
|
|
|
4689
|
-
List the share codes of a
|
|
4904
|
+
List the share codes of a saved snapshot, active and revoked (`boat snapshot shares <name>` in the CLI). The full codes are not returned. Needs `snapshot.read`.
|
|
4690
4905
|
|
|
4691
4906
|
### Example
|
|
4692
4907
|
|
|
@@ -5498,6 +5713,7 @@ example().catch(console.error);
|
|
|
5498
5713
|
| **202** | Resume started. | - |
|
|
5499
5714
|
| **401** | Missing or invalid bearer token. | - |
|
|
5500
5715
|
| **402** | Account cannot currently create or operate sandboxes. The error body may include a dashboard billing URL, but billing actions are not part of the v1 API. | - |
|
|
5716
|
+
| **403** | `environment_forbidden`: the organization limits this environment to other members. Ask an owner or admin to add you. Other `403` codes can also apply. | - |
|
|
5501
5717
|
| **404** | Resource not found. | - |
|
|
5502
5718
|
| **409** | Request conflicts with current account or sandbox state. | - |
|
|
5503
5719
|
| **429** | Machine start or concurrent-sandbox limit reached. Create, fork and resume each count as one machine start against your plan\'s start limits (see the Billing guide; `rate_limited`, naming the window you hit). A sandbox that would exceed your plan\'s concurrent-sandbox cap is refused with `limit_reached`, or `member_limit_reached` when an organization owner has capped you below the plan. | - |
|
|
@@ -5970,6 +6186,82 @@ example().catch(console.error);
|
|
|
5970
6186
|
[[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
|
|
5971
6187
|
|
|
5972
6188
|
|
|
6189
|
+
## saveSavedSnapshot
|
|
6190
|
+
|
|
6191
|
+
> SavedSnapshotSavingResponse saveSavedSnapshot(savedSnapshotSaveRequest)
|
|
6192
|
+
|
|
6193
|
+
Save a saved snapshot
|
|
6194
|
+
|
|
6195
|
+
Freeze a sandbox\'s current state under a name (`boat snapshot <id> <name>` in the CLI). Answers `202` immediately with the snapshot in `saving`; a running sandbox takes a fresh capture first, which can run minutes. Poll `GET /saved-snapshots/{name}` until the status settles at `ready` or `failed`. Reusing one of your existing names replaces that snapshot\'s artifact once the new save is ready.
|
|
6196
|
+
|
|
6197
|
+
### Example
|
|
6198
|
+
|
|
6199
|
+
```ts
|
|
6200
|
+
import {
|
|
6201
|
+
Configuration,
|
|
6202
|
+
BoatApi,
|
|
6203
|
+
} from '@boatdev/sdk';
|
|
6204
|
+
import type { SaveSavedSnapshotRequest } from '@boatdev/sdk';
|
|
6205
|
+
|
|
6206
|
+
async function example() {
|
|
6207
|
+
console.log("🚀 Testing @boatdev/sdk SDK...");
|
|
6208
|
+
const config = new Configuration({
|
|
6209
|
+
// Configure HTTP bearer authorization: BoatBearerAuth
|
|
6210
|
+
accessToken: "YOUR BEARER TOKEN",
|
|
6211
|
+
});
|
|
6212
|
+
const api = new BoatApi(config);
|
|
6213
|
+
|
|
6214
|
+
const body = {
|
|
6215
|
+
// SavedSnapshotSaveRequest
|
|
6216
|
+
savedSnapshotSaveRequest: ...,
|
|
6217
|
+
} satisfies SaveSavedSnapshotRequest;
|
|
6218
|
+
|
|
6219
|
+
try {
|
|
6220
|
+
const data = await api.saveSavedSnapshot(body);
|
|
6221
|
+
console.log(data);
|
|
6222
|
+
} catch (error) {
|
|
6223
|
+
console.error(error);
|
|
6224
|
+
}
|
|
6225
|
+
}
|
|
6226
|
+
|
|
6227
|
+
// Run the test
|
|
6228
|
+
example().catch(console.error);
|
|
6229
|
+
```
|
|
6230
|
+
|
|
6231
|
+
### Parameters
|
|
6232
|
+
|
|
6233
|
+
|
|
6234
|
+
| Name | Type | Description | Notes |
|
|
6235
|
+
|------------- | ------------- | ------------- | -------------|
|
|
6236
|
+
| **savedSnapshotSaveRequest** | [SavedSnapshotSaveRequest](SavedSnapshotSaveRequest.md) | | |
|
|
6237
|
+
|
|
6238
|
+
### Return type
|
|
6239
|
+
|
|
6240
|
+
[**SavedSnapshotSavingResponse**](SavedSnapshotSavingResponse.md)
|
|
6241
|
+
|
|
6242
|
+
### Authorization
|
|
6243
|
+
|
|
6244
|
+
[BoatBearerAuth](../README.md#BoatBearerAuth)
|
|
6245
|
+
|
|
6246
|
+
### HTTP request headers
|
|
6247
|
+
|
|
6248
|
+
- **Content-Type**: `application/json`
|
|
6249
|
+
- **Accept**: `application/json`
|
|
6250
|
+
|
|
6251
|
+
|
|
6252
|
+
### HTTP response details
|
|
6253
|
+
| Status code | Description | Response headers |
|
|
6254
|
+
|-------------|-------------|------------------|
|
|
6255
|
+
| **202** | Save accepted and running in the background. | - |
|
|
6256
|
+
| **400** | Invalid request body or parameters. | - |
|
|
6257
|
+
| **401** | Missing or invalid bearer token. | - |
|
|
6258
|
+
| **404** | Resource not found. | - |
|
|
6259
|
+
| **402** | `credit_required`: the wallet already keeps 10 or more saved snapshots and has no credit left. Each saved snapshot above the plan\'s included count costs $1.70 a month, charged daily. Add credit or remove one. | - |
|
|
6260
|
+
| **409** | `save_in_progress` when a save under this name is already running; wait for it to settle rather than retrying immediately. | - |
|
|
6261
|
+
|
|
6262
|
+
[[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
|
|
6263
|
+
|
|
6264
|
+
|
|
5973
6265
|
## secrets
|
|
5974
6266
|
|
|
5975
6267
|
> SecretsResponse secrets()
|
|
@@ -6316,7 +6608,7 @@ example().catch(console.error);
|
|
|
6316
6608
|
| Name | Type | Description | Notes |
|
|
6317
6609
|
|------------- | ------------- | ------------- | -------------|
|
|
6318
6610
|
| **profile** | `string` | Profile id or name. | [Defaults to `undefined`] |
|
|
6319
|
-
| **credential** | `CredentialId` | | [Defaults to `undefined`] [Enum: anthropic-api-key, openai-api-key, openrouter-api-key, llmgateway-api-key, deepseek-api-key, moonshot-api-key, mistral-api-key, claude-subscription, chatgpt-subscription, kimi-subscription, mistral-vibe-subscription, claude-bedrock, codex-bedrock] |
|
|
6611
|
+
| **credential** | `CredentialId` | | [Defaults to `undefined`] [Enum: anthropic-api-key, openai-api-key, openrouter-api-key, llmgateway-api-key, deepseek-api-key, moonshot-api-key, mistral-api-key, xai-api-key, opencode-api-key, claude-subscription, chatgpt-subscription, kimi-subscription, mistral-vibe-subscription, grok-subscription, claude-bedrock, codex-bedrock] |
|
|
6320
6612
|
| **setCredentialKeyRequest** | [SetCredentialKeyRequest](SetCredentialKeyRequest.md) | | |
|
|
6321
6613
|
|
|
6322
6614
|
### Return type
|
|
@@ -7101,7 +7393,7 @@ example().catch(console.error);
|
|
|
7101
7393
|
| Name | Type | Description | Notes |
|
|
7102
7394
|
|------------- | ------------- | ------------- | -------------|
|
|
7103
7395
|
| **profile** | `string` | Profile id or name. | [Defaults to `undefined`] |
|
|
7104
|
-
| **credential** | `CredentialId` | | [Defaults to `undefined`] [Enum: anthropic-api-key, openai-api-key, openrouter-api-key, llmgateway-api-key, deepseek-api-key, moonshot-api-key, mistral-api-key, claude-subscription, chatgpt-subscription, kimi-subscription, mistral-vibe-subscription, claude-bedrock, codex-bedrock] |
|
|
7396
|
+
| **credential** | `CredentialId` | | [Defaults to `undefined`] [Enum: anthropic-api-key, openai-api-key, openrouter-api-key, llmgateway-api-key, deepseek-api-key, moonshot-api-key, mistral-api-key, xai-api-key, opencode-api-key, claude-subscription, chatgpt-subscription, kimi-subscription, mistral-vibe-subscription, grok-subscription, claude-bedrock, codex-bedrock] |
|
|
7105
7397
|
| **account** | `string` | The account id from the list. | [Defaults to `undefined`] |
|
|
7106
7398
|
|
|
7107
7399
|
### Return type
|
|
@@ -17,6 +17,7 @@ Name | Type
|
|
|
17
17
|
`customApis` | Array<string>
|
|
18
18
|
`createdAt` | Date
|
|
19
19
|
`updatedAt` | Date
|
|
20
|
+
`access` | [ResourceAccess](ResourceAccess.md)
|
|
20
21
|
|
|
21
22
|
## Example
|
|
22
23
|
|
|
@@ -35,6 +36,7 @@ const example = {
|
|
|
35
36
|
"customApis": null,
|
|
36
37
|
"createdAt": null,
|
|
37
38
|
"updatedAt": null,
|
|
39
|
+
"access": null,
|
|
38
40
|
} satisfies CredentialProfile
|
|
39
41
|
|
|
40
42
|
console.log(example)
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
|
|
2
|
+
# ResourceAccess
|
|
3
|
+
|
|
4
|
+
Which organization members can use this organization environment or profile. `restricted` false means every member. `restricted` true means owners, admins and `members` only. Others do not see it in lists. Personal environments and profiles always return `restricted` false.
|
|
5
|
+
|
|
6
|
+
## Properties
|
|
7
|
+
|
|
8
|
+
Name | Type
|
|
9
|
+
------------ | -------------
|
|
10
|
+
`restricted` | boolean
|
|
11
|
+
`members` | Array<string>
|
|
12
|
+
|
|
13
|
+
## Example
|
|
14
|
+
|
|
15
|
+
```typescript
|
|
16
|
+
import type { ResourceAccess } from '@boatdev/sdk'
|
|
17
|
+
|
|
18
|
+
// TODO: Update the object below with actual values
|
|
19
|
+
const example = {
|
|
20
|
+
"restricted": null,
|
|
21
|
+
"members": null,
|
|
22
|
+
} satisfies ResourceAccess
|
|
23
|
+
|
|
24
|
+
console.log(example)
|
|
25
|
+
|
|
26
|
+
// Convert the instance to a JSON string
|
|
27
|
+
const exampleJSON: string = JSON.stringify(example)
|
|
28
|
+
console.log(exampleJSON)
|
|
29
|
+
|
|
30
|
+
// Parse the JSON string back to an object
|
|
31
|
+
const exampleParsed = JSON.parse(exampleJSON) as ResourceAccess
|
|
32
|
+
console.log(exampleParsed)
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
[[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
|
|
2
|
+
# ResourceAccessUpdate
|
|
3
|
+
|
|
4
|
+
Set who can use an organization environment (owner or admin) or profile (owner). A change does not touch running sandboxes. A bad list returns `400 invalid_access`.
|
|
5
|
+
|
|
6
|
+
## Properties
|
|
7
|
+
|
|
8
|
+
Name | Type
|
|
9
|
+
------------ | -------------
|
|
10
|
+
`restricted` | boolean
|
|
11
|
+
`members` | Array<string>
|
|
12
|
+
|
|
13
|
+
## Example
|
|
14
|
+
|
|
15
|
+
```typescript
|
|
16
|
+
import type { ResourceAccessUpdate } from '@boatdev/sdk'
|
|
17
|
+
|
|
18
|
+
// TODO: Update the object below with actual values
|
|
19
|
+
const example = {
|
|
20
|
+
"restricted": null,
|
|
21
|
+
"members": null,
|
|
22
|
+
} satisfies ResourceAccessUpdate
|
|
23
|
+
|
|
24
|
+
console.log(example)
|
|
25
|
+
|
|
26
|
+
// Convert the instance to a JSON string
|
|
27
|
+
const exampleJSON: string = JSON.stringify(example)
|
|
28
|
+
console.log(exampleJSON)
|
|
29
|
+
|
|
30
|
+
// Parse the JSON string back to an object
|
|
31
|
+
const exampleParsed = JSON.parse(exampleJSON) as ResourceAccessUpdate
|
|
32
|
+
console.log(exampleParsed)
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
[[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
|
package/docs/Sandbox.md
CHANGED
|
@@ -47,6 +47,7 @@ Name | Type
|
|
|
47
47
|
`subdomain` | string
|
|
48
48
|
`lastSnapshotAttemptAt` | Date
|
|
49
49
|
`lastSnapshotStatus` | string
|
|
50
|
+
`lastReboot` | [SandboxLastReboot](SandboxLastReboot.md)
|
|
50
51
|
`setupStatus` | string
|
|
51
52
|
`setupError` | string
|
|
52
53
|
`environment` | string
|
|
@@ -101,6 +102,7 @@ const example = {
|
|
|
101
102
|
"subdomain": null,
|
|
102
103
|
"lastSnapshotAttemptAt": null,
|
|
103
104
|
"lastSnapshotStatus": null,
|
|
105
|
+
"lastReboot": null,
|
|
104
106
|
"setupStatus": null,
|
|
105
107
|
"setupError": null,
|
|
106
108
|
"environment": null,
|
|
@@ -20,6 +20,7 @@ Name | Type
|
|
|
20
20
|
`passAgentsCredentials` | boolean
|
|
21
21
|
`credentialProfileId` | string
|
|
22
22
|
`proxyAiCredentials` | boolean
|
|
23
|
+
`access` | [ResourceAccess](ResourceAccess.md)
|
|
23
24
|
`envContents` | string
|
|
24
25
|
`secretFiles` | [Array<SecretFile>](SecretFile.md)
|
|
25
26
|
`selectedRepositories` | [Array<SelectedRepository>](SelectedRepository.md)
|
|
@@ -45,6 +46,7 @@ const example = {
|
|
|
45
46
|
"passAgentsCredentials": null,
|
|
46
47
|
"credentialProfileId": null,
|
|
47
48
|
"proxyAiCredentials": null,
|
|
49
|
+
"access": null,
|
|
48
50
|
"envContents": null,
|
|
49
51
|
"secretFiles": null,
|
|
50
52
|
"selectedRepositories": null,
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
|
|
2
|
+
# SandboxLastReboot
|
|
3
|
+
|
|
4
|
+
The last time the sandbox\'s kernel restarted on its machine, or null if it never did. Every process running at that time ended. `crash` means the system log ended with no shutdown, for example after a kernel panic.
|
|
5
|
+
|
|
6
|
+
## Properties
|
|
7
|
+
|
|
8
|
+
Name | Type
|
|
9
|
+
------------ | -------------
|
|
10
|
+
`at` | Date
|
|
11
|
+
`reason` | string
|
|
12
|
+
|
|
13
|
+
## Example
|
|
14
|
+
|
|
15
|
+
```typescript
|
|
16
|
+
import type { SandboxLastReboot } from '@boatdev/sdk'
|
|
17
|
+
|
|
18
|
+
// TODO: Update the object below with actual values
|
|
19
|
+
const example = {
|
|
20
|
+
"at": null,
|
|
21
|
+
"reason": null,
|
|
22
|
+
} satisfies SandboxLastReboot
|
|
23
|
+
|
|
24
|
+
console.log(example)
|
|
25
|
+
|
|
26
|
+
// Convert the instance to a JSON string
|
|
27
|
+
const exampleJSON: string = JSON.stringify(example)
|
|
28
|
+
console.log(exampleJSON)
|
|
29
|
+
|
|
30
|
+
// Parse the JSON string back to an object
|
|
31
|
+
const exampleParsed = JSON.parse(exampleJSON) as SandboxLastReboot
|
|
32
|
+
console.log(exampleParsed)
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
[[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
|
|
@@ -10,6 +10,7 @@ Name | Type
|
|
|
10
10
|
`type` | string
|
|
11
11
|
`sandboxes` | [Array<Sandbox>](Sandbox.md)
|
|
12
12
|
`pageInfo` | [PageInfo](PageInfo.md)
|
|
13
|
+
`deletedCost` | [SandboxListResponseAllOfDeletedCost](SandboxListResponseAllOfDeletedCost.md)
|
|
13
14
|
|
|
14
15
|
## Example
|
|
15
16
|
|
|
@@ -22,6 +23,7 @@ const example = {
|
|
|
22
23
|
"type": null,
|
|
23
24
|
"sandboxes": null,
|
|
24
25
|
"pageInfo": null,
|
|
26
|
+
"deletedCost": null,
|
|
25
27
|
} satisfies SandboxListResponse
|
|
26
28
|
|
|
27
29
|
console.log(example)
|