@boatdev/sdk 1.0.0 → 1.0.1

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 (226) hide show
  1. package/.openapi-generator/FILES +20 -0
  2. package/dist/apis/BoatApi.d.ts +36 -2
  3. package/dist/apis/BoatApi.js +86 -2
  4. package/dist/esm/apis/BoatApi.d.ts +36 -2
  5. package/dist/esm/apis/BoatApi.js +86 -2
  6. package/dist/esm/models/ActiveOrgResponse.d.ts +52 -0
  7. package/dist/esm/models/ActiveOrgResponse.js +58 -0
  8. package/dist/esm/models/ActiveOrgResponseAllOfActive.d.ts +52 -0
  9. package/dist/esm/models/ActiveOrgResponseAllOfActive.js +58 -0
  10. package/dist/esm/models/ActiveOrgUpdateRequest.d.ts +32 -0
  11. package/dist/esm/models/ActiveOrgUpdateRequest.js +43 -0
  12. package/dist/esm/models/CommandResponse.d.ts +6 -0
  13. package/dist/esm/models/CommandResponse.js +2 -0
  14. package/dist/esm/models/CommandStatusResponse.d.ts +6 -0
  15. package/dist/esm/models/CommandStatusResponse.js +2 -0
  16. package/dist/esm/models/CreateSandboxRequest.d.ts +2 -3
  17. package/dist/esm/models/CreateSandboxRequest.js +1 -2
  18. package/dist/esm/models/CreateSandboxResponse.d.ts +8 -1
  19. package/dist/esm/models/CreateSandboxResponse.js +4 -1
  20. package/dist/esm/models/ForkRequest.d.ts +1 -2
  21. package/dist/esm/models/ForkRequest.js +1 -2
  22. package/dist/esm/models/LimitsFields.d.ts +80 -0
  23. package/dist/esm/models/LimitsFields.js +28 -0
  24. package/dist/esm/models/LimitsFieldsCurrentLimits.d.ts +6 -0
  25. package/dist/esm/models/LimitsFieldsCurrentLimits.js +2 -0
  26. package/dist/esm/models/LimitsFieldsGiftLimit.d.ts +50 -0
  27. package/dist/esm/models/LimitsFieldsGiftLimit.js +47 -0
  28. package/dist/esm/models/LimitsFieldsSandboxPlanTiersInner.d.ts +80 -0
  29. package/dist/esm/models/LimitsFieldsSandboxPlanTiersInner.js +57 -0
  30. package/dist/esm/models/LimitsResponse.d.ts +80 -0
  31. package/dist/esm/models/LimitsResponse.js +28 -0
  32. package/dist/esm/models/MeResponseAllOfUser.d.ts +109 -0
  33. package/dist/esm/models/MeResponseAllOfUser.js +47 -0
  34. package/dist/esm/models/Org.d.ts +84 -0
  35. package/dist/esm/models/Org.js +79 -0
  36. package/dist/esm/models/OrgListResponse.d.ts +58 -0
  37. package/dist/esm/models/OrgListResponse.js +62 -0
  38. package/dist/esm/models/PromptEventData.d.ts +20 -0
  39. package/dist/esm/models/PromptEventData.js +8 -0
  40. package/dist/esm/models/PromptEventDataAttachmentsInner.d.ts +44 -0
  41. package/dist/esm/models/PromptEventDataAttachmentsInner.js +45 -0
  42. package/dist/esm/models/PromptEventDataCitationsInner.d.ts +50 -0
  43. package/dist/esm/models/PromptEventDataCitationsInner.js +47 -0
  44. package/dist/esm/models/RepoSelectionResponse.d.ts +6 -0
  45. package/dist/esm/models/RepoSelectionResponse.js +2 -0
  46. package/dist/esm/models/ReposResponse.d.ts +6 -0
  47. package/dist/esm/models/ReposResponse.js +2 -0
  48. package/dist/esm/models/Repository.d.ts +18 -0
  49. package/dist/esm/models/Repository.js +6 -0
  50. package/dist/esm/models/ResponseEventData.d.ts +6 -0
  51. package/dist/esm/models/ResponseEventData.js +2 -0
  52. package/dist/esm/models/ResumeRequest.d.ts +1 -2
  53. package/dist/esm/models/ResumeRequest.js +1 -2
  54. package/dist/esm/models/Sandbox.d.ts +43 -4
  55. package/dist/esm/models/Sandbox.js +21 -3
  56. package/dist/esm/models/SandboxActionResponse.d.ts +12 -0
  57. package/dist/esm/models/SandboxActionResponse.js +4 -0
  58. package/dist/esm/models/SandboxEnvironment.d.ts +12 -0
  59. package/dist/esm/models/SandboxEnvironment.js +4 -0
  60. package/dist/esm/models/SandboxEnvironmentListResponse.d.ts +26 -0
  61. package/dist/esm/models/SandboxEnvironmentListResponse.js +16 -0
  62. package/dist/esm/models/SandboxInfoResponse.d.ts +6 -0
  63. package/dist/esm/models/SandboxInfoResponse.js +2 -0
  64. package/dist/esm/models/SandboxTeam.d.ts +38 -0
  65. package/dist/esm/models/SandboxTeam.js +47 -0
  66. package/dist/esm/models/SandboxUsageResponse.d.ts +1 -2
  67. package/dist/esm/models/SandboxUsageResponse.js +1 -2
  68. package/dist/esm/models/SecretsResponse.d.ts +6 -0
  69. package/dist/esm/models/SecretsResponse.js +2 -0
  70. package/dist/esm/models/SelectedRepository.d.ts +18 -0
  71. package/dist/esm/models/SelectedRepository.js +6 -0
  72. package/dist/esm/models/SnapshotChunk.d.ts +2 -2
  73. package/dist/esm/models/SnapshotSummary.d.ts +3 -3
  74. package/dist/esm/models/SshKeyResponse.d.ts +12 -0
  75. package/dist/esm/models/SshKeyResponse.js +4 -0
  76. package/dist/esm/models/UpgradeSandboxEnvironmentResponse.d.ts +18 -0
  77. package/dist/esm/models/UpgradeSandboxEnvironmentResponse.js +6 -0
  78. package/dist/esm/models/index.d.ts +10 -0
  79. package/dist/esm/models/index.js +10 -0
  80. package/dist/models/ActiveOrgResponse.d.ts +52 -0
  81. package/dist/models/ActiveOrgResponse.js +66 -0
  82. package/dist/models/ActiveOrgResponseAllOfActive.d.ts +52 -0
  83. package/dist/models/ActiveOrgResponseAllOfActive.js +66 -0
  84. package/dist/models/ActiveOrgUpdateRequest.d.ts +32 -0
  85. package/dist/models/ActiveOrgUpdateRequest.js +50 -0
  86. package/dist/models/CommandResponse.d.ts +6 -0
  87. package/dist/models/CommandResponse.js +2 -0
  88. package/dist/models/CommandStatusResponse.d.ts +6 -0
  89. package/dist/models/CommandStatusResponse.js +2 -0
  90. package/dist/models/CreateSandboxRequest.d.ts +2 -3
  91. package/dist/models/CreateSandboxRequest.js +1 -2
  92. package/dist/models/CreateSandboxResponse.d.ts +8 -1
  93. package/dist/models/CreateSandboxResponse.js +4 -1
  94. package/dist/models/ForkRequest.d.ts +1 -2
  95. package/dist/models/ForkRequest.js +1 -2
  96. package/dist/models/LimitsFields.d.ts +80 -0
  97. package/dist/models/LimitsFields.js +28 -0
  98. package/dist/models/LimitsFieldsCurrentLimits.d.ts +6 -0
  99. package/dist/models/LimitsFieldsCurrentLimits.js +2 -0
  100. package/dist/models/LimitsFieldsGiftLimit.d.ts +50 -0
  101. package/dist/models/LimitsFieldsGiftLimit.js +54 -0
  102. package/dist/models/LimitsFieldsSandboxPlanTiersInner.d.ts +80 -0
  103. package/dist/models/LimitsFieldsSandboxPlanTiersInner.js +64 -0
  104. package/dist/models/LimitsResponse.d.ts +80 -0
  105. package/dist/models/LimitsResponse.js +28 -0
  106. package/dist/models/MeResponseAllOfUser.d.ts +109 -0
  107. package/dist/models/MeResponseAllOfUser.js +48 -0
  108. package/dist/models/Org.d.ts +84 -0
  109. package/dist/models/Org.js +87 -0
  110. package/dist/models/OrgListResponse.d.ts +58 -0
  111. package/dist/models/OrgListResponse.js +70 -0
  112. package/dist/models/PromptEventData.d.ts +20 -0
  113. package/dist/models/PromptEventData.js +8 -0
  114. package/dist/models/PromptEventDataAttachmentsInner.d.ts +44 -0
  115. package/dist/models/PromptEventDataAttachmentsInner.js +52 -0
  116. package/dist/models/PromptEventDataCitationsInner.d.ts +50 -0
  117. package/dist/models/PromptEventDataCitationsInner.js +54 -0
  118. package/dist/models/RepoSelectionResponse.d.ts +6 -0
  119. package/dist/models/RepoSelectionResponse.js +2 -0
  120. package/dist/models/ReposResponse.d.ts +6 -0
  121. package/dist/models/ReposResponse.js +2 -0
  122. package/dist/models/Repository.d.ts +18 -0
  123. package/dist/models/Repository.js +6 -0
  124. package/dist/models/ResponseEventData.d.ts +6 -0
  125. package/dist/models/ResponseEventData.js +2 -0
  126. package/dist/models/ResumeRequest.d.ts +1 -2
  127. package/dist/models/ResumeRequest.js +1 -2
  128. package/dist/models/Sandbox.d.ts +43 -4
  129. package/dist/models/Sandbox.js +22 -4
  130. package/dist/models/SandboxActionResponse.d.ts +12 -0
  131. package/dist/models/SandboxActionResponse.js +4 -0
  132. package/dist/models/SandboxEnvironment.d.ts +12 -0
  133. package/dist/models/SandboxEnvironment.js +4 -0
  134. package/dist/models/SandboxEnvironmentListResponse.d.ts +26 -0
  135. package/dist/models/SandboxEnvironmentListResponse.js +17 -0
  136. package/dist/models/SandboxInfoResponse.d.ts +6 -0
  137. package/dist/models/SandboxInfoResponse.js +2 -0
  138. package/dist/models/SandboxTeam.d.ts +38 -0
  139. package/dist/models/SandboxTeam.js +54 -0
  140. package/dist/models/SandboxUsageResponse.d.ts +1 -2
  141. package/dist/models/SandboxUsageResponse.js +1 -2
  142. package/dist/models/SecretsResponse.d.ts +6 -0
  143. package/dist/models/SecretsResponse.js +2 -0
  144. package/dist/models/SelectedRepository.d.ts +18 -0
  145. package/dist/models/SelectedRepository.js +6 -0
  146. package/dist/models/SnapshotChunk.d.ts +2 -2
  147. package/dist/models/SnapshotSummary.d.ts +3 -3
  148. package/dist/models/SshKeyResponse.d.ts +12 -0
  149. package/dist/models/SshKeyResponse.js +4 -0
  150. package/dist/models/UpgradeSandboxEnvironmentResponse.d.ts +18 -0
  151. package/dist/models/UpgradeSandboxEnvironmentResponse.js +6 -0
  152. package/dist/models/index.d.ts +10 -0
  153. package/dist/models/index.js +10 -0
  154. package/docs/ActiveOrgResponse.md +36 -0
  155. package/docs/ActiveOrgResponseAllOfActive.md +36 -0
  156. package/docs/ActiveOrgUpdateRequest.md +32 -0
  157. package/docs/BoatApi.md +148 -7
  158. package/docs/Command200Response.md +2 -0
  159. package/docs/CommandResponse.md +2 -0
  160. package/docs/CommandStatusResponse.md +2 -0
  161. package/docs/CreateSandboxResponse.md +2 -0
  162. package/docs/LimitsFields.md +26 -0
  163. package/docs/LimitsFieldsCurrentLimits.md +2 -0
  164. package/docs/LimitsFieldsGiftLimit.md +39 -0
  165. package/docs/LimitsFieldsSandboxPlanTiersInner.md +48 -0
  166. package/docs/LimitsResponse.md +26 -0
  167. package/docs/MeResponseAllOfUser.md +30 -0
  168. package/docs/Org.md +44 -0
  169. package/docs/OrgListResponse.md +38 -0
  170. package/docs/PromptEventData.md +6 -0
  171. package/docs/PromptEventDataAttachmentsInner.md +36 -0
  172. package/docs/PromptEventDataCitationsInner.md +38 -0
  173. package/docs/RepoSelectionResponse.md +2 -0
  174. package/docs/ReposResponse.md +2 -0
  175. package/docs/Repository.md +6 -0
  176. package/docs/ResponseEventData.md +2 -0
  177. package/docs/Sandbox.md +10 -0
  178. package/docs/SandboxActionResponse.md +4 -0
  179. package/docs/SandboxEnvironment.md +4 -0
  180. package/docs/SandboxEnvironmentListResponse.md +4 -0
  181. package/docs/SandboxInfoResponse.md +2 -0
  182. package/docs/SandboxTeam.md +35 -0
  183. package/docs/SecretsResponse.md +2 -0
  184. package/docs/SelectedRepository.md +6 -0
  185. package/docs/SshKeyResponse.md +4 -0
  186. package/docs/UpgradeSandboxEnvironmentResponse.md +6 -0
  187. package/package.json +1 -1
  188. package/src/apis/BoatApi.ts +125 -2
  189. package/src/models/ActiveOrgResponse.ts +102 -0
  190. package/src/models/ActiveOrgResponseAllOfActive.ts +95 -0
  191. package/src/models/ActiveOrgUpdateRequest.ts +66 -0
  192. package/src/models/CommandResponse.ts +8 -0
  193. package/src/models/CommandStatusResponse.ts +8 -0
  194. package/src/models/CreateSandboxRequest.ts +3 -4
  195. package/src/models/CreateSandboxResponse.ts +11 -2
  196. package/src/models/ForkRequest.ts +2 -3
  197. package/src/models/LimitsFields.ts +118 -0
  198. package/src/models/LimitsFieldsCurrentLimits.ts +8 -0
  199. package/src/models/LimitsFieldsGiftLimit.ts +89 -0
  200. package/src/models/LimitsFieldsSandboxPlanTiersInner.ts +129 -0
  201. package/src/models/LimitsResponse.ts +118 -0
  202. package/src/models/MeResponseAllOfUser.ts +143 -0
  203. package/src/models/Org.ts +139 -0
  204. package/src/models/OrgListResponse.ts +111 -0
  205. package/src/models/PromptEventData.ts +39 -0
  206. package/src/models/PromptEventDataAttachmentsInner.ts +81 -0
  207. package/src/models/PromptEventDataCitationsInner.ts +89 -0
  208. package/src/models/RepoSelectionResponse.ts +8 -0
  209. package/src/models/ReposResponse.ts +8 -0
  210. package/src/models/Repository.ts +24 -0
  211. package/src/models/ResponseEventData.ts +8 -0
  212. package/src/models/ResumeRequest.ts +2 -3
  213. package/src/models/Sandbox.ts +63 -6
  214. package/src/models/SandboxActionResponse.ts +16 -0
  215. package/src/models/SandboxEnvironment.ts +16 -0
  216. package/src/models/SandboxEnvironmentListResponse.ts +34 -0
  217. package/src/models/SandboxInfoResponse.ts +8 -0
  218. package/src/models/SandboxTeam.ts +75 -0
  219. package/src/models/SandboxUsageResponse.ts +2 -3
  220. package/src/models/SecretsResponse.ts +8 -0
  221. package/src/models/SelectedRepository.ts +24 -0
  222. package/src/models/SnapshotChunk.ts +2 -2
  223. package/src/models/SnapshotSummary.ts +3 -3
  224. package/src/models/SshKeyResponse.ts +16 -0
  225. package/src/models/UpgradeSandboxEnvironmentResponse.ts +24 -0
  226. package/src/models/index.ts +10 -0
@@ -0,0 +1,58 @@
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 { Org } from './Org';
13
+ /**
14
+ *
15
+ * @export
16
+ * @interface OrgListResponse
17
+ */
18
+ export interface OrgListResponse {
19
+ /**
20
+ *
21
+ * @type {boolean}
22
+ * @memberof OrgListResponse
23
+ */
24
+ ok: boolean;
25
+ /**
26
+ *
27
+ * @type {OrgListResponseTypeEnum}
28
+ * @memberof OrgListResponse
29
+ */
30
+ type: OrgListResponseTypeEnum;
31
+ /**
32
+ * Whether this account ever set its active wallet. `false` means personal by default, never a choice.
33
+ * @type {boolean}
34
+ * @memberof OrgListResponse
35
+ */
36
+ activeWalletChosen: boolean;
37
+ /**
38
+ *
39
+ * @type {Array<Org>}
40
+ * @memberof OrgListResponse
41
+ */
42
+ orgs: Array<Org>;
43
+ }
44
+ /**
45
+ * @export
46
+ */
47
+ export declare const OrgListResponseTypeEnum: {
48
+ readonly OrgList: 'org.list';
49
+ };
50
+ export type OrgListResponseTypeEnum = typeof OrgListResponseTypeEnum[keyof typeof OrgListResponseTypeEnum];
51
+ /**
52
+ * Check if a given object implements the OrgListResponse interface.
53
+ */
54
+ export declare function instanceOfOrgListResponse(value: object): value is OrgListResponse;
55
+ export declare function OrgListResponseFromJSON(json: any): OrgListResponse;
56
+ export declare function OrgListResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): OrgListResponse;
57
+ export declare function OrgListResponseToJSON(json: any): OrgListResponse;
58
+ export declare function OrgListResponseToJSONTyped(value?: OrgListResponse | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,62 @@
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
+ import { OrgFromJSON, OrgToJSON, } from './Org';
15
+ /**
16
+ * @export
17
+ */
18
+ export const OrgListResponseTypeEnum = {
19
+ OrgList: 'org.list'
20
+ };
21
+ /**
22
+ * Check if a given object implements the OrgListResponse interface.
23
+ */
24
+ export function instanceOfOrgListResponse(value) {
25
+ if (!('ok' in value) || value['ok'] === undefined)
26
+ return false;
27
+ if (!('type' in value) || value['type'] === undefined)
28
+ return false;
29
+ if (!('activeWalletChosen' in value) || value['activeWalletChosen'] === undefined)
30
+ return false;
31
+ if (!('orgs' in value) || value['orgs'] === undefined)
32
+ return false;
33
+ return true;
34
+ }
35
+ export function OrgListResponseFromJSON(json) {
36
+ return OrgListResponseFromJSONTyped(json, false);
37
+ }
38
+ export function OrgListResponseFromJSONTyped(json, ignoreDiscriminator) {
39
+ if (json == null) {
40
+ return json;
41
+ }
42
+ return {
43
+ 'ok': json['ok'],
44
+ 'type': json['type'],
45
+ 'activeWalletChosen': json['activeWalletChosen'],
46
+ 'orgs': (json['orgs'].map(OrgFromJSON)),
47
+ };
48
+ }
49
+ export function OrgListResponseToJSON(json) {
50
+ return OrgListResponseToJSONTyped(json, false);
51
+ }
52
+ export function OrgListResponseToJSONTyped(value, ignoreDiscriminator = false) {
53
+ if (value == null) {
54
+ return value;
55
+ }
56
+ return {
57
+ 'ok': value['ok'],
58
+ 'type': value['type'],
59
+ 'activeWalletChosen': value['activeWalletChosen'],
60
+ 'orgs': (value['orgs'].map(OrgToJSON)),
61
+ };
62
+ }
@@ -9,6 +9,8 @@
9
9
  * https://openapi-generator.tech
10
10
  * Do not edit the class manually.
11
11
  */
12
+ import type { PromptEventDataAttachmentsInner } from './PromptEventDataAttachmentsInner';
13
+ import type { PromptEventDataCitationsInner } from './PromptEventDataCitationsInner';
12
14
  /**
13
15
  *
14
16
  * @export
@@ -33,6 +35,24 @@ export interface PromptEventData {
33
35
  * @memberof PromptEventData
34
36
  */
35
37
  isReverted?: boolean;
38
+ /**
39
+ * Why the prompt failed. Present only when `status` is `failed`.
40
+ * @type {string}
41
+ * @memberof PromptEventData
42
+ */
43
+ error?: string;
44
+ /**
45
+ *
46
+ * @type {Array<PromptEventDataAttachmentsInner>}
47
+ * @memberof PromptEventData
48
+ */
49
+ attachments?: Array<PromptEventDataAttachmentsInner>;
50
+ /**
51
+ * Earlier chat events quoted in this prompt.
52
+ * @type {Array<PromptEventDataCitationsInner>}
53
+ * @memberof PromptEventData
54
+ */
55
+ citations?: Array<PromptEventDataCitationsInner>;
36
56
  }
37
57
  /**
38
58
  * @export
@@ -11,6 +11,8 @@
11
11
  * https://openapi-generator.tech
12
12
  * Do not edit the class manually.
13
13
  */
14
+ import { PromptEventDataAttachmentsInnerFromJSON, PromptEventDataAttachmentsInnerToJSON, } from './PromptEventDataAttachmentsInner';
15
+ import { PromptEventDataCitationsInnerFromJSON, PromptEventDataCitationsInnerToJSON, } from './PromptEventDataCitationsInner';
14
16
  /**
15
17
  * @export
16
18
  */
@@ -43,6 +45,9 @@ export function PromptEventDataFromJSONTyped(json, ignoreDiscriminator) {
43
45
  'prompt': json['prompt'],
44
46
  'status': json['status'],
45
47
  'isReverted': json['is_reverted'] == null ? undefined : json['is_reverted'],
48
+ 'error': json['error'] == null ? undefined : json['error'],
49
+ 'attachments': json['attachments'] == null ? undefined : (json['attachments'].map(PromptEventDataAttachmentsInnerFromJSON)),
50
+ 'citations': json['citations'] == null ? undefined : (json['citations'].map(PromptEventDataCitationsInnerFromJSON)),
46
51
  };
47
52
  }
48
53
  export function PromptEventDataToJSON(json) {
@@ -56,5 +61,8 @@ export function PromptEventDataToJSONTyped(value, ignoreDiscriminator = false) {
56
61
  'prompt': value['prompt'],
57
62
  'status': value['status'],
58
63
  'is_reverted': value['isReverted'],
64
+ 'error': value['error'],
65
+ 'attachments': value['attachments'] == null ? undefined : (value['attachments'].map(PromptEventDataAttachmentsInnerToJSON)),
66
+ 'citations': value['citations'] == null ? undefined : (value['citations'].map(PromptEventDataCitationsInnerToJSON)),
59
67
  };
60
68
  }
@@ -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
+ *
14
+ * @export
15
+ * @interface PromptEventDataAttachmentsInner
16
+ */
17
+ export interface PromptEventDataAttachmentsInner {
18
+ /**
19
+ *
20
+ * @type {string}
21
+ * @memberof PromptEventDataAttachmentsInner
22
+ */
23
+ filename?: string;
24
+ /**
25
+ *
26
+ * @type {string}
27
+ * @memberof PromptEventDataAttachmentsInner
28
+ */
29
+ mimeType?: string;
30
+ /**
31
+ *
32
+ * @type {string}
33
+ * @memberof PromptEventDataAttachmentsInner
34
+ */
35
+ base64Data?: string;
36
+ }
37
+ /**
38
+ * Check if a given object implements the PromptEventDataAttachmentsInner interface.
39
+ */
40
+ export declare function instanceOfPromptEventDataAttachmentsInner(value: object): value is PromptEventDataAttachmentsInner;
41
+ export declare function PromptEventDataAttachmentsInnerFromJSON(json: any): PromptEventDataAttachmentsInner;
42
+ export declare function PromptEventDataAttachmentsInnerFromJSONTyped(json: any, ignoreDiscriminator: boolean): PromptEventDataAttachmentsInner;
43
+ export declare function PromptEventDataAttachmentsInnerToJSON(json: any): PromptEventDataAttachmentsInner;
44
+ export declare function PromptEventDataAttachmentsInnerToJSONTyped(value?: PromptEventDataAttachmentsInner | null, ignoreDiscriminator?: boolean): any;
@@ -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 PromptEventDataAttachmentsInner interface.
16
+ */
17
+ export function instanceOfPromptEventDataAttachmentsInner(value) {
18
+ return true;
19
+ }
20
+ export function PromptEventDataAttachmentsInnerFromJSON(json) {
21
+ return PromptEventDataAttachmentsInnerFromJSONTyped(json, false);
22
+ }
23
+ export function PromptEventDataAttachmentsInnerFromJSONTyped(json, ignoreDiscriminator) {
24
+ if (json == null) {
25
+ return json;
26
+ }
27
+ return {
28
+ 'filename': json['filename'] == null ? undefined : json['filename'],
29
+ 'mimeType': json['mimeType'] == null ? undefined : json['mimeType'],
30
+ 'base64Data': json['base64Data'] == null ? undefined : json['base64Data'],
31
+ };
32
+ }
33
+ export function PromptEventDataAttachmentsInnerToJSON(json) {
34
+ return PromptEventDataAttachmentsInnerToJSONTyped(json, false);
35
+ }
36
+ export function PromptEventDataAttachmentsInnerToJSONTyped(value, ignoreDiscriminator = false) {
37
+ if (value == null) {
38
+ return value;
39
+ }
40
+ return {
41
+ 'filename': value['filename'],
42
+ 'mimeType': value['mimeType'],
43
+ 'base64Data': value['base64Data'],
44
+ };
45
+ }
@@ -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 PromptEventDataCitationsInner
16
+ */
17
+ export interface PromptEventDataCitationsInner {
18
+ /**
19
+ *
20
+ * @type {string}
21
+ * @memberof PromptEventDataCitationsInner
22
+ */
23
+ eventId?: string;
24
+ /**
25
+ *
26
+ * @type {string}
27
+ * @memberof PromptEventDataCitationsInner
28
+ */
29
+ type?: string;
30
+ /**
31
+ *
32
+ * @type {string}
33
+ * @memberof PromptEventDataCitationsInner
34
+ */
35
+ author?: string;
36
+ /**
37
+ *
38
+ * @type {string}
39
+ * @memberof PromptEventDataCitationsInner
40
+ */
41
+ text?: string;
42
+ }
43
+ /**
44
+ * Check if a given object implements the PromptEventDataCitationsInner interface.
45
+ */
46
+ export declare function instanceOfPromptEventDataCitationsInner(value: object): value is PromptEventDataCitationsInner;
47
+ export declare function PromptEventDataCitationsInnerFromJSON(json: any): PromptEventDataCitationsInner;
48
+ export declare function PromptEventDataCitationsInnerFromJSONTyped(json: any, ignoreDiscriminator: boolean): PromptEventDataCitationsInner;
49
+ export declare function PromptEventDataCitationsInnerToJSON(json: any): PromptEventDataCitationsInner;
50
+ export declare function PromptEventDataCitationsInnerToJSONTyped(value?: PromptEventDataCitationsInner | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,47 @@
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 PromptEventDataCitationsInner interface.
16
+ */
17
+ export function instanceOfPromptEventDataCitationsInner(value) {
18
+ return true;
19
+ }
20
+ export function PromptEventDataCitationsInnerFromJSON(json) {
21
+ return PromptEventDataCitationsInnerFromJSONTyped(json, false);
22
+ }
23
+ export function PromptEventDataCitationsInnerFromJSONTyped(json, ignoreDiscriminator) {
24
+ if (json == null) {
25
+ return json;
26
+ }
27
+ return {
28
+ 'eventId': json['eventId'] == null ? undefined : json['eventId'],
29
+ 'type': json['type'] == null ? undefined : json['type'],
30
+ 'author': json['author'] == null ? undefined : json['author'],
31
+ 'text': json['text'] == null ? undefined : json['text'],
32
+ };
33
+ }
34
+ export function PromptEventDataCitationsInnerToJSON(json) {
35
+ return PromptEventDataCitationsInnerToJSONTyped(json, false);
36
+ }
37
+ export function PromptEventDataCitationsInnerToJSONTyped(value, ignoreDiscriminator = false) {
38
+ if (value == null) {
39
+ return value;
40
+ }
41
+ return {
42
+ 'eventId': value['eventId'],
43
+ 'type': value['type'],
44
+ 'author': value['author'],
45
+ 'text': value['text'],
46
+ };
47
+ }
@@ -40,6 +40,12 @@ export interface RepoSelectionResponse {
40
40
  * @memberof RepoSelectionResponse
41
41
  */
42
42
  environmentId: string;
43
+ /**
44
+ * Id of the default environment. `environmentId` is the id of its new version.
45
+ * @type {string}
46
+ * @memberof RepoSelectionResponse
47
+ */
48
+ subenvironmentId?: string | null;
43
49
  /**
44
50
  *
45
51
  * @type {Array<SelectedRepository>}
@@ -40,6 +40,7 @@ export function RepoSelectionResponseFromJSONTyped(json, ignoreDiscriminator) {
40
40
  'type': json['type'],
41
41
  'success': json['success'],
42
42
  'environmentId': json['environmentId'],
43
+ 'subenvironmentId': json['subenvironmentId'] == null ? undefined : json['subenvironmentId'],
43
44
  'selectedRepositories': (json['selectedRepositories'].map(SelectedRepositoryFromJSON)),
44
45
  };
45
46
  }
@@ -55,6 +56,7 @@ export function RepoSelectionResponseToJSONTyped(value, ignoreDiscriminator = fa
55
56
  'type': value['type'],
56
57
  'success': value['success'],
57
58
  'environmentId': value['environmentId'],
59
+ 'subenvironmentId': value['subenvironmentId'],
58
60
  'selectedRepositories': (value['selectedRepositories'].map(SelectedRepositoryToJSON)),
59
61
  };
60
62
  }
@@ -42,6 +42,12 @@ export interface ReposResponse {
42
42
  * @memberof ReposResponse
43
43
  */
44
44
  environmentId: string;
45
+ /**
46
+ * Id of the default environment. `environmentId` is the id of its latest version.
47
+ * @type {string}
48
+ * @memberof ReposResponse
49
+ */
50
+ subenvironmentId?: string | null;
45
51
  /**
46
52
  *
47
53
  * @type {Array<SelectedRepository>}
@@ -42,6 +42,7 @@ export function ReposResponseFromJSONTyped(json, ignoreDiscriminator) {
42
42
  'type': json['type'],
43
43
  'installations': (json['installations'].map(RepositoryInstallationFromJSON)),
44
44
  'environmentId': json['environmentId'],
45
+ 'subenvironmentId': json['subenvironmentId'] == null ? undefined : json['subenvironmentId'],
45
46
  'selectedRepositories': (json['selectedRepositories'].map(SelectedRepositoryFromJSON)),
46
47
  'pageInfo': json['pageInfo'] == null ? undefined : PageInfoFromJSON(json['pageInfo']),
47
48
  };
@@ -58,6 +59,7 @@ export function ReposResponseToJSONTyped(value, ignoreDiscriminator = false) {
58
59
  'type': value['type'],
59
60
  'installations': (value['installations'].map(RepositoryInstallationToJSON)),
60
61
  'environmentId': value['environmentId'],
62
+ 'subenvironmentId': value['subenvironmentId'],
61
63
  'selectedRepositories': (value['selectedRepositories'].map(SelectedRepositoryToJSON)),
62
64
  'pageInfo': PageInfoToJSON(value['pageInfo']),
63
65
  };
@@ -40,6 +40,18 @@ export interface Repository {
40
40
  * @memberof Repository
41
41
  */
42
42
  fullName?: string;
43
+ /**
44
+ *
45
+ * @type {string}
46
+ * @memberof Repository
47
+ */
48
+ description?: string | null;
49
+ /**
50
+ *
51
+ * @type {string}
52
+ * @memberof Repository
53
+ */
54
+ url?: string;
43
55
  /**
44
56
  *
45
57
  * @type {boolean}
@@ -58,6 +70,12 @@ export interface Repository {
58
70
  * @memberof Repository
59
71
  */
60
72
  pushedAt?: Date | null;
73
+ /**
74
+ * Reserved; always null.
75
+ * @type {Date}
76
+ * @memberof Repository
77
+ */
78
+ lastUserCommitAt?: Date | null;
61
79
  }
62
80
  /**
63
81
  * Check if a given object implements the Repository interface.
@@ -30,9 +30,12 @@ export function RepositoryFromJSONTyped(json, ignoreDiscriminator) {
30
30
  'databaseId': json['databaseId'] == null ? undefined : json['databaseId'],
31
31
  'name': json['name'] == null ? undefined : json['name'],
32
32
  'fullName': json['fullName'] == null ? undefined : json['fullName'],
33
+ 'description': json['description'] == null ? undefined : json['description'],
34
+ 'url': json['url'] == null ? undefined : json['url'],
33
35
  '_private': json['private'] == null ? undefined : json['private'],
34
36
  'permissions': json['permissions'] == null ? undefined : json['permissions'],
35
37
  'pushedAt': json['pushedAt'] == null ? undefined : (new Date(json['pushedAt'])),
38
+ 'lastUserCommitAt': json['lastUserCommitAt'] == null ? undefined : (new Date(json['lastUserCommitAt'])),
36
39
  };
37
40
  }
38
41
  export function RepositoryToJSON(json) {
@@ -48,8 +51,11 @@ export function RepositoryToJSONTyped(value, ignoreDiscriminator = false) {
48
51
  'databaseId': value['databaseId'],
49
52
  'name': value['name'],
50
53
  'fullName': value['fullName'],
54
+ 'description': value['description'],
55
+ 'url': value['url'],
51
56
  'private': value['_private'],
52
57
  'permissions': value['permissions'],
53
58
  'pushedAt': value['pushedAt'] == null ? value['pushedAt'] : value['pushedAt'].toISOString(),
59
+ 'lastUserCommitAt': value['lastUserCommitAt'] == null ? value['lastUserCommitAt'] : value['lastUserCommitAt'].toISOString(),
54
60
  };
55
61
  }
@@ -41,6 +41,12 @@ export interface ResponseEventData {
41
41
  * @memberof ResponseEventData
42
42
  */
43
43
  isStreaming?: boolean;
44
+ /**
45
+ *
46
+ * @type {boolean}
47
+ * @memberof ResponseEventData
48
+ */
49
+ isReverted?: boolean;
44
50
  }
45
51
  /**
46
52
  * Check if a given object implements the ResponseEventData interface.
@@ -31,6 +31,7 @@ export function ResponseEventDataFromJSONTyped(json, ignoreDiscriminator) {
31
31
  'model': json['model'] == null ? undefined : json['model'],
32
32
  'tools': json['tools'] == null ? undefined : json['tools'],
33
33
  'isStreaming': json['is_streaming'] == null ? undefined : json['is_streaming'],
34
+ 'isReverted': json['is_reverted'] == null ? undefined : json['is_reverted'],
34
35
  };
35
36
  }
36
37
  export function ResponseEventDataToJSON(json) {
@@ -45,5 +46,6 @@ export function ResponseEventDataToJSONTyped(value, ignoreDiscriminator = false)
45
46
  'model': value['model'],
46
47
  'tools': value['tools'],
47
48
  'is_streaming': value['isStreaming'],
49
+ 'is_reverted': value['isReverted'],
48
50
  };
49
51
  }
@@ -16,7 +16,7 @@
16
16
  */
17
17
  export interface ResumeRequest {
18
18
  /**
19
- * Resume onto a different machine size. Omit to keep the sandbox's current type. A resume already restores onto a fresh machine, so changing size costs nothing extra. Shrinking is rejected with `type_too_small` when the sandbox's data would not fit the smaller disk. `xlarge` requires the effective $100 plan or higher and an explicit bare-metal operator allocation.
19
+ * Resume onto a different machine size. Omit to keep the sandbox's current type. A resume already restores onto a fresh machine, so changing size costs nothing extra. Shrinking is rejected with `type_too_small` when the sandbox's data would not fit the smaller disk.
20
20
  * @type {ResumeRequestTypeEnum}
21
21
  * @memberof ResumeRequest
22
22
  */
@@ -55,7 +55,6 @@ export declare const ResumeRequestTypeEnum: {
55
55
  readonly Small: 'small';
56
56
  readonly Default: 'default';
57
57
  readonly Large: 'large';
58
- readonly Xlarge: 'xlarge';
59
58
  };
60
59
  export type ResumeRequestTypeEnum = typeof ResumeRequestTypeEnum[keyof typeof ResumeRequestTypeEnum];
61
60
  /**
@@ -17,8 +17,7 @@
17
17
  export const ResumeRequestTypeEnum = {
18
18
  Small: 'small',
19
19
  Default: 'default',
20
- Large: 'large',
21
- Xlarge: 'xlarge'
20
+ Large: 'large'
22
21
  };
23
22
  /**
24
23
  * Check if a given object implements the ResumeRequest interface.
@@ -9,6 +9,7 @@
9
9
  * https://openapi-generator.tech
10
10
  * Do not edit the class manually.
11
11
  */
12
+ import type { SandboxTeam } from './SandboxTeam';
12
13
  /**
13
14
  *
14
15
  * @export
@@ -28,13 +29,19 @@ export interface Sandbox {
28
29
  */
29
30
  name: string;
30
31
  /**
31
- *
32
+ * `cancelled` is terminal: a create or fork that could not get a machine was removed. `GET /sandboxes/{sandboxId}` reports it once, with only `id`, `state` and `error`, then answers 404.
32
33
  * @type {SandboxStateEnum}
33
34
  * @memberof Sandbox
34
35
  */
35
36
  state: SandboxStateEnum;
36
37
  /**
37
- * Current machine size: what the sandbox was created with, or the size it was last resumed or forked onto. Legacy bare-metal sandboxes read as `default`.
38
+ * Why the sandbox is stopped, failed or cancelled, or null.
39
+ * @type {string}
40
+ * @memberof Sandbox
41
+ */
42
+ error?: string | null;
43
+ /**
44
+ * Current machine size: what the sandbox was created with, or the size it was last resumed or forked onto.
38
45
  * @type {SandboxTypeEnum}
39
46
  * @memberof Sandbox
40
47
  */
@@ -52,11 +59,17 @@ export interface Sandbox {
52
59
  */
53
60
  memoryGB?: number;
54
61
  /**
55
- * Rate at which this sandbox consumes machine time. 0.5 for `small`, 1 for `default`, 2 for `large`, and 50/9 for `xlarge`.
62
+ * Rate at which this sandbox consumes machine time. 0.5 for `small`, 1 for `default`, and 2 for `large`.
56
63
  * @type {number}
57
64
  * @memberof Sandbox
58
65
  */
59
66
  billingMultiplier?: number;
67
+ /**
68
+ * Machine provider of the machine the sandbox is on, or null when it has no machine.
69
+ * @type {SandboxMachineProviderEnum}
70
+ * @memberof Sandbox
71
+ */
72
+ machineProvider?: SandboxMachineProviderEnum | null;
60
73
  /**
61
74
  * Machine URL when assigned.
62
75
  * @type {string}
@@ -69,6 +82,12 @@ export interface Sandbox {
69
82
  * @memberof Sandbox
70
83
  */
71
84
  ip?: string | null;
85
+ /**
86
+ * Public IPv4 `host:port` that forwards to the sandbox SSH server. Set only when the machine has no public IPv4 of its own; null otherwise. Connect with `ssh -p <port> user@<host>`.
87
+ * @type {string}
88
+ * @memberof Sandbox
89
+ */
90
+ sshEndpoint?: string | null;
72
91
  /**
73
92
  *
74
93
  * @type {Date}
@@ -111,6 +130,18 @@ export interface Sandbox {
111
130
  * @memberof Sandbox
112
131
  */
113
132
  snapshotCompletedAt?: Date | null;
133
+ /**
134
+ * Last time a snapshot confirmed the sandbox's saved state, including checks that found nothing new to save. Falls back to `snapshotCompletedAt`; null if never.
135
+ * @type {Date}
136
+ * @memberof Sandbox
137
+ */
138
+ snapshotVerifiedAt?: Date | null;
139
+ /**
140
+ *
141
+ * @type {SandboxTeam}
142
+ * @memberof Sandbox
143
+ */
144
+ team?: SandboxTeam;
114
145
  /**
115
146
  * The sandbox's stable three-word subdomain slug (e.g. "frazil-pneuma-rallye"), or null before one is assigned.
116
147
  * @type {string}
@@ -168,6 +199,7 @@ export declare const SandboxStateEnum: {
168
199
  readonly Archiving: 'archiving';
169
200
  readonly Archived: 'archived';
170
201
  readonly Error: 'error';
202
+ readonly Cancelled: 'cancelled';
171
203
  };
172
204
  export type SandboxStateEnum = typeof SandboxStateEnum[keyof typeof SandboxStateEnum];
173
205
  /**
@@ -177,9 +209,16 @@ export declare const SandboxTypeEnum: {
177
209
  readonly Small: 'small';
178
210
  readonly Default: 'default';
179
211
  readonly Large: 'large';
180
- readonly Xlarge: 'xlarge';
181
212
  };
182
213
  export type SandboxTypeEnum = typeof SandboxTypeEnum[keyof typeof SandboxTypeEnum];
214
+ /**
215
+ * @export
216
+ */
217
+ export declare const SandboxMachineProviderEnum: {
218
+ readonly Hetzner: 'hetzner';
219
+ readonly Baremetal: 'baremetal';
220
+ };
221
+ export type SandboxMachineProviderEnum = typeof SandboxMachineProviderEnum[keyof typeof SandboxMachineProviderEnum];
183
222
  /**
184
223
  * @export
185
224
  */