@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.
Files changed (129) hide show
  1. package/.openapi-generator/FILES +22 -0
  2. package/dist/apis/BoatApi.d.ts +92 -12
  3. package/dist/apis/BoatApi.js +196 -15
  4. package/dist/esm/apis/BoatApi.d.ts +92 -12
  5. package/dist/esm/apis/BoatApi.js +196 -15
  6. package/dist/esm/models/CreateSandboxRequest.d.ts +3 -3
  7. package/dist/esm/models/CredentialId.d.ts +3 -0
  8. package/dist/esm/models/CredentialId.js +3 -0
  9. package/dist/esm/models/CredentialProfile.d.ts +7 -0
  10. package/dist/esm/models/CredentialProfile.js +3 -0
  11. package/dist/esm/models/DeletionOperation.d.ts +1 -1
  12. package/dist/esm/models/ResourceAccess.d.ts +38 -0
  13. package/dist/esm/models/ResourceAccess.js +47 -0
  14. package/dist/esm/models/ResourceAccessUpdate.d.ts +38 -0
  15. package/dist/esm/models/ResourceAccessUpdate.js +45 -0
  16. package/dist/esm/models/Sandbox.d.ts +7 -0
  17. package/dist/esm/models/Sandbox.js +3 -0
  18. package/dist/esm/models/SandboxEnvironment.d.ts +7 -0
  19. package/dist/esm/models/SandboxEnvironment.js +3 -0
  20. package/dist/esm/models/SandboxLastReboot.d.ts +47 -0
  21. package/dist/esm/models/SandboxLastReboot.js +51 -0
  22. package/dist/esm/models/SandboxListResponse.d.ts +7 -0
  23. package/dist/esm/models/SandboxListResponse.js +3 -0
  24. package/dist/esm/models/SandboxListResponseAllOfDeletedCost.d.ts +44 -0
  25. package/dist/esm/models/SandboxListResponseAllOfDeletedCost.js +51 -0
  26. package/dist/esm/models/SavedSnapshot.d.ts +83 -0
  27. package/dist/esm/models/SavedSnapshot.js +71 -0
  28. package/dist/esm/models/SavedSnapshotAllowance.d.ts +81 -0
  29. package/dist/esm/models/SavedSnapshotAllowance.js +57 -0
  30. package/dist/esm/models/SavedSnapshotDeletedResponse.d.ts +64 -0
  31. package/dist/esm/models/SavedSnapshotDeletedResponse.js +67 -0
  32. package/dist/esm/models/SavedSnapshotInfoResponse.d.ts +52 -0
  33. package/dist/esm/models/SavedSnapshotInfoResponse.js +58 -0
  34. package/dist/esm/models/SavedSnapshotListResponse.d.ts +59 -0
  35. package/dist/esm/models/SavedSnapshotListResponse.js +61 -0
  36. package/dist/esm/models/SavedSnapshotSaveRequest.d.ts +38 -0
  37. package/dist/esm/models/SavedSnapshotSaveRequest.js +47 -0
  38. package/dist/esm/models/SavedSnapshotSavingResponse.d.ts +65 -0
  39. package/dist/esm/models/SavedSnapshotSavingResponse.js +68 -0
  40. package/dist/esm/models/SnapshotSummary.d.ts +1 -1
  41. package/dist/esm/models/UpdateCredentialProfileRequest.d.ts +7 -0
  42. package/dist/esm/models/UpdateCredentialProfileRequest.js +3 -0
  43. package/dist/esm/models/UpdateSandboxEnvironmentRequest.d.ts +7 -0
  44. package/dist/esm/models/UpdateSandboxEnvironmentRequest.js +3 -0
  45. package/dist/esm/models/index.d.ts +11 -0
  46. package/dist/esm/models/index.js +11 -0
  47. package/dist/models/CreateSandboxRequest.d.ts +3 -3
  48. package/dist/models/CredentialId.d.ts +3 -0
  49. package/dist/models/CredentialId.js +3 -0
  50. package/dist/models/CredentialProfile.d.ts +7 -0
  51. package/dist/models/CredentialProfile.js +3 -0
  52. package/dist/models/DeletionOperation.d.ts +1 -1
  53. package/dist/models/ResourceAccess.d.ts +38 -0
  54. package/dist/models/ResourceAccess.js +54 -0
  55. package/dist/models/ResourceAccessUpdate.d.ts +38 -0
  56. package/dist/models/ResourceAccessUpdate.js +52 -0
  57. package/dist/models/Sandbox.d.ts +7 -0
  58. package/dist/models/Sandbox.js +3 -0
  59. package/dist/models/SandboxEnvironment.d.ts +7 -0
  60. package/dist/models/SandboxEnvironment.js +3 -0
  61. package/dist/models/SandboxLastReboot.d.ts +47 -0
  62. package/dist/models/SandboxLastReboot.js +59 -0
  63. package/dist/models/SandboxListResponse.d.ts +7 -0
  64. package/dist/models/SandboxListResponse.js +3 -0
  65. package/dist/models/SandboxListResponseAllOfDeletedCost.d.ts +44 -0
  66. package/dist/models/SandboxListResponseAllOfDeletedCost.js +58 -0
  67. package/dist/models/SavedSnapshot.d.ts +83 -0
  68. package/dist/models/SavedSnapshot.js +79 -0
  69. package/dist/models/SavedSnapshotAllowance.d.ts +81 -0
  70. package/dist/models/SavedSnapshotAllowance.js +64 -0
  71. package/dist/models/SavedSnapshotDeletedResponse.d.ts +64 -0
  72. package/dist/models/SavedSnapshotDeletedResponse.js +75 -0
  73. package/dist/models/SavedSnapshotInfoResponse.d.ts +52 -0
  74. package/dist/models/SavedSnapshotInfoResponse.js +66 -0
  75. package/dist/models/SavedSnapshotListResponse.d.ts +59 -0
  76. package/dist/models/SavedSnapshotListResponse.js +69 -0
  77. package/dist/models/SavedSnapshotSaveRequest.d.ts +38 -0
  78. package/dist/models/SavedSnapshotSaveRequest.js +54 -0
  79. package/dist/models/SavedSnapshotSavingResponse.d.ts +65 -0
  80. package/dist/models/SavedSnapshotSavingResponse.js +76 -0
  81. package/dist/models/SnapshotSummary.d.ts +1 -1
  82. package/dist/models/UpdateCredentialProfileRequest.d.ts +7 -0
  83. package/dist/models/UpdateCredentialProfileRequest.js +3 -0
  84. package/dist/models/UpdateSandboxEnvironmentRequest.d.ts +7 -0
  85. package/dist/models/UpdateSandboxEnvironmentRequest.js +3 -0
  86. package/dist/models/index.d.ts +11 -0
  87. package/dist/models/index.js +11 -0
  88. package/docs/BoatApi.md +307 -15
  89. package/docs/CredentialProfile.md +2 -0
  90. package/docs/ResourceAccess.md +35 -0
  91. package/docs/ResourceAccessUpdate.md +35 -0
  92. package/docs/Sandbox.md +2 -0
  93. package/docs/SandboxEnvironment.md +2 -0
  94. package/docs/SandboxLastReboot.md +35 -0
  95. package/docs/SandboxListResponse.md +2 -0
  96. package/docs/SandboxListResponseAllOfDeletedCost.md +37 -0
  97. package/docs/SavedSnapshot.md +47 -0
  98. package/docs/SavedSnapshotAllowance.md +49 -0
  99. package/docs/SavedSnapshotDeletedResponse.md +38 -0
  100. package/docs/SavedSnapshotInfoResponse.md +36 -0
  101. package/docs/SavedSnapshotListResponse.md +38 -0
  102. package/docs/SavedSnapshotSaveRequest.md +34 -0
  103. package/docs/SavedSnapshotSavingResponse.md +38 -0
  104. package/docs/UpdateCredentialProfileRequest.md +2 -0
  105. package/docs/UpdateSandboxEnvironmentRequest.md +2 -0
  106. package/package.json +1 -1
  107. package/src/apis/BoatApi.ts +277 -15
  108. package/src/models/CreateSandboxRequest.ts +3 -3
  109. package/src/models/CredentialId.ts +3 -0
  110. package/src/models/CredentialProfile.ts +15 -0
  111. package/src/models/DeletionOperation.ts +1 -1
  112. package/src/models/ResourceAccess.ts +75 -0
  113. package/src/models/ResourceAccessUpdate.ts +74 -0
  114. package/src/models/Sandbox.ts +15 -0
  115. package/src/models/SandboxEnvironment.ts +15 -0
  116. package/src/models/SandboxLastReboot.ts +85 -0
  117. package/src/models/SandboxListResponse.ts +15 -0
  118. package/src/models/SandboxListResponseAllOfDeletedCost.ts +84 -0
  119. package/src/models/SavedSnapshot.ts +137 -0
  120. package/src/models/SavedSnapshotAllowance.ts +130 -0
  121. package/src/models/SavedSnapshotDeletedResponse.ts +111 -0
  122. package/src/models/SavedSnapshotInfoResponse.ts +102 -0
  123. package/src/models/SavedSnapshotListResponse.ts +117 -0
  124. package/src/models/SavedSnapshotSaveRequest.ts +75 -0
  125. package/src/models/SavedSnapshotSavingResponse.ts +119 -0
  126. package/src/models/SnapshotSummary.ts +1 -1
  127. package/src/models/UpdateCredentialProfileRequest.ts +16 -0
  128. package/src/models/UpdateSandboxEnvironmentRequest.ts +15 -0
  129. package/src/models/index.ts +11 -0
@@ -0,0 +1,45 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Boat Public API v1
5
+ * 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.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * Check if a given object implements the ResourceAccessUpdate interface.
16
+ */
17
+ export function instanceOfResourceAccessUpdate(value) {
18
+ if (!('restricted' in value) || value['restricted'] === undefined)
19
+ return false;
20
+ return true;
21
+ }
22
+ export function ResourceAccessUpdateFromJSON(json) {
23
+ return ResourceAccessUpdateFromJSONTyped(json, false);
24
+ }
25
+ export function ResourceAccessUpdateFromJSONTyped(json, ignoreDiscriminator) {
26
+ if (json == null) {
27
+ return json;
28
+ }
29
+ return {
30
+ 'restricted': json['restricted'],
31
+ 'members': json['members'] == null ? undefined : json['members'],
32
+ };
33
+ }
34
+ export function ResourceAccessUpdateToJSON(json) {
35
+ return ResourceAccessUpdateToJSONTyped(json, false);
36
+ }
37
+ export function ResourceAccessUpdateToJSONTyped(value, ignoreDiscriminator = false) {
38
+ if (value == null) {
39
+ return value;
40
+ }
41
+ return {
42
+ 'restricted': value['restricted'],
43
+ 'members': value['members'],
44
+ };
45
+ }
@@ -11,6 +11,7 @@
11
11
  */
12
12
  import type { SandboxTeam } from './SandboxTeam';
13
13
  import type { StopOperation } from './StopOperation';
14
+ import type { SandboxLastReboot } from './SandboxLastReboot';
14
15
  import type { SandboxCost } from './SandboxCost';
15
16
  import type { SandboxHydration } from './SandboxHydration';
16
17
  /**
@@ -265,6 +266,12 @@ export interface Sandbox {
265
266
  * @memberof Sandbox
266
267
  */
267
268
  lastSnapshotStatus?: SandboxLastSnapshotStatusEnum | null;
269
+ /**
270
+ *
271
+ * @type {SandboxLastReboot}
272
+ * @memberof Sandbox
273
+ */
274
+ lastReboot?: SandboxLastReboot;
268
275
  /**
269
276
  * Outcome of the create-time `setupScript`: `pending` (stored, not yet started), `running` (executing on the sandbox in the background), `done` (exit code 0) or `failed` (non-zero exit, or the sandbox lost track of the process). Null when the sandbox was created without a setup script.
270
277
  * @type {SandboxSetupStatusEnum}
@@ -13,6 +13,7 @@
13
13
  */
14
14
  import { SandboxTeamFromJSON, SandboxTeamToJSON, } from './SandboxTeam';
15
15
  import { StopOperationFromJSON, StopOperationToJSON, } from './StopOperation';
16
+ import { SandboxLastRebootFromJSON, SandboxLastRebootToJSON, } from './SandboxLastReboot';
16
17
  import { SandboxCostFromJSON, SandboxCostToJSON, } from './SandboxCost';
17
18
  import { SandboxHydrationFromJSON, SandboxHydrationToJSON, } from './SandboxHydration';
18
19
  /**
@@ -153,6 +154,7 @@ export function SandboxFromJSONTyped(json, ignoreDiscriminator) {
153
154
  'subdomain': json['subdomain'] == null ? undefined : json['subdomain'],
154
155
  'lastSnapshotAttemptAt': json['lastSnapshotAttemptAt'] == null ? undefined : (new Date(json['lastSnapshotAttemptAt'])),
155
156
  'lastSnapshotStatus': json['lastSnapshotStatus'] == null ? undefined : json['lastSnapshotStatus'],
157
+ 'lastReboot': json['lastReboot'] == null ? undefined : SandboxLastRebootFromJSON(json['lastReboot']),
156
158
  'setupStatus': json['setupStatus'] == null ? undefined : json['setupStatus'],
157
159
  'setupError': json['setupError'] == null ? undefined : json['setupError'],
158
160
  'environment': json['environment'] == null ? undefined : json['environment'],
@@ -209,6 +211,7 @@ export function SandboxToJSONTyped(value, ignoreDiscriminator = false) {
209
211
  'subdomain': value['subdomain'],
210
212
  'lastSnapshotAttemptAt': value['lastSnapshotAttemptAt'] == null ? value['lastSnapshotAttemptAt'] : value['lastSnapshotAttemptAt'].toISOString(),
211
213
  'lastSnapshotStatus': value['lastSnapshotStatus'],
214
+ 'lastReboot': SandboxLastRebootToJSON(value['lastReboot']),
212
215
  'setupStatus': value['setupStatus'],
213
216
  'setupError': value['setupError'],
214
217
  'environment': value['environment'],
@@ -9,6 +9,7 @@
9
9
  * https://openapi-generator.tech
10
10
  * Do not edit the class manually.
11
11
  */
12
+ import type { ResourceAccess } from './ResourceAccess';
12
13
  import type { SelectedRepository } from './SelectedRepository';
13
14
  import type { SandboxEnvironmentVersionSummary } from './SandboxEnvironmentVersionSummary';
14
15
  import type { SecretFile } from './SecretFile';
@@ -96,6 +97,12 @@ export interface SandboxEnvironment {
96
97
  * @memberof SandboxEnvironment
97
98
  */
98
99
  proxyAiCredentials?: boolean;
100
+ /**
101
+ *
102
+ * @type {ResourceAccess}
103
+ * @memberof SandboxEnvironment
104
+ */
105
+ access?: ResourceAccess;
99
106
  /**
100
107
  * The latest version's .env-style content. Treat as sensitive.
101
108
  * @type {string}
@@ -11,6 +11,7 @@
11
11
  * https://openapi-generator.tech
12
12
  * Do not edit the class manually.
13
13
  */
14
+ import { ResourceAccessFromJSON, ResourceAccessToJSON, } from './ResourceAccess';
14
15
  import { SelectedRepositoryFromJSON, SelectedRepositoryToJSON, } from './SelectedRepository';
15
16
  import { SandboxEnvironmentVersionSummaryFromJSON, SandboxEnvironmentVersionSummaryToJSON, } from './SandboxEnvironmentVersionSummary';
16
17
  import { SecretFileFromJSON, SecretFileToJSON, } from './SecretFile';
@@ -65,6 +66,7 @@ export function SandboxEnvironmentFromJSONTyped(json, ignoreDiscriminator) {
65
66
  'passAgentsCredentials': json['passAgentsCredentials'],
66
67
  'credentialProfileId': json['credentialProfileId'] == null ? undefined : json['credentialProfileId'],
67
68
  'proxyAiCredentials': json['proxyAiCredentials'] == null ? undefined : json['proxyAiCredentials'],
69
+ 'access': json['access'] == null ? undefined : ResourceAccessFromJSON(json['access']),
68
70
  'envContents': json['envContents'],
69
71
  'secretFiles': (json['secretFiles'].map(SecretFileFromJSON)),
70
72
  'selectedRepositories': json['selectedRepositories'] == null ? undefined : (json['selectedRepositories'].map(SelectedRepositoryFromJSON)),
@@ -92,6 +94,7 @@ export function SandboxEnvironmentToJSONTyped(value, ignoreDiscriminator = false
92
94
  'passAgentsCredentials': value['passAgentsCredentials'],
93
95
  'credentialProfileId': value['credentialProfileId'],
94
96
  'proxyAiCredentials': value['proxyAiCredentials'],
97
+ 'access': ResourceAccessToJSON(value['access']),
95
98
  'envContents': value['envContents'],
96
99
  'secretFiles': (value['secretFiles'].map(SecretFileToJSON)),
97
100
  'selectedRepositories': value['selectedRepositories'] == null ? undefined : (value['selectedRepositories'].map(SelectedRepositoryToJSON)),
@@ -0,0 +1,47 @@
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
+ * 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.
14
+ * @export
15
+ * @interface SandboxLastReboot
16
+ */
17
+ export interface SandboxLastReboot {
18
+ /**
19
+ *
20
+ * @type {Date}
21
+ * @memberof SandboxLastReboot
22
+ */
23
+ at?: Date;
24
+ /**
25
+ *
26
+ * @type {SandboxLastRebootReasonEnum}
27
+ * @memberof SandboxLastReboot
28
+ */
29
+ reason?: SandboxLastRebootReasonEnum;
30
+ }
31
+ /**
32
+ * @export
33
+ */
34
+ export declare const SandboxLastRebootReasonEnum: {
35
+ readonly Crash: 'crash';
36
+ readonly Clean: 'clean';
37
+ readonly Unknown: 'unknown';
38
+ };
39
+ export type SandboxLastRebootReasonEnum = typeof SandboxLastRebootReasonEnum[keyof typeof SandboxLastRebootReasonEnum];
40
+ /**
41
+ * Check if a given object implements the SandboxLastReboot interface.
42
+ */
43
+ export declare function instanceOfSandboxLastReboot(value: object): value is SandboxLastReboot;
44
+ export declare function SandboxLastRebootFromJSON(json: any): SandboxLastReboot;
45
+ export declare function SandboxLastRebootFromJSONTyped(json: any, ignoreDiscriminator: boolean): SandboxLastReboot;
46
+ export declare function SandboxLastRebootToJSON(json: any): SandboxLastReboot;
47
+ export declare function SandboxLastRebootToJSONTyped(value?: SandboxLastReboot | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,51 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Boat Public API v1
5
+ * 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.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * @export
16
+ */
17
+ export const SandboxLastRebootReasonEnum = {
18
+ Crash: 'crash',
19
+ Clean: 'clean',
20
+ Unknown: 'unknown'
21
+ };
22
+ /**
23
+ * Check if a given object implements the SandboxLastReboot interface.
24
+ */
25
+ export function instanceOfSandboxLastReboot(value) {
26
+ return true;
27
+ }
28
+ export function SandboxLastRebootFromJSON(json) {
29
+ return SandboxLastRebootFromJSONTyped(json, false);
30
+ }
31
+ export function SandboxLastRebootFromJSONTyped(json, ignoreDiscriminator) {
32
+ if (json == null) {
33
+ return json;
34
+ }
35
+ return {
36
+ 'at': json['at'] == null ? undefined : (new Date(json['at'])),
37
+ 'reason': json['reason'] == null ? undefined : json['reason'],
38
+ };
39
+ }
40
+ export function SandboxLastRebootToJSON(json) {
41
+ return SandboxLastRebootToJSONTyped(json, false);
42
+ }
43
+ export function SandboxLastRebootToJSONTyped(value, ignoreDiscriminator = false) {
44
+ if (value == null) {
45
+ return value;
46
+ }
47
+ return {
48
+ 'at': value['at'] == null ? value['at'] : value['at'].toISOString(),
49
+ 'reason': value['reason'],
50
+ };
51
+ }
@@ -10,6 +10,7 @@
10
10
  * Do not edit the class manually.
11
11
  */
12
12
  import type { PageInfo } from './PageInfo';
13
+ import type { SandboxListResponseAllOfDeletedCost } from './SandboxListResponseAllOfDeletedCost';
13
14
  import type { Sandbox } from './Sandbox';
14
15
  /**
15
16
  *
@@ -41,6 +42,12 @@ export interface SandboxListResponse {
41
42
  * @memberof SandboxListResponse
42
43
  */
43
44
  pageInfo?: PageInfo;
45
+ /**
46
+ *
47
+ * @type {SandboxListResponseAllOfDeletedCost}
48
+ * @memberof SandboxListResponse
49
+ */
50
+ deletedCost?: SandboxListResponseAllOfDeletedCost;
44
51
  }
45
52
  /**
46
53
  * @export
@@ -12,6 +12,7 @@
12
12
  * Do not edit the class manually.
13
13
  */
14
14
  import { PageInfoFromJSON, PageInfoToJSON, } from './PageInfo';
15
+ import { SandboxListResponseAllOfDeletedCostFromJSON, SandboxListResponseAllOfDeletedCostToJSON, } from './SandboxListResponseAllOfDeletedCost';
15
16
  import { SandboxFromJSON, SandboxToJSON, } from './Sandbox';
16
17
  /**
17
18
  * @export
@@ -43,6 +44,7 @@ export function SandboxListResponseFromJSONTyped(json, ignoreDiscriminator) {
43
44
  'type': json['type'],
44
45
  'sandboxes': (json['sandboxes'].map(SandboxFromJSON)),
45
46
  'pageInfo': json['pageInfo'] == null ? undefined : PageInfoFromJSON(json['pageInfo']),
47
+ 'deletedCost': json['deletedCost'] == null ? undefined : SandboxListResponseAllOfDeletedCostFromJSON(json['deletedCost']),
46
48
  };
47
49
  }
48
50
  export function SandboxListResponseToJSON(json) {
@@ -57,5 +59,6 @@ export function SandboxListResponseToJSONTyped(value, ignoreDiscriminator = fals
57
59
  'type': value['type'],
58
60
  'sandboxes': (value['sandboxes'].map(SandboxToJSON)),
59
61
  'pageInfo': PageInfoToJSON(value['pageInfo']),
62
+ 'deletedCost': SandboxListResponseAllOfDeletedCostToJSON(value['deletedCost']),
60
63
  };
61
64
  }
@@ -0,0 +1,44 @@
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
+ * Only with `include=cost`, and not for an API key limited to some sandboxes. Machine time this calendar month (UTC) of deleted sandboxes this list would otherwise show. They are not in the list, but their time was billed. Add it to the sandboxes' `cost` to get the full total.
14
+ * @export
15
+ * @interface SandboxListResponseAllOfDeletedCost
16
+ */
17
+ export interface SandboxListResponseAllOfDeletedCost {
18
+ /**
19
+ * The 1st of this month, 00:00 UTC.
20
+ * @type {Date}
21
+ * @memberof SandboxListResponseAllOfDeletedCost
22
+ */
23
+ since: Date;
24
+ /**
25
+ * Billable machine-seconds, size multiplier applied.
26
+ * @type {number}
27
+ * @memberof SandboxListResponseAllOfDeletedCost
28
+ */
29
+ seconds: number;
30
+ /**
31
+ * seconds / secondsPerDollar, at list price.
32
+ * @type {number}
33
+ * @memberof SandboxListResponseAllOfDeletedCost
34
+ */
35
+ dollars: number;
36
+ }
37
+ /**
38
+ * Check if a given object implements the SandboxListResponseAllOfDeletedCost interface.
39
+ */
40
+ export declare function instanceOfSandboxListResponseAllOfDeletedCost(value: object): value is SandboxListResponseAllOfDeletedCost;
41
+ export declare function SandboxListResponseAllOfDeletedCostFromJSON(json: any): SandboxListResponseAllOfDeletedCost;
42
+ export declare function SandboxListResponseAllOfDeletedCostFromJSONTyped(json: any, ignoreDiscriminator: boolean): SandboxListResponseAllOfDeletedCost;
43
+ export declare function SandboxListResponseAllOfDeletedCostToJSON(json: any): SandboxListResponseAllOfDeletedCost;
44
+ export declare function SandboxListResponseAllOfDeletedCostToJSONTyped(value?: SandboxListResponseAllOfDeletedCost | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,51 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Boat Public API v1
5
+ * 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.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * Check if a given object implements the SandboxListResponseAllOfDeletedCost interface.
16
+ */
17
+ export function instanceOfSandboxListResponseAllOfDeletedCost(value) {
18
+ if (!('since' in value) || value['since'] === undefined)
19
+ return false;
20
+ if (!('seconds' in value) || value['seconds'] === undefined)
21
+ return false;
22
+ if (!('dollars' in value) || value['dollars'] === undefined)
23
+ return false;
24
+ return true;
25
+ }
26
+ export function SandboxListResponseAllOfDeletedCostFromJSON(json) {
27
+ return SandboxListResponseAllOfDeletedCostFromJSONTyped(json, false);
28
+ }
29
+ export function SandboxListResponseAllOfDeletedCostFromJSONTyped(json, ignoreDiscriminator) {
30
+ if (json == null) {
31
+ return json;
32
+ }
33
+ return {
34
+ 'since': (new Date(json['since'])),
35
+ 'seconds': json['seconds'],
36
+ 'dollars': json['dollars'],
37
+ };
38
+ }
39
+ export function SandboxListResponseAllOfDeletedCostToJSON(json) {
40
+ return SandboxListResponseAllOfDeletedCostToJSONTyped(json, false);
41
+ }
42
+ export function SandboxListResponseAllOfDeletedCostToJSONTyped(value, ignoreDiscriminator = false) {
43
+ if (value == null) {
44
+ return value;
45
+ }
46
+ return {
47
+ 'since': value['since'].toISOString(),
48
+ 'seconds': value['seconds'],
49
+ 'dollars': value['dollars'],
50
+ };
51
+ }
@@ -0,0 +1,83 @@
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
+ * A saved snapshot: a frozen copy of a sandbox's disk at one moment, saved under a name you pick. Independent of the source sandbox's later life: the sandbox can change, stop, or be deleted and the saved snapshot still deploys. Saved snapshots never expire; re-saving a name replaces its artifact.
14
+ * @export
15
+ * @interface SavedSnapshot
16
+ */
17
+ export interface SavedSnapshot {
18
+ /**
19
+ * The user-chosen handle, unique within your account.
20
+ * @type {string}
21
+ * @memberof SavedSnapshot
22
+ */
23
+ name: string;
24
+ /**
25
+ * `saving` while the capture and pin are in flight (a live source sandbox takes a fresh snapshot first, which can run minutes), `ready` when deployable, `failed` if the save did not complete (see `error`; save again to retry).
26
+ * @type {SavedSnapshotStatusEnum}
27
+ * @memberof SavedSnapshot
28
+ */
29
+ status: SavedSnapshotStatusEnum;
30
+ /**
31
+ * Failure reason. Only present when `status` is `failed`.
32
+ * @type {string}
33
+ * @memberof SavedSnapshot
34
+ */
35
+ error?: string;
36
+ /**
37
+ * The sandbox this snapshot was saved from (display only).
38
+ * @type {string}
39
+ * @memberof SavedSnapshot
40
+ */
41
+ sourceSandboxId: string;
42
+ /**
43
+ * The frozen artifact behind the name. Present once `status` is `ready`. Accepted by `GET /api/boat/snapshots/{snapshotId}/tree` to browse its files.
44
+ * @type {string}
45
+ * @memberof SavedSnapshot
46
+ */
47
+ snapshotId?: string;
48
+ /**
49
+ * Sandbox type the snapshot was saved from. Deploys default to it.
50
+ * @type {string}
51
+ * @memberof SavedSnapshot
52
+ */
53
+ type?: string;
54
+ /**
55
+ * Restored content size of the frozen state, in bytes.
56
+ * @type {number}
57
+ * @memberof SavedSnapshot
58
+ */
59
+ sizeBytes?: number;
60
+ /**
61
+ *
62
+ * @type {Date}
63
+ * @memberof SavedSnapshot
64
+ */
65
+ createdAt: Date;
66
+ }
67
+ /**
68
+ * @export
69
+ */
70
+ export declare const SavedSnapshotStatusEnum: {
71
+ readonly Saving: 'saving';
72
+ readonly Ready: 'ready';
73
+ readonly Failed: 'failed';
74
+ };
75
+ export type SavedSnapshotStatusEnum = typeof SavedSnapshotStatusEnum[keyof typeof SavedSnapshotStatusEnum];
76
+ /**
77
+ * Check if a given object implements the SavedSnapshot interface.
78
+ */
79
+ export declare function instanceOfSavedSnapshot(value: object): value is SavedSnapshot;
80
+ export declare function SavedSnapshotFromJSON(json: any): SavedSnapshot;
81
+ export declare function SavedSnapshotFromJSONTyped(json: any, ignoreDiscriminator: boolean): SavedSnapshot;
82
+ export declare function SavedSnapshotToJSON(json: any): SavedSnapshot;
83
+ export declare function SavedSnapshotToJSONTyped(value?: SavedSnapshot | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,71 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Boat Public API v1
5
+ * 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.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * @export
16
+ */
17
+ export const SavedSnapshotStatusEnum = {
18
+ Saving: 'saving',
19
+ Ready: 'ready',
20
+ Failed: 'failed'
21
+ };
22
+ /**
23
+ * Check if a given object implements the SavedSnapshot interface.
24
+ */
25
+ export function instanceOfSavedSnapshot(value) {
26
+ if (!('name' in value) || value['name'] === undefined)
27
+ return false;
28
+ if (!('status' in value) || value['status'] === undefined)
29
+ return false;
30
+ if (!('sourceSandboxId' in value) || value['sourceSandboxId'] === undefined)
31
+ return false;
32
+ if (!('createdAt' in value) || value['createdAt'] === undefined)
33
+ return false;
34
+ return true;
35
+ }
36
+ export function SavedSnapshotFromJSON(json) {
37
+ return SavedSnapshotFromJSONTyped(json, false);
38
+ }
39
+ export function SavedSnapshotFromJSONTyped(json, ignoreDiscriminator) {
40
+ if (json == null) {
41
+ return json;
42
+ }
43
+ return {
44
+ 'name': json['name'],
45
+ 'status': json['status'],
46
+ 'error': json['error'] == null ? undefined : json['error'],
47
+ 'sourceSandboxId': json['sourceSandboxId'],
48
+ 'snapshotId': json['snapshotId'] == null ? undefined : json['snapshotId'],
49
+ 'type': json['type'] == null ? undefined : json['type'],
50
+ 'sizeBytes': json['sizeBytes'] == null ? undefined : json['sizeBytes'],
51
+ 'createdAt': (new Date(json['createdAt'])),
52
+ };
53
+ }
54
+ export function SavedSnapshotToJSON(json) {
55
+ return SavedSnapshotToJSONTyped(json, false);
56
+ }
57
+ export function SavedSnapshotToJSONTyped(value, ignoreDiscriminator = false) {
58
+ if (value == null) {
59
+ return value;
60
+ }
61
+ return {
62
+ 'name': value['name'],
63
+ 'status': value['status'],
64
+ 'error': value['error'],
65
+ 'sourceSandboxId': value['sourceSandboxId'],
66
+ 'snapshotId': value['snapshotId'],
67
+ 'type': value['type'],
68
+ 'sizeBytes': value['sizeBytes'],
69
+ 'createdAt': value['createdAt'].toISOString(),
70
+ };
71
+ }
@@ -0,0 +1,81 @@
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
+ * What the request's wallet (your active organization, `?org=`, or personal) pays for saved snapshots. 10 are free per wallet; each one above costs $1.70 a month, charged daily from usage. An organization's count includes every member's names billed to it.
14
+ * @export
15
+ * @interface SavedSnapshotAllowance
16
+ */
17
+ export interface SavedSnapshotAllowance {
18
+ /**
19
+ * Organization the numbers are for. null = personal.
20
+ * @type {string}
21
+ * @memberof SavedSnapshotAllowance
22
+ */
23
+ org?: string | null;
24
+ /**
25
+ * That organization's name.
26
+ * @type {string}
27
+ * @memberof SavedSnapshotAllowance
28
+ */
29
+ orgName?: string | null;
30
+ /**
31
+ * Saved snapshots the plan includes: 10 per $20 of plan per seat, never fewer than 10.
32
+ * @type {number}
33
+ * @memberof SavedSnapshotAllowance
34
+ */
35
+ included?: number;
36
+ /**
37
+ * Same value as included. Kept for older clients.
38
+ * @type {number}
39
+ * @memberof SavedSnapshotAllowance
40
+ * @deprecated
41
+ */
42
+ free?: number;
43
+ /**
44
+ * Saved snapshots this wallet keeps.
45
+ * @type {number}
46
+ * @memberof SavedSnapshotAllowance
47
+ */
48
+ used?: number;
49
+ /**
50
+ * Saved snapshots above the included ones.
51
+ * @type {number}
52
+ * @memberof SavedSnapshotAllowance
53
+ */
54
+ extra?: number;
55
+ /**
56
+ * What the extra ones cost per month.
57
+ * @type {number}
58
+ * @memberof SavedSnapshotAllowance
59
+ */
60
+ extraMonthlyDollars?: number;
61
+ /**
62
+ * Boat time the extra ones take per day, in dollars (the daily charge).
63
+ * @type {number}
64
+ * @memberof SavedSnapshotAllowance
65
+ */
66
+ extraDailyDollars?: number;
67
+ /**
68
+ * Monthly price of one extra saved snapshot.
69
+ * @type {number}
70
+ * @memberof SavedSnapshotAllowance
71
+ */
72
+ pricePerExtraMonthlyDollars?: number;
73
+ }
74
+ /**
75
+ * Check if a given object implements the SavedSnapshotAllowance interface.
76
+ */
77
+ export declare function instanceOfSavedSnapshotAllowance(value: object): value is SavedSnapshotAllowance;
78
+ export declare function SavedSnapshotAllowanceFromJSON(json: any): SavedSnapshotAllowance;
79
+ export declare function SavedSnapshotAllowanceFromJSONTyped(json: any, ignoreDiscriminator: boolean): SavedSnapshotAllowance;
80
+ export declare function SavedSnapshotAllowanceToJSON(json: any): SavedSnapshotAllowance;
81
+ export declare function SavedSnapshotAllowanceToJSONTyped(value?: SavedSnapshotAllowance | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,57 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Boat Public API v1
5
+ * 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.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * Check if a given object implements the SavedSnapshotAllowance interface.
16
+ */
17
+ export function instanceOfSavedSnapshotAllowance(value) {
18
+ return true;
19
+ }
20
+ export function SavedSnapshotAllowanceFromJSON(json) {
21
+ return SavedSnapshotAllowanceFromJSONTyped(json, false);
22
+ }
23
+ export function SavedSnapshotAllowanceFromJSONTyped(json, ignoreDiscriminator) {
24
+ if (json == null) {
25
+ return json;
26
+ }
27
+ return {
28
+ 'org': json['org'] == null ? undefined : json['org'],
29
+ 'orgName': json['orgName'] == null ? undefined : json['orgName'],
30
+ 'included': json['included'] == null ? undefined : json['included'],
31
+ 'free': json['free'] == null ? undefined : json['free'],
32
+ 'used': json['used'] == null ? undefined : json['used'],
33
+ 'extra': json['extra'] == null ? undefined : json['extra'],
34
+ 'extraMonthlyDollars': json['extraMonthlyDollars'] == null ? undefined : json['extraMonthlyDollars'],
35
+ 'extraDailyDollars': json['extraDailyDollars'] == null ? undefined : json['extraDailyDollars'],
36
+ 'pricePerExtraMonthlyDollars': json['pricePerExtraMonthlyDollars'] == null ? undefined : json['pricePerExtraMonthlyDollars'],
37
+ };
38
+ }
39
+ export function SavedSnapshotAllowanceToJSON(json) {
40
+ return SavedSnapshotAllowanceToJSONTyped(json, false);
41
+ }
42
+ export function SavedSnapshotAllowanceToJSONTyped(value, ignoreDiscriminator = false) {
43
+ if (value == null) {
44
+ return value;
45
+ }
46
+ return {
47
+ 'org': value['org'],
48
+ 'orgName': value['orgName'],
49
+ 'included': value['included'],
50
+ 'free': value['free'],
51
+ 'used': value['used'],
52
+ 'extra': value['extra'],
53
+ 'extraMonthlyDollars': value['extraMonthlyDollars'],
54
+ 'extraDailyDollars': value['extraDailyDollars'],
55
+ 'pricePerExtraMonthlyDollars': value['pricePerExtraMonthlyDollars'],
56
+ };
57
+ }