@boatdev/sdk 1.9.8 → 1.10.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.
Files changed (75) hide show
  1. package/.openapi-generator/FILES +8 -0
  2. package/dist/apis/BoatApi.d.ts +52 -6
  3. package/dist/apis/BoatApi.js +109 -7
  4. package/dist/esm/apis/BoatApi.d.ts +52 -6
  5. package/dist/esm/apis/BoatApi.js +108 -6
  6. package/dist/esm/http2-fetch.js +17 -9
  7. package/dist/esm/models/CreateSandboxRequest.d.ts +7 -1
  8. package/dist/esm/models/CreateSandboxRequest.js +2 -0
  9. package/dist/esm/models/CreateSandboxResponse.d.ts +6 -0
  10. package/dist/esm/models/CreateSandboxResponse.js +2 -0
  11. package/dist/esm/models/CreateScopedApiKeyRequest.d.ts +1 -1
  12. package/dist/esm/models/LimitsFields.d.ts +1 -1
  13. package/dist/esm/models/LimitsResponse.d.ts +1 -1
  14. package/dist/esm/models/MeResponseAllOfUser.d.ts +1 -0
  15. package/dist/esm/models/MeResponseAllOfUser.js +1 -0
  16. package/dist/esm/models/ResumeRequest.d.ts +1 -1
  17. package/dist/esm/models/Sandbox.d.ts +28 -1
  18. package/dist/esm/models/Sandbox.js +14 -0
  19. package/dist/esm/models/SandboxCost.d.ts +44 -0
  20. package/dist/esm/models/SandboxCost.js +51 -0
  21. package/dist/esm/models/Unshare200Response.d.ts +39 -0
  22. package/dist/esm/models/Unshare200Response.js +44 -0
  23. package/dist/esm/models/UpdateOrganization200Response.d.ts +50 -0
  24. package/dist/esm/models/UpdateOrganization200Response.js +47 -0
  25. package/dist/esm/models/UpdateOrganizationRequest.d.ts +32 -0
  26. package/dist/esm/models/UpdateOrganizationRequest.js +43 -0
  27. package/dist/esm/models/index.d.ts +4 -0
  28. package/dist/esm/models/index.js +4 -0
  29. package/dist/http2-fetch.js +17 -9
  30. package/dist/models/CreateSandboxRequest.d.ts +7 -1
  31. package/dist/models/CreateSandboxRequest.js +2 -0
  32. package/dist/models/CreateSandboxResponse.d.ts +6 -0
  33. package/dist/models/CreateSandboxResponse.js +2 -0
  34. package/dist/models/CreateScopedApiKeyRequest.d.ts +1 -1
  35. package/dist/models/LimitsFields.d.ts +1 -1
  36. package/dist/models/LimitsResponse.d.ts +1 -1
  37. package/dist/models/MeResponseAllOfUser.d.ts +1 -0
  38. package/dist/models/MeResponseAllOfUser.js +1 -0
  39. package/dist/models/ResumeRequest.d.ts +1 -1
  40. package/dist/models/Sandbox.d.ts +28 -1
  41. package/dist/models/Sandbox.js +15 -1
  42. package/dist/models/SandboxCost.d.ts +44 -0
  43. package/dist/models/SandboxCost.js +58 -0
  44. package/dist/models/Unshare200Response.d.ts +39 -0
  45. package/dist/models/Unshare200Response.js +51 -0
  46. package/dist/models/UpdateOrganization200Response.d.ts +50 -0
  47. package/dist/models/UpdateOrganization200Response.js +54 -0
  48. package/dist/models/UpdateOrganizationRequest.d.ts +32 -0
  49. package/dist/models/UpdateOrganizationRequest.js +50 -0
  50. package/dist/models/index.d.ts +4 -0
  51. package/dist/models/index.js +4 -0
  52. package/docs/BoatApi.md +161 -4
  53. package/docs/CreateSandboxRequest.md +2 -0
  54. package/docs/CreateSandboxResponse.md +2 -0
  55. package/docs/Sandbox.md +6 -0
  56. package/docs/SandboxCost.md +37 -0
  57. package/docs/Unshare200Response.md +34 -0
  58. package/docs/UpdateOrganization200Response.md +38 -0
  59. package/docs/UpdateOrganizationRequest.md +32 -0
  60. package/package.json +1 -1
  61. package/src/apis/BoatApi.ts +163 -6
  62. package/src/http2-fetch.ts +14 -4
  63. package/src/models/CreateSandboxRequest.ts +9 -1
  64. package/src/models/CreateSandboxResponse.ts +8 -0
  65. package/src/models/CreateScopedApiKeyRequest.ts +1 -1
  66. package/src/models/LimitsFields.ts +1 -1
  67. package/src/models/LimitsResponse.ts +1 -1
  68. package/src/models/MeResponseAllOfUser.ts +1 -0
  69. package/src/models/ResumeRequest.ts +1 -1
  70. package/src/models/Sandbox.ts +41 -1
  71. package/src/models/SandboxCost.ts +84 -0
  72. package/src/models/Unshare200Response.ts +81 -0
  73. package/src/models/UpdateOrganization200Response.ts +89 -0
  74. package/src/models/UpdateOrganizationRequest.ts +66 -0
  75. package/src/models/index.ts +4 -0
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * Boat Public API v1
6
+ * Public JSON API for creating, operating, prompting, observing, and exposing sandboxes from backend services, CI jobs, hosted workers, and Boat automation products. The v1 reference intentionally documents the developer integration surface only. Dashboard billing actions are not part of v1.
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.instanceOfSandboxCost = instanceOfSandboxCost;
17
+ exports.SandboxCostFromJSON = SandboxCostFromJSON;
18
+ exports.SandboxCostFromJSONTyped = SandboxCostFromJSONTyped;
19
+ exports.SandboxCostToJSON = SandboxCostToJSON;
20
+ exports.SandboxCostToJSONTyped = SandboxCostToJSONTyped;
21
+ /**
22
+ * Check if a given object implements the SandboxCost interface.
23
+ */
24
+ function instanceOfSandboxCost(value) {
25
+ if (!('since' in value) || value['since'] === undefined)
26
+ return false;
27
+ if (!('seconds' in value) || value['seconds'] === undefined)
28
+ return false;
29
+ if (!('dollars' in value) || value['dollars'] === undefined)
30
+ return false;
31
+ return true;
32
+ }
33
+ function SandboxCostFromJSON(json) {
34
+ return SandboxCostFromJSONTyped(json, false);
35
+ }
36
+ function SandboxCostFromJSONTyped(json, ignoreDiscriminator) {
37
+ if (json == null) {
38
+ return json;
39
+ }
40
+ return {
41
+ 'since': (new Date(json['since'])),
42
+ 'seconds': json['seconds'],
43
+ 'dollars': json['dollars'],
44
+ };
45
+ }
46
+ function SandboxCostToJSON(json) {
47
+ return SandboxCostToJSONTyped(json, false);
48
+ }
49
+ function SandboxCostToJSONTyped(value, ignoreDiscriminator = false) {
50
+ if (value == null) {
51
+ return value;
52
+ }
53
+ return {
54
+ 'since': value['since'].toISOString(),
55
+ 'seconds': value['seconds'],
56
+ 'dollars': value['dollars'],
57
+ };
58
+ }
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Boat Public API v1
3
+ * Public JSON API for creating, operating, prompting, observing, and exposing sandboxes from backend services, CI jobs, hosted workers, and Boat automation products. The v1 reference intentionally documents the developer integration surface only. Dashboard billing actions are not part of v1.
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { Sandbox } from './Sandbox';
13
+ /**
14
+ *
15
+ * @export
16
+ * @interface Unshare200Response
17
+ */
18
+ export interface Unshare200Response {
19
+ /**
20
+ *
21
+ * @type {Sandbox}
22
+ * @memberof Unshare200Response
23
+ */
24
+ sandbox?: Sandbox;
25
+ /**
26
+ *
27
+ * @type {string}
28
+ * @memberof Unshare200Response
29
+ */
30
+ message?: string;
31
+ }
32
+ /**
33
+ * Check if a given object implements the Unshare200Response interface.
34
+ */
35
+ export declare function instanceOfUnshare200Response(value: object): value is Unshare200Response;
36
+ export declare function Unshare200ResponseFromJSON(json: any): Unshare200Response;
37
+ export declare function Unshare200ResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): Unshare200Response;
38
+ export declare function Unshare200ResponseToJSON(json: any): Unshare200Response;
39
+ export declare function Unshare200ResponseToJSONTyped(value?: Unshare200Response | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * Boat Public API v1
6
+ * Public JSON API for creating, operating, prompting, observing, and exposing sandboxes from backend services, CI jobs, hosted workers, and Boat automation products. The v1 reference intentionally documents the developer integration surface only. Dashboard billing actions are not part of v1.
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.instanceOfUnshare200Response = instanceOfUnshare200Response;
17
+ exports.Unshare200ResponseFromJSON = Unshare200ResponseFromJSON;
18
+ exports.Unshare200ResponseFromJSONTyped = Unshare200ResponseFromJSONTyped;
19
+ exports.Unshare200ResponseToJSON = Unshare200ResponseToJSON;
20
+ exports.Unshare200ResponseToJSONTyped = Unshare200ResponseToJSONTyped;
21
+ const Sandbox_1 = require("./Sandbox");
22
+ /**
23
+ * Check if a given object implements the Unshare200Response interface.
24
+ */
25
+ function instanceOfUnshare200Response(value) {
26
+ return true;
27
+ }
28
+ function Unshare200ResponseFromJSON(json) {
29
+ return Unshare200ResponseFromJSONTyped(json, false);
30
+ }
31
+ function Unshare200ResponseFromJSONTyped(json, ignoreDiscriminator) {
32
+ if (json == null) {
33
+ return json;
34
+ }
35
+ return {
36
+ 'sandbox': json['sandbox'] == null ? undefined : (0, Sandbox_1.SandboxFromJSON)(json['sandbox']),
37
+ 'message': json['message'] == null ? undefined : json['message'],
38
+ };
39
+ }
40
+ function Unshare200ResponseToJSON(json) {
41
+ return Unshare200ResponseToJSONTyped(json, false);
42
+ }
43
+ function Unshare200ResponseToJSONTyped(value, ignoreDiscriminator = false) {
44
+ if (value == null) {
45
+ return value;
46
+ }
47
+ return {
48
+ 'sandbox': (0, Sandbox_1.SandboxToJSON)(value['sandbox']),
49
+ 'message': value['message'],
50
+ };
51
+ }
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Boat Public API v1
3
+ * Public JSON API for creating, operating, prompting, observing, and exposing sandboxes from backend services, CI jobs, hosted workers, and Boat automation products. The v1 reference intentionally documents the developer integration surface only. Dashboard billing actions are not part of v1.
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ *
14
+ * @export
15
+ * @interface UpdateOrganization200Response
16
+ */
17
+ export interface UpdateOrganization200Response {
18
+ /**
19
+ *
20
+ * @type {boolean}
21
+ * @memberof UpdateOrganization200Response
22
+ */
23
+ ok?: boolean;
24
+ /**
25
+ *
26
+ * @type {string}
27
+ * @memberof UpdateOrganization200Response
28
+ */
29
+ type?: string;
30
+ /**
31
+ *
32
+ * @type {boolean}
33
+ * @memberof UpdateOrganization200Response
34
+ */
35
+ success?: boolean;
36
+ /**
37
+ *
38
+ * @type {boolean}
39
+ * @memberof UpdateOrganization200Response
40
+ */
41
+ newSandboxesPrivate?: boolean;
42
+ }
43
+ /**
44
+ * Check if a given object implements the UpdateOrganization200Response interface.
45
+ */
46
+ export declare function instanceOfUpdateOrganization200Response(value: object): value is UpdateOrganization200Response;
47
+ export declare function UpdateOrganization200ResponseFromJSON(json: any): UpdateOrganization200Response;
48
+ export declare function UpdateOrganization200ResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): UpdateOrganization200Response;
49
+ export declare function UpdateOrganization200ResponseToJSON(json: any): UpdateOrganization200Response;
50
+ export declare function UpdateOrganization200ResponseToJSONTyped(value?: UpdateOrganization200Response | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * Boat Public API v1
6
+ * Public JSON API for creating, operating, prompting, observing, and exposing sandboxes from backend services, CI jobs, hosted workers, and Boat automation products. The v1 reference intentionally documents the developer integration surface only. Dashboard billing actions are not part of v1.
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.instanceOfUpdateOrganization200Response = instanceOfUpdateOrganization200Response;
17
+ exports.UpdateOrganization200ResponseFromJSON = UpdateOrganization200ResponseFromJSON;
18
+ exports.UpdateOrganization200ResponseFromJSONTyped = UpdateOrganization200ResponseFromJSONTyped;
19
+ exports.UpdateOrganization200ResponseToJSON = UpdateOrganization200ResponseToJSON;
20
+ exports.UpdateOrganization200ResponseToJSONTyped = UpdateOrganization200ResponseToJSONTyped;
21
+ /**
22
+ * Check if a given object implements the UpdateOrganization200Response interface.
23
+ */
24
+ function instanceOfUpdateOrganization200Response(value) {
25
+ return true;
26
+ }
27
+ function UpdateOrganization200ResponseFromJSON(json) {
28
+ return UpdateOrganization200ResponseFromJSONTyped(json, false);
29
+ }
30
+ function UpdateOrganization200ResponseFromJSONTyped(json, ignoreDiscriminator) {
31
+ if (json == null) {
32
+ return json;
33
+ }
34
+ return {
35
+ 'ok': json['ok'] == null ? undefined : json['ok'],
36
+ 'type': json['type'] == null ? undefined : json['type'],
37
+ 'success': json['success'] == null ? undefined : json['success'],
38
+ 'newSandboxesPrivate': json['newSandboxesPrivate'] == null ? undefined : json['newSandboxesPrivate'],
39
+ };
40
+ }
41
+ function UpdateOrganization200ResponseToJSON(json) {
42
+ return UpdateOrganization200ResponseToJSONTyped(json, false);
43
+ }
44
+ function UpdateOrganization200ResponseToJSONTyped(value, ignoreDiscriminator = false) {
45
+ if (value == null) {
46
+ return value;
47
+ }
48
+ return {
49
+ 'ok': value['ok'],
50
+ 'type': value['type'],
51
+ 'success': value['success'],
52
+ 'newSandboxesPrivate': value['newSandboxesPrivate'],
53
+ };
54
+ }
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Boat Public API v1
3
+ * Public JSON API for creating, operating, prompting, observing, and exposing sandboxes from backend services, CI jobs, hosted workers, and Boat automation products. The v1 reference intentionally documents the developer integration surface only. Dashboard billing actions are not part of v1.
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ *
14
+ * @export
15
+ * @interface UpdateOrganizationRequest
16
+ */
17
+ export interface UpdateOrganizationRequest {
18
+ /**
19
+ * True = new sandboxes start private. False = they start shared.
20
+ * @type {boolean}
21
+ * @memberof UpdateOrganizationRequest
22
+ */
23
+ newSandboxesPrivate: boolean;
24
+ }
25
+ /**
26
+ * Check if a given object implements the UpdateOrganizationRequest interface.
27
+ */
28
+ export declare function instanceOfUpdateOrganizationRequest(value: object): value is UpdateOrganizationRequest;
29
+ export declare function UpdateOrganizationRequestFromJSON(json: any): UpdateOrganizationRequest;
30
+ export declare function UpdateOrganizationRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): UpdateOrganizationRequest;
31
+ export declare function UpdateOrganizationRequestToJSON(json: any): UpdateOrganizationRequest;
32
+ export declare function UpdateOrganizationRequestToJSONTyped(value?: UpdateOrganizationRequest | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * Boat Public API v1
6
+ * Public JSON API for creating, operating, prompting, observing, and exposing sandboxes from backend services, CI jobs, hosted workers, and Boat automation products. The v1 reference intentionally documents the developer integration surface only. Dashboard billing actions are not part of v1.
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.instanceOfUpdateOrganizationRequest = instanceOfUpdateOrganizationRequest;
17
+ exports.UpdateOrganizationRequestFromJSON = UpdateOrganizationRequestFromJSON;
18
+ exports.UpdateOrganizationRequestFromJSONTyped = UpdateOrganizationRequestFromJSONTyped;
19
+ exports.UpdateOrganizationRequestToJSON = UpdateOrganizationRequestToJSON;
20
+ exports.UpdateOrganizationRequestToJSONTyped = UpdateOrganizationRequestToJSONTyped;
21
+ /**
22
+ * Check if a given object implements the UpdateOrganizationRequest interface.
23
+ */
24
+ function instanceOfUpdateOrganizationRequest(value) {
25
+ if (!('newSandboxesPrivate' in value) || value['newSandboxesPrivate'] === undefined)
26
+ return false;
27
+ return true;
28
+ }
29
+ function UpdateOrganizationRequestFromJSON(json) {
30
+ return UpdateOrganizationRequestFromJSONTyped(json, false);
31
+ }
32
+ function UpdateOrganizationRequestFromJSONTyped(json, ignoreDiscriminator) {
33
+ if (json == null) {
34
+ return json;
35
+ }
36
+ return {
37
+ 'newSandboxesPrivate': json['newSandboxesPrivate'],
38
+ };
39
+ }
40
+ function UpdateOrganizationRequestToJSON(json) {
41
+ return UpdateOrganizationRequestToJSONTyped(json, false);
42
+ }
43
+ function UpdateOrganizationRequestToJSONTyped(value, ignoreDiscriminator = false) {
44
+ if (value == null) {
45
+ return value;
46
+ }
47
+ return {
48
+ 'newSandboxesPrivate': value['newSandboxesPrivate'],
49
+ };
50
+ }
@@ -117,6 +117,7 @@ export * from './SandboxActionResponse';
117
117
  export * from './SandboxAiAccessResponse';
118
118
  export * from './SandboxAiUsage';
119
119
  export * from './SandboxAiUsageResponse';
120
+ export * from './SandboxCost';
120
121
  export * from './SandboxEnvironment';
121
122
  export * from './SandboxEnvironmentListResponse';
122
123
  export * from './SandboxEnvironmentResponse';
@@ -164,8 +165,11 @@ export * from './TelemetrySetRequest';
164
165
  export * from './TelemetrySetResponse';
165
166
  export * from './TelemetryTestResult';
166
167
  export * from './UnknownEvent';
168
+ export * from './Unshare200Response';
167
169
  export * from './UpdateAiProxyRequest';
168
170
  export * from './UpdateCredentialProfileRequest';
171
+ export * from './UpdateOrganization200Response';
172
+ export * from './UpdateOrganizationRequest';
169
173
  export * from './UpdateSandboxEnvironmentRequest';
170
174
  export * from './UpdateSandboxEnvironmentRequestRepositoriesInner';
171
175
  export * from './UpdateSandboxRequest';
@@ -135,6 +135,7 @@ __exportStar(require("./SandboxActionResponse"), exports);
135
135
  __exportStar(require("./SandboxAiAccessResponse"), exports);
136
136
  __exportStar(require("./SandboxAiUsage"), exports);
137
137
  __exportStar(require("./SandboxAiUsageResponse"), exports);
138
+ __exportStar(require("./SandboxCost"), exports);
138
139
  __exportStar(require("./SandboxEnvironment"), exports);
139
140
  __exportStar(require("./SandboxEnvironmentListResponse"), exports);
140
141
  __exportStar(require("./SandboxEnvironmentResponse"), exports);
@@ -182,8 +183,11 @@ __exportStar(require("./TelemetrySetRequest"), exports);
182
183
  __exportStar(require("./TelemetrySetResponse"), exports);
183
184
  __exportStar(require("./TelemetryTestResult"), exports);
184
185
  __exportStar(require("./UnknownEvent"), exports);
186
+ __exportStar(require("./Unshare200Response"), exports);
185
187
  __exportStar(require("./UpdateAiProxyRequest"), exports);
186
188
  __exportStar(require("./UpdateCredentialProfileRequest"), exports);
189
+ __exportStar(require("./UpdateOrganization200Response"), exports);
190
+ __exportStar(require("./UpdateOrganizationRequest"), exports);
187
191
  __exportStar(require("./UpdateSandboxEnvironmentRequest"), exports);
188
192
  __exportStar(require("./UpdateSandboxEnvironmentRequestRepositoriesInner"), exports);
189
193
  __exportStar(require("./UpdateSandboxRequest"), exports);
package/docs/BoatApi.md CHANGED
@@ -96,11 +96,13 @@ All URIs are relative to *https://boat.dev/api/v1*
96
96
  | [**stop**](BoatApi.md#stopoperation) | **POST** /sandboxes/{sandboxId}/stop | Stop and archive sandbox |
97
97
  | [**stopCommand**](BoatApi.md#stopcommand) | **DELETE** /sandboxes/{sandboxId}/commands/{processId} | Stop a detached command |
98
98
  | [**switchCredentialAccount**](BoatApi.md#switchcredentialaccount) | **PUT** /credential-profiles/{profile}/accounts/{credential}/{account}/active | Switch a credential to another account |
99
+ | [**unshare**](BoatApi.md#unshare) | **POST** /sandboxes/{sandboxId}/unshare | Make an organization sandbox private |
99
100
  | [**update**](BoatApi.md#update) | **PATCH** /sandboxes/{sandboxId} | Update sandbox |
100
101
  | [**updateAiProxy**](BoatApi.md#updateaiproxyoperation) | **PUT** /ai-proxy | Turn the AI credentials proxy on or off |
101
102
  | [**updateCredentialProfile**](BoatApi.md#updatecredentialprofileoperation) | **PUT** /credential-profiles/{profile} | Update a credential profile |
102
103
  | [**updateDataRetention**](BoatApi.md#updatedataretention) | **PATCH** /account/data-retention | Update account data-retention policy |
103
104
  | [**updateEnvironment**](BoatApi.md#updateenvironment) | **PUT** /environments/{environmentId} | Update a sandbox environment |
105
+ | [**updateOrganization**](BoatApi.md#updateorganizationoperation) | **PATCH** /orgs/{org} | Update organization settings |
104
106
  | [**updateSecrets**](BoatApi.md#updatesecrets) | **POST** /secrets | Update Boat secrets setup |
105
107
  | [**updateWebhook**](BoatApi.md#updatewebhook) | **PATCH** /webhooks/{webhookId} | Update webhook |
106
108
  | [**upgradeEnvironment**](BoatApi.md#upgradeenvironment) | **POST** /environments/{environmentId}/upgrade | Upgrade sandboxes to an environment\'s latest version |
@@ -3585,7 +3587,7 @@ example().catch(console.error);
3585
3587
 
3586
3588
  Get sandbox AI usage
3587
3589
 
3588
- One sandbox\'s proxied AI usage per UTC day, credential and model, and whether it is blocked. Needs an API key with `box.read` on the sandbox.
3590
+ One sandbox\'s proxied AI usage per UTC day, credential and model, and whether it is blocked. Needs an API key with `sandbox.read` on the sandbox.
3589
3591
 
3590
3592
  ### Example
3591
3593
 
@@ -5270,7 +5272,7 @@ example().catch(console.error);
5270
5272
 
5271
5273
  Recover a sandbox that stopped responding
5272
5274
 
5273
- Power-cycle the machine of a sandbox that stopped answering. The disk is not touched. The sandbox usually answers again within 1-2 minutes and then saves your work by itself; `sandbox.recovered` fires when it does. Refused with `409`: - `sandbox_is_reachable`: the sandbox answers normally. - `too_soon`: a recover started less than 10 minutes ago. - `no_machine`: the sandbox has no machine. Resume it instead. - `recover_unsupported`: its machine cannot be power-cycled. Wait for it to answer, or resume it from its last snapshot. - `reset_failed`: the power-cycle failed. Reply to the incident email.
5275
+ Power-cycle the machine of a sandbox that stopped answering. The disk is not touched. The sandbox usually answers again within 1-2 minutes and then saves your work by itself; `sandbox.recovered` fires when it does. Refused with `409`: - `sandbox_is_reachable`: the sandbox answers normally. - `too_soon`: a recover started less than 10 minutes ago. - `no_machine`: the sandbox has no machine. Resume it instead. - `recover_unsupported`: its machine cannot be power-cycled. Wait for it to answer, or stop it with `{\"force\": true}` and resume it from its last good snapshot. With no snapshot, a forced stop loses everything. - `reset_failed`: the power-cycle failed. Reply to the incident email.
5274
5276
 
5275
5277
  ### Example
5276
5278
 
@@ -5804,7 +5806,7 @@ example().catch(console.error);
5804
5806
 
5805
5807
  ## sandboxes
5806
5808
 
5807
- > SandboxListResponse sandboxes(org, xBoatOrg, limit, cursor, sort, state)
5809
+ > SandboxListResponse sandboxes(org, xBoatOrg, limit, cursor, sort, state, include)
5808
5810
 
5809
5811
  List sandboxes
5810
5812
 
@@ -5840,6 +5842,8 @@ async function example() {
5840
5842
  sort: sort_example,
5841
5843
  // string | Comma-separated sandbox state filter, for example `ready,idle,running`. (optional)
5842
5844
  state: state_example,
5845
+ // 'cost' | `cost` adds each sandbox\'s `cost` this calendar month (UTC), at list price. (optional)
5846
+ include: include_example,
5843
5847
  } satisfies SandboxesRequest;
5844
5848
 
5845
5849
  try {
@@ -5865,6 +5869,7 @@ example().catch(console.error);
5865
5869
  | **cursor** | `string` | Opaque pagination cursor returned as `pageInfo.nextCursor`. | [Optional] [Defaults to `undefined`] |
5866
5870
  | **sort** | `asc`, `desc` | Sort direction for cursor pagination. | [Optional] [Defaults to `'desc'`] [Enum: asc, desc] |
5867
5871
  | **state** | `string` | Comma-separated sandbox state filter, for example `ready,idle,running`. | [Optional] [Defaults to `undefined`] |
5872
+ | **include** | `cost` | `cost` adds each sandbox\'s `cost` this calendar month (UTC), at list price. | [Optional] [Defaults to `undefined`] [Enum: cost] |
5868
5873
 
5869
5874
  ### Return type
5870
5875
 
@@ -6660,7 +6665,7 @@ example().catch(console.error);
6660
6665
 
6661
6666
  Share sandbox with the organization
6662
6667
 
6663
- 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.
6668
+ Let every member of the organization that pays for this sandbox use it. A sandbox that holds none of your personal logins is shared at once. A sandbox that holds them: 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. The wipe is 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`): its running programs hold your logins in memory. Teammates never read history recorded before the share. 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. Undo with `POST /sandboxes/{sandboxId}/unshare`.
6664
6669
 
6665
6670
  ### Example
6666
6671
 
@@ -7125,6 +7130,81 @@ example().catch(console.error);
7125
7130
  [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
7126
7131
 
7127
7132
 
7133
+ ## unshare
7134
+
7135
+ > Unshare200Response unshare(sandboxId)
7136
+
7137
+ Make an organization sandbox private
7138
+
7139
+ Make a shared organization sandbox private again, at once. Only you can then use it. Teammates still see it in their list and can stop it. Their SSH keys are removed from the running machine. Nothing on the sandbox changes: files, installs and its environment stay. Undo with `POST /sandboxes/{sandboxId}/share`. Only the person who created the sandbox can make it private, and only a sandbox billed to an organization. Making a private sandbox private is a no-op.
7140
+
7141
+ ### Example
7142
+
7143
+ ```ts
7144
+ import {
7145
+ Configuration,
7146
+ BoatApi,
7147
+ } from '@boatdev/sdk';
7148
+ import type { UnshareRequest } from '@boatdev/sdk';
7149
+
7150
+ async function example() {
7151
+ console.log("🚀 Testing @boatdev/sdk SDK...");
7152
+ const config = new Configuration({
7153
+ // Configure HTTP bearer authorization: BoatBearerAuth
7154
+ accessToken: "YOUR BEARER TOKEN",
7155
+ });
7156
+ const api = new BoatApi(config);
7157
+
7158
+ const body = {
7159
+ // string | Public Sandbox id returned by create/list/get sandbox calls.
7160
+ sandboxId: sandboxId_example,
7161
+ } satisfies UnshareRequest;
7162
+
7163
+ try {
7164
+ const data = await api.unshare(body);
7165
+ console.log(data);
7166
+ } catch (error) {
7167
+ console.error(error);
7168
+ }
7169
+ }
7170
+
7171
+ // Run the test
7172
+ example().catch(console.error);
7173
+ ```
7174
+
7175
+ ### Parameters
7176
+
7177
+
7178
+ | Name | Type | Description | Notes |
7179
+ |------------- | ------------- | ------------- | -------------|
7180
+ | **sandboxId** | `string` | Public Sandbox id returned by create/list/get sandbox calls. | [Defaults to `undefined`] |
7181
+
7182
+ ### Return type
7183
+
7184
+ [**Unshare200Response**](Unshare200Response.md)
7185
+
7186
+ ### Authorization
7187
+
7188
+ [BoatBearerAuth](../README.md#BoatBearerAuth)
7189
+
7190
+ ### HTTP request headers
7191
+
7192
+ - **Content-Type**: Not defined
7193
+ - **Accept**: `application/json`
7194
+
7195
+
7196
+ ### HTTP response details
7197
+ | Status code | Description | Response headers |
7198
+ |-------------|-------------|------------------|
7199
+ | **200** | The sandbox is private. | - |
7200
+ | **400** | Invalid request body or parameters. | - |
7201
+ | **401** | Missing or invalid bearer token. | - |
7202
+ | **403** | Authenticated token is not allowed to perform this action. | - |
7203
+ | **404** | Resource not found. | - |
7204
+
7205
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
7206
+
7207
+
7128
7208
  ## update
7129
7209
 
7130
7210
  > SandboxInfoResponse update(sandboxId, updateSandboxRequest)
@@ -7514,6 +7594,83 @@ example().catch(console.error);
7514
7594
  [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
7515
7595
 
7516
7596
 
7597
+ ## updateOrganization
7598
+
7599
+ > UpdateOrganization200Response updateOrganization(org, updateOrganizationRequest)
7600
+
7601
+ Update organization settings
7602
+
7603
+ Owners and admins set whether new sandboxes of the organization start private (only their creator can use them) or shared (every member can use those that hold none of their creator\'s logins). The default is shared. Existing sandboxes keep their setting; their creators change it with `POST /sandboxes/{sandboxId}/share` and `POST /sandboxes/{sandboxId}/unshare`. A fork of a private sandbox is private.
7604
+
7605
+ ### Example
7606
+
7607
+ ```ts
7608
+ import {
7609
+ Configuration,
7610
+ BoatApi,
7611
+ } from '@boatdev/sdk';
7612
+ import type { UpdateOrganizationOperationRequest } from '@boatdev/sdk';
7613
+
7614
+ async function example() {
7615
+ console.log("🚀 Testing @boatdev/sdk SDK...");
7616
+ const config = new Configuration({
7617
+ // Configure HTTP bearer authorization: BoatBearerAuth
7618
+ accessToken: "YOUR BEARER TOKEN",
7619
+ });
7620
+ const api = new BoatApi(config);
7621
+
7622
+ const body = {
7623
+ // string | Organization id or name.
7624
+ org: org_example,
7625
+ // UpdateOrganizationRequest
7626
+ updateOrganizationRequest: {"newSandboxesPrivate":true},
7627
+ } satisfies UpdateOrganizationOperationRequest;
7628
+
7629
+ try {
7630
+ const data = await api.updateOrganization(body);
7631
+ console.log(data);
7632
+ } catch (error) {
7633
+ console.error(error);
7634
+ }
7635
+ }
7636
+
7637
+ // Run the test
7638
+ example().catch(console.error);
7639
+ ```
7640
+
7641
+ ### Parameters
7642
+
7643
+
7644
+ | Name | Type | Description | Notes |
7645
+ |------------- | ------------- | ------------- | -------------|
7646
+ | **org** | `string` | Organization id or name. | [Defaults to `undefined`] |
7647
+ | **updateOrganizationRequest** | [UpdateOrganizationRequest](UpdateOrganizationRequest.md) | | |
7648
+
7649
+ ### Return type
7650
+
7651
+ [**UpdateOrganization200Response**](UpdateOrganization200Response.md)
7652
+
7653
+ ### Authorization
7654
+
7655
+ [BoatBearerAuth](../README.md#BoatBearerAuth)
7656
+
7657
+ ### HTTP request headers
7658
+
7659
+ - **Content-Type**: `application/json`
7660
+ - **Accept**: `application/json`
7661
+
7662
+
7663
+ ### HTTP response details
7664
+ | Status code | Description | Response headers |
7665
+ |-------------|-------------|------------------|
7666
+ | **200** | The setting is saved. | - |
7667
+ | **400** | Invalid request body or parameters. | - |
7668
+ | **401** | Missing or invalid bearer token. | - |
7669
+ | **403** | Authenticated token is not allowed to perform this action. | - |
7670
+
7671
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
7672
+
7673
+
7517
7674
  ## updateSecrets
7518
7675
 
7519
7676
  > SecretsResponse updateSecrets(secretsUpdateRequest)
@@ -15,6 +15,7 @@ Name | Type
15
15
  `snapshots` | boolean
16
16
  `monitoring` | boolean
17
17
  `failFast` | boolean
18
+ `count` | number
18
19
  `setupScript` | string
19
20
  `org` | string
20
21
  `teamId` | string
@@ -35,6 +36,7 @@ const example = {
35
36
  "snapshots": null,
36
37
  "monitoring": null,
37
38
  "failFast": null,
39
+ "count": null,
38
40
  "setupScript": null,
39
41
  "org": null,
40
42
  "teamId": null,
@@ -11,6 +11,7 @@ Name | Type
11
11
  `status` | string
12
12
  `ttlSeconds` | number
13
13
  `sandbox` | [Sandbox](Sandbox.md)
14
+ `sandboxes` | [Array<Sandbox>](Sandbox.md)
14
15
  `giftLimitNotice` | string
15
16
 
16
17
  ## Example
@@ -25,6 +26,7 @@ const example = {
25
26
  "status": null,
26
27
  "ttlSeconds": null,
27
28
  "sandbox": null,
29
+ "sandboxes": null,
28
30
  "giftLimitNotice": null,
29
31
  } satisfies CreateSandboxResponse
30
32