@boatdev/sdk 1.9.9 → 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.
- package/.openapi-generator/FILES +8 -0
- package/dist/apis/BoatApi.d.ts +52 -6
- package/dist/apis/BoatApi.js +109 -7
- package/dist/esm/apis/BoatApi.d.ts +52 -6
- package/dist/esm/apis/BoatApi.js +108 -6
- package/dist/esm/models/CreateSandboxRequest.d.ts +7 -1
- package/dist/esm/models/CreateSandboxRequest.js +2 -0
- package/dist/esm/models/CreateSandboxResponse.d.ts +6 -0
- package/dist/esm/models/CreateSandboxResponse.js +2 -0
- package/dist/esm/models/CreateScopedApiKeyRequest.d.ts +1 -1
- package/dist/esm/models/LimitsFields.d.ts +1 -1
- package/dist/esm/models/LimitsResponse.d.ts +1 -1
- package/dist/esm/models/MeResponseAllOfUser.d.ts +1 -0
- package/dist/esm/models/MeResponseAllOfUser.js +1 -0
- package/dist/esm/models/ResumeRequest.d.ts +1 -1
- package/dist/esm/models/Sandbox.d.ts +28 -1
- package/dist/esm/models/Sandbox.js +14 -0
- package/dist/esm/models/SandboxCost.d.ts +44 -0
- package/dist/esm/models/SandboxCost.js +51 -0
- package/dist/esm/models/Unshare200Response.d.ts +39 -0
- package/dist/esm/models/Unshare200Response.js +44 -0
- package/dist/esm/models/UpdateOrganization200Response.d.ts +50 -0
- package/dist/esm/models/UpdateOrganization200Response.js +47 -0
- package/dist/esm/models/UpdateOrganizationRequest.d.ts +32 -0
- package/dist/esm/models/UpdateOrganizationRequest.js +43 -0
- package/dist/esm/models/index.d.ts +4 -0
- package/dist/esm/models/index.js +4 -0
- package/dist/models/CreateSandboxRequest.d.ts +7 -1
- package/dist/models/CreateSandboxRequest.js +2 -0
- package/dist/models/CreateSandboxResponse.d.ts +6 -0
- package/dist/models/CreateSandboxResponse.js +2 -0
- package/dist/models/CreateScopedApiKeyRequest.d.ts +1 -1
- package/dist/models/LimitsFields.d.ts +1 -1
- package/dist/models/LimitsResponse.d.ts +1 -1
- package/dist/models/MeResponseAllOfUser.d.ts +1 -0
- package/dist/models/MeResponseAllOfUser.js +1 -0
- package/dist/models/ResumeRequest.d.ts +1 -1
- package/dist/models/Sandbox.d.ts +28 -1
- package/dist/models/Sandbox.js +15 -1
- package/dist/models/SandboxCost.d.ts +44 -0
- package/dist/models/SandboxCost.js +58 -0
- package/dist/models/Unshare200Response.d.ts +39 -0
- package/dist/models/Unshare200Response.js +51 -0
- package/dist/models/UpdateOrganization200Response.d.ts +50 -0
- package/dist/models/UpdateOrganization200Response.js +54 -0
- package/dist/models/UpdateOrganizationRequest.d.ts +32 -0
- package/dist/models/UpdateOrganizationRequest.js +50 -0
- package/dist/models/index.d.ts +4 -0
- package/dist/models/index.js +4 -0
- package/docs/BoatApi.md +161 -4
- package/docs/CreateSandboxRequest.md +2 -0
- package/docs/CreateSandboxResponse.md +2 -0
- package/docs/Sandbox.md +6 -0
- package/docs/SandboxCost.md +37 -0
- package/docs/Unshare200Response.md +34 -0
- package/docs/UpdateOrganization200Response.md +38 -0
- package/docs/UpdateOrganizationRequest.md +32 -0
- package/package.json +1 -1
- package/src/apis/BoatApi.ts +163 -6
- package/src/models/CreateSandboxRequest.ts +9 -1
- package/src/models/CreateSandboxResponse.ts +8 -0
- package/src/models/CreateScopedApiKeyRequest.ts +1 -1
- package/src/models/LimitsFields.ts +1 -1
- package/src/models/LimitsResponse.ts +1 -1
- package/src/models/MeResponseAllOfUser.ts +1 -0
- package/src/models/ResumeRequest.ts +1 -1
- package/src/models/Sandbox.ts +41 -1
- package/src/models/SandboxCost.ts +84 -0
- package/src/models/Unshare200Response.ts +81 -0
- package/src/models/UpdateOrganization200Response.ts +89 -0
- package/src/models/UpdateOrganizationRequest.ts +66 -0
- package/src/models/index.ts +4 -0
|
@@ -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
|
+
}
|
package/dist/models/index.d.ts
CHANGED
|
@@ -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';
|
package/dist/models/index.js
CHANGED
|
@@ -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 `
|
|
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.
|
|
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
|
|
package/docs/Sandbox.md
CHANGED
|
@@ -10,6 +10,7 @@ Name | Type
|
|
|
10
10
|
`name` | string
|
|
11
11
|
`state` | string
|
|
12
12
|
`error` | string
|
|
13
|
+
`dataExpiredAt` | Date
|
|
13
14
|
`health` | string
|
|
14
15
|
`healthReason` | string
|
|
15
16
|
`degradedSince` | Date
|
|
@@ -40,6 +41,8 @@ Name | Type
|
|
|
40
41
|
`createdById` | string
|
|
41
42
|
`access` | string
|
|
42
43
|
`holdsCreatorLogins` | boolean
|
|
44
|
+
`visibility` | string
|
|
45
|
+
`cost` | [SandboxCost](SandboxCost.md)
|
|
43
46
|
`wipePendingUntilRestart` | boolean
|
|
44
47
|
`subdomain` | string
|
|
45
48
|
`lastSnapshotAttemptAt` | Date
|
|
@@ -61,6 +64,7 @@ const example = {
|
|
|
61
64
|
"name": null,
|
|
62
65
|
"state": null,
|
|
63
66
|
"error": null,
|
|
67
|
+
"dataExpiredAt": null,
|
|
64
68
|
"health": null,
|
|
65
69
|
"healthReason": null,
|
|
66
70
|
"degradedSince": null,
|
|
@@ -91,6 +95,8 @@ const example = {
|
|
|
91
95
|
"createdById": null,
|
|
92
96
|
"access": null,
|
|
93
97
|
"holdsCreatorLogins": null,
|
|
98
|
+
"visibility": null,
|
|
99
|
+
"cost": null,
|
|
94
100
|
"wipePendingUntilRestart": null,
|
|
95
101
|
"subdomain": null,
|
|
96
102
|
"lastSnapshotAttemptAt": null,
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
|
|
2
|
+
# SandboxCost
|
|
3
|
+
|
|
4
|
+
Only with `include=cost` on `GET /sandboxes`. Machine time this sandbox used this calendar month (UTC), at list price. Same meter as `GET /sandboxes/{sandboxId}/usage`.
|
|
5
|
+
|
|
6
|
+
## Properties
|
|
7
|
+
|
|
8
|
+
Name | Type
|
|
9
|
+
------------ | -------------
|
|
10
|
+
`since` | Date
|
|
11
|
+
`seconds` | number
|
|
12
|
+
`dollars` | number
|
|
13
|
+
|
|
14
|
+
## Example
|
|
15
|
+
|
|
16
|
+
```typescript
|
|
17
|
+
import type { SandboxCost } from '@boatdev/sdk'
|
|
18
|
+
|
|
19
|
+
// TODO: Update the object below with actual values
|
|
20
|
+
const example = {
|
|
21
|
+
"since": null,
|
|
22
|
+
"seconds": null,
|
|
23
|
+
"dollars": null,
|
|
24
|
+
} satisfies SandboxCost
|
|
25
|
+
|
|
26
|
+
console.log(example)
|
|
27
|
+
|
|
28
|
+
// Convert the instance to a JSON string
|
|
29
|
+
const exampleJSON: string = JSON.stringify(example)
|
|
30
|
+
console.log(exampleJSON)
|
|
31
|
+
|
|
32
|
+
// Parse the JSON string back to an object
|
|
33
|
+
const exampleParsed = JSON.parse(exampleJSON) as SandboxCost
|
|
34
|
+
console.log(exampleParsed)
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
[[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,34 @@
|
|
|
1
|
+
|
|
2
|
+
# Unshare200Response
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
Name | Type
|
|
8
|
+
------------ | -------------
|
|
9
|
+
`sandbox` | [Sandbox](Sandbox.md)
|
|
10
|
+
`message` | string
|
|
11
|
+
|
|
12
|
+
## Example
|
|
13
|
+
|
|
14
|
+
```typescript
|
|
15
|
+
import type { Unshare200Response } from '@boatdev/sdk'
|
|
16
|
+
|
|
17
|
+
// TODO: Update the object below with actual values
|
|
18
|
+
const example = {
|
|
19
|
+
"sandbox": null,
|
|
20
|
+
"message": null,
|
|
21
|
+
} satisfies Unshare200Response
|
|
22
|
+
|
|
23
|
+
console.log(example)
|
|
24
|
+
|
|
25
|
+
// Convert the instance to a JSON string
|
|
26
|
+
const exampleJSON: string = JSON.stringify(example)
|
|
27
|
+
console.log(exampleJSON)
|
|
28
|
+
|
|
29
|
+
// Parse the JSON string back to an object
|
|
30
|
+
const exampleParsed = JSON.parse(exampleJSON) as Unshare200Response
|
|
31
|
+
console.log(exampleParsed)
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
[[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
|