@boatdev/sdk 1.10.0 → 1.12.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 (282) hide show
  1. package/.openapi-generator/FILES +64 -0
  2. package/dist/apis/BoatApi.d.ts +283 -26
  3. package/dist/apis/BoatApi.js +662 -29
  4. package/dist/esm/apis/BoatApi.d.ts +283 -26
  5. package/dist/esm/apis/BoatApi.js +662 -29
  6. package/dist/esm/models/CreateSandboxRequest.d.ts +38 -4
  7. package/dist/esm/models/CreateSandboxRequest.js +17 -0
  8. package/dist/esm/models/CreateSandboxRequestFilesInner.d.ts +52 -0
  9. package/dist/esm/models/CreateSandboxRequestFilesInner.js +56 -0
  10. package/dist/esm/models/CreateSandboxResponse.d.ts +7 -0
  11. package/dist/esm/models/CreateSandboxResponse.js +3 -0
  12. package/dist/esm/models/CreateSandboxResponseAllOfHostedPortsInner.d.ts +77 -0
  13. package/dist/esm/models/CreateSandboxResponseAllOfHostedPortsInner.js +64 -0
  14. package/dist/esm/models/CredentialId.d.ts +3 -0
  15. package/dist/esm/models/CredentialId.js +3 -0
  16. package/dist/esm/models/CredentialProfile.d.ts +7 -0
  17. package/dist/esm/models/CredentialProfile.js +3 -0
  18. package/dist/esm/models/DeletionOperation.d.ts +1 -1
  19. package/dist/esm/models/FileDeleteResponse.d.ts +57 -0
  20. package/dist/esm/models/FileDeleteResponse.js +59 -0
  21. package/dist/esm/models/FileEntry.d.ts +68 -0
  22. package/dist/esm/models/FileEntry.js +67 -0
  23. package/dist/esm/models/FileFindResponse.d.ts +70 -0
  24. package/dist/esm/models/FileFindResponse.js +66 -0
  25. package/dist/esm/models/FileFindResponseAllOfMatches.d.ts +44 -0
  26. package/dist/esm/models/FileFindResponseAllOfMatches.js +51 -0
  27. package/dist/esm/models/FileFolderRequest.d.ts +38 -0
  28. package/dist/esm/models/FileFolderRequest.js +45 -0
  29. package/dist/esm/models/FileInfoResponse.d.ts +95 -0
  30. package/dist/esm/models/FileInfoResponse.js +85 -0
  31. package/dist/esm/models/FileListResponse.d.ts +70 -0
  32. package/dist/esm/models/FileListResponse.js +68 -0
  33. package/dist/esm/models/FileMoveRequest.d.ts +44 -0
  34. package/dist/esm/models/FileMoveRequest.js +49 -0
  35. package/dist/esm/models/FileMoveResponse.d.ts +63 -0
  36. package/dist/esm/models/FileMoveResponse.js +63 -0
  37. package/dist/esm/models/FilePermissionsRequest.d.ts +38 -0
  38. package/dist/esm/models/FilePermissionsRequest.js +47 -0
  39. package/dist/esm/models/FileReplaceRequest.d.ts +44 -0
  40. package/dist/esm/models/FileReplaceRequest.js +51 -0
  41. package/dist/esm/models/FileReplaceResponse.d.ts +58 -0
  42. package/dist/esm/models/FileReplaceResponse.js +60 -0
  43. package/dist/esm/models/FileReplaceResponseAllOfResults.d.ts +50 -0
  44. package/dist/esm/models/FileReplaceResponseAllOfResults.js +51 -0
  45. package/dist/esm/models/FileSearchResponse.d.ts +69 -0
  46. package/dist/esm/models/FileSearchResponse.js +65 -0
  47. package/dist/esm/models/LimitsFields.d.ts +54 -16
  48. package/dist/esm/models/LimitsFields.js +16 -2
  49. package/dist/esm/models/LimitsFieldsOveragePrices.d.ts +51 -0
  50. package/dist/esm/models/LimitsFieldsOveragePrices.js +48 -0
  51. package/dist/esm/models/LimitsFieldsOveragePricesStartBracketsInner.d.ts +44 -0
  52. package/dist/esm/models/LimitsFieldsOveragePricesStartBracketsInner.js +45 -0
  53. package/dist/esm/models/LimitsFieldsPlanIncluded.d.ts +44 -0
  54. package/dist/esm/models/LimitsFieldsPlanIncluded.js +45 -0
  55. package/dist/esm/models/LimitsFieldsStartLimitsWithWallet.d.ts +44 -0
  56. package/dist/esm/models/LimitsFieldsStartLimitsWithWallet.js +45 -0
  57. package/dist/esm/models/LimitsFieldsWallet.d.ts +32 -0
  58. package/dist/esm/models/LimitsFieldsWallet.js +41 -0
  59. package/dist/esm/models/LimitsResponse.d.ts +54 -16
  60. package/dist/esm/models/LimitsResponse.js +16 -2
  61. package/dist/esm/models/NamedSnapshotAllowance.d.ts +9 -3
  62. package/dist/esm/models/NamedSnapshotAllowance.js +2 -0
  63. package/dist/esm/models/ResourceAccess.d.ts +38 -0
  64. package/dist/esm/models/ResourceAccess.js +47 -0
  65. package/dist/esm/models/ResourceAccessUpdate.d.ts +38 -0
  66. package/dist/esm/models/ResourceAccessUpdate.js +45 -0
  67. package/dist/esm/models/Sandbox.d.ts +7 -0
  68. package/dist/esm/models/Sandbox.js +3 -0
  69. package/dist/esm/models/SandboxEnvironment.d.ts +7 -0
  70. package/dist/esm/models/SandboxEnvironment.js +3 -0
  71. package/dist/esm/models/SandboxLastReboot.d.ts +47 -0
  72. package/dist/esm/models/SandboxLastReboot.js +51 -0
  73. package/dist/esm/models/SandboxListResponse.d.ts +7 -0
  74. package/dist/esm/models/SandboxListResponse.js +3 -0
  75. package/dist/esm/models/SandboxListResponseAllOfDeletedCost.d.ts +44 -0
  76. package/dist/esm/models/SandboxListResponseAllOfDeletedCost.js +51 -0
  77. package/dist/esm/models/SavedSnapshot.d.ts +83 -0
  78. package/dist/esm/models/SavedSnapshot.js +71 -0
  79. package/dist/esm/models/SavedSnapshotAllowance.d.ts +87 -0
  80. package/dist/esm/models/SavedSnapshotAllowance.js +59 -0
  81. package/dist/esm/models/SavedSnapshotDeletedResponse.d.ts +64 -0
  82. package/dist/esm/models/SavedSnapshotDeletedResponse.js +67 -0
  83. package/dist/esm/models/SavedSnapshotInfoResponse.d.ts +52 -0
  84. package/dist/esm/models/SavedSnapshotInfoResponse.js +58 -0
  85. package/dist/esm/models/SavedSnapshotListResponse.d.ts +59 -0
  86. package/dist/esm/models/SavedSnapshotListResponse.js +61 -0
  87. package/dist/esm/models/SavedSnapshotSaveRequest.d.ts +38 -0
  88. package/dist/esm/models/SavedSnapshotSaveRequest.js +47 -0
  89. package/dist/esm/models/SavedSnapshotSavingResponse.d.ts +65 -0
  90. package/dist/esm/models/SavedSnapshotSavingResponse.js +68 -0
  91. package/dist/esm/models/SnapshotSummary.d.ts +1 -1
  92. package/dist/esm/models/UpdateCredentialProfileRequest.d.ts +7 -0
  93. package/dist/esm/models/UpdateCredentialProfileRequest.js +3 -0
  94. package/dist/esm/models/UpdateSandboxEnvironmentRequest.d.ts +7 -0
  95. package/dist/esm/models/UpdateSandboxEnvironmentRequest.js +3 -0
  96. package/dist/esm/models/index.d.ts +32 -0
  97. package/dist/esm/models/index.js +32 -0
  98. package/dist/models/CreateSandboxRequest.d.ts +38 -4
  99. package/dist/models/CreateSandboxRequest.js +18 -1
  100. package/dist/models/CreateSandboxRequestFilesInner.d.ts +52 -0
  101. package/dist/models/CreateSandboxRequestFilesInner.js +64 -0
  102. package/dist/models/CreateSandboxResponse.d.ts +7 -0
  103. package/dist/models/CreateSandboxResponse.js +3 -0
  104. package/dist/models/CreateSandboxResponseAllOfHostedPortsInner.d.ts +77 -0
  105. package/dist/models/CreateSandboxResponseAllOfHostedPortsInner.js +72 -0
  106. package/dist/models/CredentialId.d.ts +3 -0
  107. package/dist/models/CredentialId.js +3 -0
  108. package/dist/models/CredentialProfile.d.ts +7 -0
  109. package/dist/models/CredentialProfile.js +3 -0
  110. package/dist/models/DeletionOperation.d.ts +1 -1
  111. package/dist/models/FileDeleteResponse.d.ts +57 -0
  112. package/dist/models/FileDeleteResponse.js +67 -0
  113. package/dist/models/FileEntry.d.ts +68 -0
  114. package/dist/models/FileEntry.js +74 -0
  115. package/dist/models/FileFindResponse.d.ts +70 -0
  116. package/dist/models/FileFindResponse.js +74 -0
  117. package/dist/models/FileFindResponseAllOfMatches.d.ts +44 -0
  118. package/dist/models/FileFindResponseAllOfMatches.js +58 -0
  119. package/dist/models/FileFolderRequest.d.ts +38 -0
  120. package/dist/models/FileFolderRequest.js +52 -0
  121. package/dist/models/FileInfoResponse.d.ts +95 -0
  122. package/dist/models/FileInfoResponse.js +93 -0
  123. package/dist/models/FileListResponse.d.ts +70 -0
  124. package/dist/models/FileListResponse.js +76 -0
  125. package/dist/models/FileMoveRequest.d.ts +44 -0
  126. package/dist/models/FileMoveRequest.js +56 -0
  127. package/dist/models/FileMoveResponse.d.ts +63 -0
  128. package/dist/models/FileMoveResponse.js +71 -0
  129. package/dist/models/FilePermissionsRequest.d.ts +38 -0
  130. package/dist/models/FilePermissionsRequest.js +54 -0
  131. package/dist/models/FileReplaceRequest.d.ts +44 -0
  132. package/dist/models/FileReplaceRequest.js +58 -0
  133. package/dist/models/FileReplaceResponse.d.ts +58 -0
  134. package/dist/models/FileReplaceResponse.js +68 -0
  135. package/dist/models/FileReplaceResponseAllOfResults.d.ts +50 -0
  136. package/dist/models/FileReplaceResponseAllOfResults.js +58 -0
  137. package/dist/models/FileSearchResponse.d.ts +69 -0
  138. package/dist/models/FileSearchResponse.js +73 -0
  139. package/dist/models/LimitsFields.d.ts +54 -16
  140. package/dist/models/LimitsFields.js +16 -2
  141. package/dist/models/LimitsFieldsOveragePrices.d.ts +51 -0
  142. package/dist/models/LimitsFieldsOveragePrices.js +55 -0
  143. package/dist/models/LimitsFieldsOveragePricesStartBracketsInner.d.ts +44 -0
  144. package/dist/models/LimitsFieldsOveragePricesStartBracketsInner.js +52 -0
  145. package/dist/models/LimitsFieldsPlanIncluded.d.ts +44 -0
  146. package/dist/models/LimitsFieldsPlanIncluded.js +52 -0
  147. package/dist/models/LimitsFieldsStartLimitsWithWallet.d.ts +44 -0
  148. package/dist/models/LimitsFieldsStartLimitsWithWallet.js +52 -0
  149. package/dist/models/LimitsFieldsWallet.d.ts +32 -0
  150. package/dist/models/LimitsFieldsWallet.js +48 -0
  151. package/dist/models/LimitsResponse.d.ts +54 -16
  152. package/dist/models/LimitsResponse.js +16 -2
  153. package/dist/models/NamedSnapshotAllowance.d.ts +9 -3
  154. package/dist/models/NamedSnapshotAllowance.js +2 -0
  155. package/dist/models/ResourceAccess.d.ts +38 -0
  156. package/dist/models/ResourceAccess.js +54 -0
  157. package/dist/models/ResourceAccessUpdate.d.ts +38 -0
  158. package/dist/models/ResourceAccessUpdate.js +52 -0
  159. package/dist/models/Sandbox.d.ts +7 -0
  160. package/dist/models/Sandbox.js +3 -0
  161. package/dist/models/SandboxEnvironment.d.ts +7 -0
  162. package/dist/models/SandboxEnvironment.js +3 -0
  163. package/dist/models/SandboxLastReboot.d.ts +47 -0
  164. package/dist/models/SandboxLastReboot.js +59 -0
  165. package/dist/models/SandboxListResponse.d.ts +7 -0
  166. package/dist/models/SandboxListResponse.js +3 -0
  167. package/dist/models/SandboxListResponseAllOfDeletedCost.d.ts +44 -0
  168. package/dist/models/SandboxListResponseAllOfDeletedCost.js +58 -0
  169. package/dist/models/SavedSnapshot.d.ts +83 -0
  170. package/dist/models/SavedSnapshot.js +79 -0
  171. package/dist/models/SavedSnapshotAllowance.d.ts +87 -0
  172. package/dist/models/SavedSnapshotAllowance.js +66 -0
  173. package/dist/models/SavedSnapshotDeletedResponse.d.ts +64 -0
  174. package/dist/models/SavedSnapshotDeletedResponse.js +75 -0
  175. package/dist/models/SavedSnapshotInfoResponse.d.ts +52 -0
  176. package/dist/models/SavedSnapshotInfoResponse.js +66 -0
  177. package/dist/models/SavedSnapshotListResponse.d.ts +59 -0
  178. package/dist/models/SavedSnapshotListResponse.js +69 -0
  179. package/dist/models/SavedSnapshotSaveRequest.d.ts +38 -0
  180. package/dist/models/SavedSnapshotSaveRequest.js +54 -0
  181. package/dist/models/SavedSnapshotSavingResponse.d.ts +65 -0
  182. package/dist/models/SavedSnapshotSavingResponse.js +76 -0
  183. package/dist/models/SnapshotSummary.d.ts +1 -1
  184. package/dist/models/UpdateCredentialProfileRequest.d.ts +7 -0
  185. package/dist/models/UpdateCredentialProfileRequest.js +3 -0
  186. package/dist/models/UpdateSandboxEnvironmentRequest.d.ts +7 -0
  187. package/dist/models/UpdateSandboxEnvironmentRequest.js +3 -0
  188. package/dist/models/index.d.ts +32 -0
  189. package/dist/models/index.js +32 -0
  190. package/docs/BoatApi.md +1049 -61
  191. package/docs/CreateSandboxRequest.md +8 -0
  192. package/docs/CreateSandboxRequestFilesInner.md +36 -0
  193. package/docs/CreateSandboxResponse.md +2 -0
  194. package/docs/CreateSandboxResponseAllOfHostedPortsInner.md +44 -0
  195. package/docs/CredentialProfile.md +2 -0
  196. package/docs/FileDeleteResponse.md +38 -0
  197. package/docs/FileEntry.md +44 -0
  198. package/docs/FileFindResponse.md +42 -0
  199. package/docs/FileFindResponseAllOfMatches.md +36 -0
  200. package/docs/FileFolderRequest.md +34 -0
  201. package/docs/FileInfoResponse.md +50 -0
  202. package/docs/FileListResponse.md +42 -0
  203. package/docs/FileMoveRequest.md +36 -0
  204. package/docs/FileMoveResponse.md +40 -0
  205. package/docs/FilePermissionsRequest.md +34 -0
  206. package/docs/FileReplaceRequest.md +36 -0
  207. package/docs/FileReplaceResponse.md +38 -0
  208. package/docs/FileReplaceResponseAllOfResults.md +38 -0
  209. package/docs/FileSearchResponse.md +42 -0
  210. package/docs/LimitsFields.md +12 -2
  211. package/docs/LimitsFieldsOveragePrices.md +39 -0
  212. package/docs/LimitsFieldsOveragePricesStartBracketsInner.md +36 -0
  213. package/docs/LimitsFieldsPlanIncluded.md +37 -0
  214. package/docs/LimitsFieldsStartLimitsWithWallet.md +37 -0
  215. package/docs/LimitsFieldsWallet.md +33 -0
  216. package/docs/LimitsResponse.md +12 -2
  217. package/docs/NamedSnapshotAllowance.md +3 -1
  218. package/docs/ResourceAccess.md +35 -0
  219. package/docs/ResourceAccessUpdate.md +35 -0
  220. package/docs/Sandbox.md +2 -0
  221. package/docs/SandboxEnvironment.md +2 -0
  222. package/docs/SandboxLastReboot.md +35 -0
  223. package/docs/SandboxListResponse.md +2 -0
  224. package/docs/SandboxListResponseAllOfDeletedCost.md +37 -0
  225. package/docs/SavedSnapshot.md +47 -0
  226. package/docs/SavedSnapshotAllowance.md +51 -0
  227. package/docs/SavedSnapshotDeletedResponse.md +38 -0
  228. package/docs/SavedSnapshotInfoResponse.md +36 -0
  229. package/docs/SavedSnapshotListResponse.md +38 -0
  230. package/docs/SavedSnapshotSaveRequest.md +34 -0
  231. package/docs/SavedSnapshotSavingResponse.md +38 -0
  232. package/docs/UpdateCredentialProfileRequest.md +2 -0
  233. package/docs/UpdateSandboxEnvironmentRequest.md +2 -0
  234. package/package.json +1 -1
  235. package/src/apis/BoatApi.ts +999 -30
  236. package/src/models/CreateSandboxRequest.ts +60 -4
  237. package/src/models/CreateSandboxRequestFilesInner.ts +94 -0
  238. package/src/models/CreateSandboxResponse.ts +15 -0
  239. package/src/models/CreateSandboxResponseAllOfHostedPortsInner.ts +128 -0
  240. package/src/models/CredentialId.ts +3 -0
  241. package/src/models/CredentialProfile.ts +15 -0
  242. package/src/models/DeletionOperation.ts +1 -1
  243. package/src/models/FileDeleteResponse.ts +102 -0
  244. package/src/models/FileEntry.ts +120 -0
  245. package/src/models/FileFindResponse.ts +127 -0
  246. package/src/models/FileFindResponseAllOfMatches.ts +84 -0
  247. package/src/models/FileFolderRequest.ts +74 -0
  248. package/src/models/FileInfoResponse.ts +158 -0
  249. package/src/models/FileListResponse.ts +128 -0
  250. package/src/models/FileMoveRequest.ts +83 -0
  251. package/src/models/FileMoveResponse.ts +111 -0
  252. package/src/models/FilePermissionsRequest.ts +75 -0
  253. package/src/models/FileReplaceRequest.ts +84 -0
  254. package/src/models/FileReplaceResponse.ts +110 -0
  255. package/src/models/FileReplaceResponseAllOfResults.ts +91 -0
  256. package/src/models/FileSearchResponse.ts +119 -0
  257. package/src/models/LimitsFields.ts +90 -16
  258. package/src/models/LimitsFieldsOveragePrices.ts +97 -0
  259. package/src/models/LimitsFieldsOveragePricesStartBracketsInner.ts +81 -0
  260. package/src/models/LimitsFieldsPlanIncluded.ts +81 -0
  261. package/src/models/LimitsFieldsStartLimitsWithWallet.ts +81 -0
  262. package/src/models/LimitsFieldsWallet.ts +65 -0
  263. package/src/models/LimitsResponse.ts +90 -16
  264. package/src/models/NamedSnapshotAllowance.ts +11 -3
  265. package/src/models/ResourceAccess.ts +75 -0
  266. package/src/models/ResourceAccessUpdate.ts +74 -0
  267. package/src/models/Sandbox.ts +15 -0
  268. package/src/models/SandboxEnvironment.ts +15 -0
  269. package/src/models/SandboxLastReboot.ts +85 -0
  270. package/src/models/SandboxListResponse.ts +15 -0
  271. package/src/models/SandboxListResponseAllOfDeletedCost.ts +84 -0
  272. package/src/models/SavedSnapshot.ts +137 -0
  273. package/src/models/SavedSnapshotAllowance.ts +138 -0
  274. package/src/models/SavedSnapshotDeletedResponse.ts +111 -0
  275. package/src/models/SavedSnapshotInfoResponse.ts +102 -0
  276. package/src/models/SavedSnapshotListResponse.ts +117 -0
  277. package/src/models/SavedSnapshotSaveRequest.ts +75 -0
  278. package/src/models/SavedSnapshotSavingResponse.ts +119 -0
  279. package/src/models/SnapshotSummary.ts +1 -1
  280. package/src/models/UpdateCredentialProfileRequest.ts +16 -0
  281. package/src/models/UpdateSandboxEnvironmentRequest.ts +15 -0
  282. package/src/models/index.ts +32 -0
@@ -9,6 +9,8 @@
9
9
  * https://openapi-generator.tech
10
10
  * Do not edit the class manually.
11
11
  */
12
+ import type { CreateSandboxRequestFilesInner } from './CreateSandboxRequestFilesInner';
13
+ import type { HostPortRequest } from './HostPortRequest';
12
14
  /**
13
15
  * Options for provisioning a new cloud computer.
14
16
  * @export
@@ -48,7 +50,7 @@ export interface CreateSandboxRequest {
48
50
  */
49
51
  noEnv?: boolean;
50
52
  /**
51
- * Pass `false` to never snapshot this sandbox. Nothing is captured in the background, so it pays no CPU or memory for it, and stopping it erases its disk the way zero data retention does. It cannot be resumed, forked, or saved as a named snapshot, and if its machine fails there is no backup to rebuild it from.
53
+ * Pass `false` to never snapshot this sandbox. Nothing is captured in the background, so it pays no CPU or memory for it, and stopping it erases its disk the way zero data retention does. It cannot be resumed, forked, or saved as a saved snapshot, and if its machine fails there is no backup to rebuild it from.
52
54
  * @type {boolean}
53
55
  * @memberof CreateSandboxRequest
54
56
  */
@@ -66,17 +68,41 @@ export interface CreateSandboxRequest {
66
68
  */
67
69
  failFast?: boolean;
68
70
  /**
69
- * With `from`: create this many sandboxes from the named snapshot in one request. Boat creates them together, which is faster than separate creates when you need many sandboxes at once. Start limits and the active-sandbox limit count every sandbox of the batch; if the batch does not fit, nothing is created. The answer lists all of them in `sandboxes` (and the first one in `sandbox`). Refused with 400 `count_requires_from` without `from`, and with 400 `count_with_fail_fast` together with `failFast`.
71
+ * With `from`: create this many sandboxes from the saved snapshot in one request. Boat creates them together, which is faster than separate creates when you need many sandboxes at once. Start limits and the active-sandbox limit count every sandbox of the batch; if the batch does not fit, nothing is created. The answer lists all of them in `sandboxes` (and the first one in `sandbox`). Refused with 400 `count_requires_from` without `from`, and with 400 `count_with_fail_fast` together with `failFast`.
70
72
  * @type {number}
71
73
  * @memberof CreateSandboxRequest
72
74
  */
73
75
  count?: number;
74
76
  /**
75
- * Shell script that runs on the sandbox after it is ready. Ready means "ready to accept the user", not "setup done": the script starts in the background once provisioning completes and never blocks the sandbox becoming usable. It runs as the sandbox user (`user`, not root; `sudo` needs no password) via `bash`, with the sandbox's environment applied, and its output goes to a log file on the sandbox. Observe the outcome as `setupStatus` (pending/running/done/failed) and `setupError` on the sandbox. Rejected with a 400 `invalid_setup_script` error when it is not a string or exceeds 64KB.
77
+ * Shell script that runs on the sandbox after it is ready. Ready means "ready to accept the user", not "setup done": the script starts in the background once provisioning completes and never blocks the sandbox becoming usable. It runs as the sandbox user (`user`, not root; `sudo` needs no password) via `bash`, with the sandbox's environment applied, and its output goes to a log file on the sandbox. Observe the outcome as `setupStatus` (pending/running/done/failed) and `setupError` on the sandbox. Rejected with a 400 `invalid_setup_script` error when it is not a string or exceeds 64KB. When the request also has `files`, the script starts after every file is written.
76
78
  * @type {string}
77
79
  * @memberof CreateSandboxRequest
78
80
  */
79
81
  setupScript?: string;
82
+ /**
83
+ * Display name of the sandbox, the same value `PATCH /sandboxes/{id}` sets. A sandbox created `from` a saved snapshot is named after the snapshot when this is omitted.
84
+ * @type {string}
85
+ * @memberof CreateSandboxRequest
86
+ */
87
+ name?: string;
88
+ /**
89
+ * Who can use a sandbox billed to an organization, with the same rules as the sandbox's `visibility` field. `private`: only you can use it. `shared`: every member can, as long as it holds none of your personal logins (`noEnv`, or an environment that passes nothing). Omitted, the organization's default for new sandboxes applies (`PATCH /orgs/{org}` `newSandboxesPrivate`). It is set before the sandbox gets a machine, so a `private` sandbox is never shared, not even for a moment, and needs no `unshare` call. A personal sandbox is always private: `shared` is refused with 400 `not_org_sandbox`. Change it later with `POST /sandboxes/{id}/share` and `POST /sandboxes/{id}/unshare`.
90
+ * @type {CreateSandboxRequestVisibilityEnum}
91
+ * @memberof CreateSandboxRequest
92
+ */
93
+ visibility?: CreateSandboxRequestVisibilityEnum;
94
+ /**
95
+ * Ports to host on public HTTPS URLs, each exactly as `POST /sandboxes/{id}/host` does. The create waits for the sandbox's machine (up to 60 s, usually under a second), hosts every port at once and answers the URLs in `hostedPorts`. The ports are routed before the sandbox is ready, so a service that starts later is reachable as soon as it listens. Refused with 400 `invalid_hosted_ports` for a bad entry or a duplicate port, with 400 `count_with_hosted_ports` together with `count`, and with 400 `fail_fast_with_hosted_ports` together with `failFast`.
96
+ * @type {Array<HostPortRequest>}
97
+ * @memberof CreateSandboxRequest
98
+ */
99
+ hostedPorts?: Array<HostPortRequest>;
100
+ /**
101
+ * Files to write on the sandbox, each like `PUT /sandboxes/{id}/files` (a path under `/home/user` or `/tmp`, relative paths resolve against `/home/user`; missing folders are created). Boat writes them once the sandbox's disk is in place and before it reports `ready`, so a client that sees `ready`, and the `setupScript`, always find them. They are written once, at the first start: a resume does not write them again. At most 256KB in total; upload bigger files with `POST /sandboxes/{id}/files/upload-url`. `setupStatus` covers them: it stays `pending` until they are written, and a write that fails sets it `failed` with the path and the reason in `setupError` (the setup script then does not run). Refused with 400 `invalid_files` for a bad path, a duplicate path or a body over the limits.
102
+ * @type {Array<CreateSandboxRequestFilesInner>}
103
+ * @memberof CreateSandboxRequest
104
+ */
105
+ files?: Array<CreateSandboxRequestFilesInner>;
80
106
  /**
81
107
  * Bill this sandbox to an organization you belong to (its shared wallet), by id or by name as `GET /orgs` lists it; `personal` or your own account id means personal billing. Omitted, the `X-Boat-Org` / `?org=` request scope applies, then the account's active wallet (`PATCH /orgs/active`), then personal. Listing, snapshots, and environments stay yours: the org is a wallet, not a shared workspace. Takes precedence over `teamId`.
82
108
  * @type {string}
@@ -90,7 +116,7 @@ export interface CreateSandboxRequest {
90
116
  */
91
117
  teamId?: string;
92
118
  /**
93
- * Create the sandbox from a named snapshot (saved with `POST /named-snapshots`, or `boat snapshot <id> <name>` in the CLI). The sandbox starts from that exact frozen state. Omitting `type` inherits the type the snapshot was saved from; env and no-env inherit from the snapshot's source sandbox unless the request passes its own, with the same rules as forking. Also accepts a share code (`bsh_...`) that another account made with `POST /named-snapshots/{name}/shares`. The new sandbox lives in and is billed to your account. It does not get the owner's per-sandbox env; your own environment applies normally. A wrong or revoked code returns `404 snapshot_not_found`.
119
+ * Create the sandbox from a saved snapshot (saved with `POST /saved-snapshots`, or `boat snapshot <id> <name>` in the CLI). The sandbox starts from that exact frozen state. Omitting `type` inherits the type the snapshot was saved from; env and no-env inherit from the snapshot's source sandbox unless the request passes its own, with the same rules as forking. Also accepts a share code (`bsh_...`) that another account made with `POST /saved-snapshots/{name}/shares`. The new sandbox lives in and is billed to your account. It does not get the owner's per-sandbox env; your own environment applies normally. A wrong or revoked code returns `404 snapshot_not_found`.
94
120
  * @type {string}
95
121
  * @memberof CreateSandboxRequest
96
122
  */
@@ -106,6 +132,14 @@ export declare const CreateSandboxRequestTypeEnum: {
106
132
  readonly Xlarge: 'xlarge';
107
133
  };
108
134
  export type CreateSandboxRequestTypeEnum = typeof CreateSandboxRequestTypeEnum[keyof typeof CreateSandboxRequestTypeEnum];
135
+ /**
136
+ * @export
137
+ */
138
+ export declare const CreateSandboxRequestVisibilityEnum: {
139
+ readonly Private: 'private';
140
+ readonly Shared: 'shared';
141
+ };
142
+ export type CreateSandboxRequestVisibilityEnum = typeof CreateSandboxRequestVisibilityEnum[keyof typeof CreateSandboxRequestVisibilityEnum];
109
143
  /**
110
144
  * Check if a given object implements the CreateSandboxRequest interface.
111
145
  */
@@ -11,6 +11,8 @@
11
11
  * https://openapi-generator.tech
12
12
  * Do not edit the class manually.
13
13
  */
14
+ import { CreateSandboxRequestFilesInnerFromJSON, CreateSandboxRequestFilesInnerToJSON, } from './CreateSandboxRequestFilesInner';
15
+ import { HostPortRequestFromJSON, HostPortRequestToJSON, } from './HostPortRequest';
14
16
  /**
15
17
  * @export
16
18
  */
@@ -20,6 +22,13 @@ export const CreateSandboxRequestTypeEnum = {
20
22
  Large: 'large',
21
23
  Xlarge: 'xlarge'
22
24
  };
25
+ /**
26
+ * @export
27
+ */
28
+ export const CreateSandboxRequestVisibilityEnum = {
29
+ Private: 'private',
30
+ Shared: 'shared'
31
+ };
23
32
  /**
24
33
  * Check if a given object implements the CreateSandboxRequest interface.
25
34
  */
@@ -44,6 +53,10 @@ export function CreateSandboxRequestFromJSONTyped(json, ignoreDiscriminator) {
44
53
  'failFast': json['failFast'] == null ? undefined : json['failFast'],
45
54
  'count': json['count'] == null ? undefined : json['count'],
46
55
  'setupScript': json['setupScript'] == null ? undefined : json['setupScript'],
56
+ 'name': json['name'] == null ? undefined : json['name'],
57
+ 'visibility': json['visibility'] == null ? undefined : json['visibility'],
58
+ 'hostedPorts': json['hostedPorts'] == null ? undefined : (json['hostedPorts'].map(HostPortRequestFromJSON)),
59
+ 'files': json['files'] == null ? undefined : (json['files'].map(CreateSandboxRequestFilesInnerFromJSON)),
47
60
  'org': json['org'] == null ? undefined : json['org'],
48
61
  'teamId': json['teamId'] == null ? undefined : json['teamId'],
49
62
  'from': json['from'] == null ? undefined : json['from'],
@@ -67,6 +80,10 @@ export function CreateSandboxRequestToJSONTyped(value, ignoreDiscriminator = fal
67
80
  'failFast': value['failFast'],
68
81
  'count': value['count'],
69
82
  'setupScript': value['setupScript'],
83
+ 'name': value['name'],
84
+ 'visibility': value['visibility'],
85
+ 'hostedPorts': value['hostedPorts'] == null ? undefined : (value['hostedPorts'].map(HostPortRequestToJSON)),
86
+ 'files': value['files'] == null ? undefined : (value['files'].map(CreateSandboxRequestFilesInnerToJSON)),
70
87
  'org': value['org'],
71
88
  'teamId': value['teamId'],
72
89
  'from': value['from'],
@@ -0,0 +1,52 @@
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 CreateSandboxRequestFilesInner
16
+ */
17
+ export interface CreateSandboxRequestFilesInner {
18
+ /**
19
+ *
20
+ * @type {string}
21
+ * @memberof CreateSandboxRequestFilesInner
22
+ */
23
+ path: string;
24
+ /**
25
+ * File contents, as text or base64 (see `encoding`).
26
+ * @type {string}
27
+ * @memberof CreateSandboxRequestFilesInner
28
+ */
29
+ content: string;
30
+ /**
31
+ *
32
+ * @type {CreateSandboxRequestFilesInnerEncodingEnum}
33
+ * @memberof CreateSandboxRequestFilesInner
34
+ */
35
+ encoding?: CreateSandboxRequestFilesInnerEncodingEnum;
36
+ }
37
+ /**
38
+ * @export
39
+ */
40
+ export declare const CreateSandboxRequestFilesInnerEncodingEnum: {
41
+ readonly Utf8: 'utf8';
42
+ readonly Base64: 'base64';
43
+ };
44
+ export type CreateSandboxRequestFilesInnerEncodingEnum = typeof CreateSandboxRequestFilesInnerEncodingEnum[keyof typeof CreateSandboxRequestFilesInnerEncodingEnum];
45
+ /**
46
+ * Check if a given object implements the CreateSandboxRequestFilesInner interface.
47
+ */
48
+ export declare function instanceOfCreateSandboxRequestFilesInner(value: object): value is CreateSandboxRequestFilesInner;
49
+ export declare function CreateSandboxRequestFilesInnerFromJSON(json: any): CreateSandboxRequestFilesInner;
50
+ export declare function CreateSandboxRequestFilesInnerFromJSONTyped(json: any, ignoreDiscriminator: boolean): CreateSandboxRequestFilesInner;
51
+ export declare function CreateSandboxRequestFilesInnerToJSON(json: any): CreateSandboxRequestFilesInner;
52
+ export declare function CreateSandboxRequestFilesInnerToJSONTyped(value?: CreateSandboxRequestFilesInner | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,56 @@
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 CreateSandboxRequestFilesInnerEncodingEnum = {
18
+ Utf8: 'utf8',
19
+ Base64: 'base64'
20
+ };
21
+ /**
22
+ * Check if a given object implements the CreateSandboxRequestFilesInner interface.
23
+ */
24
+ export function instanceOfCreateSandboxRequestFilesInner(value) {
25
+ if (!('path' in value) || value['path'] === undefined)
26
+ return false;
27
+ if (!('content' in value) || value['content'] === undefined)
28
+ return false;
29
+ return true;
30
+ }
31
+ export function CreateSandboxRequestFilesInnerFromJSON(json) {
32
+ return CreateSandboxRequestFilesInnerFromJSONTyped(json, false);
33
+ }
34
+ export function CreateSandboxRequestFilesInnerFromJSONTyped(json, ignoreDiscriminator) {
35
+ if (json == null) {
36
+ return json;
37
+ }
38
+ return {
39
+ 'path': json['path'],
40
+ 'content': json['content'],
41
+ 'encoding': json['encoding'] == null ? undefined : json['encoding'],
42
+ };
43
+ }
44
+ export function CreateSandboxRequestFilesInnerToJSON(json) {
45
+ return CreateSandboxRequestFilesInnerToJSONTyped(json, false);
46
+ }
47
+ export function CreateSandboxRequestFilesInnerToJSONTyped(value, ignoreDiscriminator = false) {
48
+ if (value == null) {
49
+ return value;
50
+ }
51
+ return {
52
+ 'path': value['path'],
53
+ 'content': value['content'],
54
+ 'encoding': value['encoding'],
55
+ };
56
+ }
@@ -9,6 +9,7 @@
9
9
  * https://openapi-generator.tech
10
10
  * Do not edit the class manually.
11
11
  */
12
+ import type { CreateSandboxResponseAllOfHostedPortsInner } from './CreateSandboxResponseAllOfHostedPortsInner';
12
13
  import type { Sandbox } from './Sandbox';
13
14
  /**
14
15
  *
@@ -52,6 +53,12 @@ export interface CreateSandboxResponse {
52
53
  * @memberof CreateSandboxResponse
53
54
  */
54
55
  sandboxes?: Array<Sandbox>;
56
+ /**
57
+ * Present when the request set `hostedPorts`, in request order. Each entry is what `POST /sandboxes/{id}/host` answers for that port: `url`, `access`, `isProtected` and `localhost`, or `error` and `message` when that one port could not be hosted (the sandbox is created anyway; host the port again with `POST /sandboxes/{id}/host`).
58
+ * @type {Array<CreateSandboxResponseAllOfHostedPortsInner>}
59
+ * @memberof CreateSandboxResponse
60
+ */
61
+ hostedPorts?: Array<CreateSandboxResponseAllOfHostedPortsInner>;
55
62
  /**
56
63
  * Present when a fair-use cap on a gifted account shortened the requested auto-stop time.
57
64
  * @type {string}
@@ -11,6 +11,7 @@
11
11
  * https://openapi-generator.tech
12
12
  * Do not edit the class manually.
13
13
  */
14
+ import { CreateSandboxResponseAllOfHostedPortsInnerFromJSON, CreateSandboxResponseAllOfHostedPortsInnerToJSON, } from './CreateSandboxResponseAllOfHostedPortsInner';
14
15
  import { SandboxFromJSON, SandboxToJSON, } from './Sandbox';
15
16
  /**
16
17
  * @export
@@ -55,6 +56,7 @@ export function CreateSandboxResponseFromJSONTyped(json, ignoreDiscriminator) {
55
56
  'ttlSeconds': json['ttlSeconds'],
56
57
  'sandbox': SandboxFromJSON(json['sandbox']),
57
58
  'sandboxes': json['sandboxes'] == null ? undefined : (json['sandboxes'].map(SandboxFromJSON)),
59
+ 'hostedPorts': json['hostedPorts'] == null ? undefined : (json['hostedPorts'].map(CreateSandboxResponseAllOfHostedPortsInnerFromJSON)),
58
60
  'giftLimitNotice': json['giftLimitNotice'] == null ? undefined : json['giftLimitNotice'],
59
61
  };
60
62
  }
@@ -72,6 +74,7 @@ export function CreateSandboxResponseToJSONTyped(value, ignoreDiscriminator = fa
72
74
  'ttlSeconds': value['ttlSeconds'],
73
75
  'sandbox': SandboxToJSON(value['sandbox']),
74
76
  'sandboxes': value['sandboxes'] == null ? undefined : (value['sandboxes'].map(SandboxToJSON)),
77
+ 'hostedPorts': value['hostedPorts'] == null ? undefined : (value['hostedPorts'].map(CreateSandboxResponseAllOfHostedPortsInnerToJSON)),
75
78
  'giftLimitNotice': value['giftLimitNotice'],
76
79
  };
77
80
  }
@@ -0,0 +1,77 @@
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 CreateSandboxResponseAllOfHostedPortsInner
16
+ */
17
+ export interface CreateSandboxResponseAllOfHostedPortsInner {
18
+ [key: string]: any | any;
19
+ /**
20
+ *
21
+ * @type {number}
22
+ * @memberof CreateSandboxResponseAllOfHostedPortsInner
23
+ */
24
+ port: number;
25
+ /**
26
+ * Public HTTPS URL. Carries the `_token` query parameter unless the port is public; redact from logs.
27
+ * @type {string}
28
+ * @memberof CreateSandboxResponseAllOfHostedPortsInner
29
+ */
30
+ url?: string;
31
+ /**
32
+ *
33
+ * @type {boolean}
34
+ * @memberof CreateSandboxResponseAllOfHostedPortsInner
35
+ */
36
+ isProtected?: boolean;
37
+ /**
38
+ *
39
+ * @type {CreateSandboxResponseAllOfHostedPortsInnerAccessEnum}
40
+ * @memberof CreateSandboxResponseAllOfHostedPortsInner
41
+ */
42
+ access?: CreateSandboxResponseAllOfHostedPortsInnerAccessEnum;
43
+ /**
44
+ *
45
+ * @type {boolean}
46
+ * @memberof CreateSandboxResponseAllOfHostedPortsInner
47
+ */
48
+ localhost?: boolean;
49
+ /**
50
+ *
51
+ * @type {string}
52
+ * @memberof CreateSandboxResponseAllOfHostedPortsInner
53
+ */
54
+ error?: string;
55
+ /**
56
+ *
57
+ * @type {string}
58
+ * @memberof CreateSandboxResponseAllOfHostedPortsInner
59
+ */
60
+ message?: string;
61
+ }
62
+ /**
63
+ * @export
64
+ */
65
+ export declare const CreateSandboxResponseAllOfHostedPortsInnerAccessEnum: {
66
+ readonly Private: 'private';
67
+ readonly Public: 'public';
68
+ };
69
+ export type CreateSandboxResponseAllOfHostedPortsInnerAccessEnum = typeof CreateSandboxResponseAllOfHostedPortsInnerAccessEnum[keyof typeof CreateSandboxResponseAllOfHostedPortsInnerAccessEnum];
70
+ /**
71
+ * Check if a given object implements the CreateSandboxResponseAllOfHostedPortsInner interface.
72
+ */
73
+ export declare function instanceOfCreateSandboxResponseAllOfHostedPortsInner(value: object): value is CreateSandboxResponseAllOfHostedPortsInner;
74
+ export declare function CreateSandboxResponseAllOfHostedPortsInnerFromJSON(json: any): CreateSandboxResponseAllOfHostedPortsInner;
75
+ export declare function CreateSandboxResponseAllOfHostedPortsInnerFromJSONTyped(json: any, ignoreDiscriminator: boolean): CreateSandboxResponseAllOfHostedPortsInner;
76
+ export declare function CreateSandboxResponseAllOfHostedPortsInnerToJSON(json: any): CreateSandboxResponseAllOfHostedPortsInner;
77
+ export declare function CreateSandboxResponseAllOfHostedPortsInnerToJSONTyped(value?: CreateSandboxResponseAllOfHostedPortsInner | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,64 @@
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 CreateSandboxResponseAllOfHostedPortsInnerAccessEnum = {
18
+ Private: 'private',
19
+ Public: 'public'
20
+ };
21
+ /**
22
+ * Check if a given object implements the CreateSandboxResponseAllOfHostedPortsInner interface.
23
+ */
24
+ export function instanceOfCreateSandboxResponseAllOfHostedPortsInner(value) {
25
+ if (!('port' in value) || value['port'] === undefined)
26
+ return false;
27
+ return true;
28
+ }
29
+ export function CreateSandboxResponseAllOfHostedPortsInnerFromJSON(json) {
30
+ return CreateSandboxResponseAllOfHostedPortsInnerFromJSONTyped(json, false);
31
+ }
32
+ export function CreateSandboxResponseAllOfHostedPortsInnerFromJSONTyped(json, ignoreDiscriminator) {
33
+ if (json == null) {
34
+ return json;
35
+ }
36
+ return {
37
+ ...json,
38
+ 'port': json['port'],
39
+ 'url': json['url'] == null ? undefined : json['url'],
40
+ 'isProtected': json['isProtected'] == null ? undefined : json['isProtected'],
41
+ 'access': json['access'] == null ? undefined : json['access'],
42
+ 'localhost': json['localhost'] == null ? undefined : json['localhost'],
43
+ 'error': json['error'] == null ? undefined : json['error'],
44
+ 'message': json['message'] == null ? undefined : json['message'],
45
+ };
46
+ }
47
+ export function CreateSandboxResponseAllOfHostedPortsInnerToJSON(json) {
48
+ return CreateSandboxResponseAllOfHostedPortsInnerToJSONTyped(json, false);
49
+ }
50
+ export function CreateSandboxResponseAllOfHostedPortsInnerToJSONTyped(value, ignoreDiscriminator = false) {
51
+ if (value == null) {
52
+ return value;
53
+ }
54
+ return {
55
+ ...value,
56
+ 'port': value['port'],
57
+ 'url': value['url'],
58
+ 'isProtected': value['isProtected'],
59
+ 'access': value['access'],
60
+ 'localhost': value['localhost'],
61
+ 'error': value['error'],
62
+ 'message': value['message'],
63
+ };
64
+ }
@@ -21,10 +21,13 @@ export declare const CredentialId: {
21
21
  readonly DeepseekApiKey: 'deepseek-api-key';
22
22
  readonly MoonshotApiKey: 'moonshot-api-key';
23
23
  readonly MistralApiKey: 'mistral-api-key';
24
+ readonly XaiApiKey: 'xai-api-key';
25
+ readonly OpencodeApiKey: 'opencode-api-key';
24
26
  readonly ClaudeSubscription: 'claude-subscription';
25
27
  readonly ChatgptSubscription: 'chatgpt-subscription';
26
28
  readonly KimiSubscription: 'kimi-subscription';
27
29
  readonly MistralVibeSubscription: 'mistral-vibe-subscription';
30
+ readonly GrokSubscription: 'grok-subscription';
28
31
  readonly ClaudeBedrock: 'claude-bedrock';
29
32
  readonly CodexBedrock: 'codex-bedrock';
30
33
  };
@@ -23,10 +23,13 @@ export const CredentialId = {
23
23
  DeepseekApiKey: 'deepseek-api-key',
24
24
  MoonshotApiKey: 'moonshot-api-key',
25
25
  MistralApiKey: 'mistral-api-key',
26
+ XaiApiKey: 'xai-api-key',
27
+ OpencodeApiKey: 'opencode-api-key',
26
28
  ClaudeSubscription: 'claude-subscription',
27
29
  ChatgptSubscription: 'chatgpt-subscription',
28
30
  KimiSubscription: 'kimi-subscription',
29
31
  MistralVibeSubscription: 'mistral-vibe-subscription',
32
+ GrokSubscription: 'grok-subscription',
30
33
  ClaudeBedrock: 'claude-bedrock',
31
34
  CodexBedrock: 'codex-bedrock'
32
35
  };
@@ -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 { CredentialId } from './CredentialId';
13
14
  import type { CredentialProfileOwner } from './CredentialProfileOwner';
14
15
  import type { CredentialAccount } from './CredentialAccount';
@@ -80,6 +81,12 @@ export interface CredentialProfile {
80
81
  * @memberof CredentialProfile
81
82
  */
82
83
  updatedAt: Date;
84
+ /**
85
+ *
86
+ * @type {ResourceAccess}
87
+ * @memberof CredentialProfile
88
+ */
89
+ access?: ResourceAccess;
83
90
  }
84
91
  /**
85
92
  * Check if a given object implements the CredentialProfile interface.
@@ -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 { CredentialIdFromJSON, CredentialIdToJSON, } from './CredentialId';
15
16
  import { CredentialProfileOwnerFromJSON, CredentialProfileOwnerToJSON, } from './CredentialProfileOwner';
16
17
  /**
@@ -55,6 +56,7 @@ export function CredentialProfileFromJSONTyped(json, ignoreDiscriminator) {
55
56
  'customApis': json['customApis'],
56
57
  'createdAt': (new Date(json['createdAt'])),
57
58
  'updatedAt': (new Date(json['updatedAt'])),
59
+ 'access': json['access'] == null ? undefined : ResourceAccessFromJSON(json['access']),
58
60
  };
59
61
  }
60
62
  export function CredentialProfileToJSON(json) {
@@ -75,5 +77,6 @@ export function CredentialProfileToJSONTyped(value, ignoreDiscriminator = false)
75
77
  'customApis': value['customApis'],
76
78
  'createdAt': value['createdAt'].toISOString(),
77
79
  'updatedAt': value['updatedAt'].toISOString(),
80
+ 'access': ResourceAccessToJSON(value['access']),
78
81
  };
79
82
  }
@@ -46,7 +46,7 @@ export interface DeletionOperation {
46
46
  */
47
47
  status: DeletionOperationStatusEnum;
48
48
  /**
49
- * What the background purge is doing. The target is already gone from every list, restore and fork once the operation exists. `waiting_for_uploads`: stored data is erased once the last upload URL issued for it expires (`expectedBy`). `retrying`: a transient fault, retried automatically. `completed`: a newer snapshot, a fork or a named snapshot made from it keeps the data it reads, until that is deleted too.
49
+ * What the background purge is doing. The target is already gone from every list, restore and fork once the operation exists. `waiting_for_uploads`: stored data is erased once the last upload URL issued for it expires (`expectedBy`). `retrying`: a transient fault, retried automatically. `completed`: a newer snapshot, a fork or a saved snapshot made from it keeps the data it reads, until that is deleted too.
50
50
  * @type {DeletionOperationStageEnum}
51
51
  * @memberof DeletionOperation
52
52
  */
@@ -0,0 +1,57 @@
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 FileDeleteResponse
16
+ */
17
+ export interface FileDeleteResponse {
18
+ /**
19
+ *
20
+ * @type {boolean}
21
+ * @memberof FileDeleteResponse
22
+ */
23
+ ok: boolean;
24
+ /**
25
+ *
26
+ * @type {FileDeleteResponseTypeEnum}
27
+ * @memberof FileDeleteResponse
28
+ */
29
+ type: FileDeleteResponseTypeEnum;
30
+ /**
31
+ *
32
+ * @type {boolean}
33
+ * @memberof FileDeleteResponse
34
+ */
35
+ success?: boolean;
36
+ /**
37
+ *
38
+ * @type {string}
39
+ * @memberof FileDeleteResponse
40
+ */
41
+ path: string;
42
+ }
43
+ /**
44
+ * @export
45
+ */
46
+ export declare const FileDeleteResponseTypeEnum: {
47
+ readonly FileDeleted: 'file.deleted';
48
+ };
49
+ export type FileDeleteResponseTypeEnum = typeof FileDeleteResponseTypeEnum[keyof typeof FileDeleteResponseTypeEnum];
50
+ /**
51
+ * Check if a given object implements the FileDeleteResponse interface.
52
+ */
53
+ export declare function instanceOfFileDeleteResponse(value: object): value is FileDeleteResponse;
54
+ export declare function FileDeleteResponseFromJSON(json: any): FileDeleteResponse;
55
+ export declare function FileDeleteResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): FileDeleteResponse;
56
+ export declare function FileDeleteResponseToJSON(json: any): FileDeleteResponse;
57
+ export declare function FileDeleteResponseToJSONTyped(value?: FileDeleteResponse | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,59 @@
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 FileDeleteResponseTypeEnum = {
18
+ FileDeleted: 'file.deleted'
19
+ };
20
+ /**
21
+ * Check if a given object implements the FileDeleteResponse interface.
22
+ */
23
+ export function instanceOfFileDeleteResponse(value) {
24
+ if (!('ok' in value) || value['ok'] === undefined)
25
+ return false;
26
+ if (!('type' in value) || value['type'] === undefined)
27
+ return false;
28
+ if (!('path' in value) || value['path'] === undefined)
29
+ return false;
30
+ return true;
31
+ }
32
+ export function FileDeleteResponseFromJSON(json) {
33
+ return FileDeleteResponseFromJSONTyped(json, false);
34
+ }
35
+ export function FileDeleteResponseFromJSONTyped(json, ignoreDiscriminator) {
36
+ if (json == null) {
37
+ return json;
38
+ }
39
+ return {
40
+ 'ok': json['ok'],
41
+ 'type': json['type'],
42
+ 'success': json['success'] == null ? undefined : json['success'],
43
+ 'path': json['path'],
44
+ };
45
+ }
46
+ export function FileDeleteResponseToJSON(json) {
47
+ return FileDeleteResponseToJSONTyped(json, false);
48
+ }
49
+ export function FileDeleteResponseToJSONTyped(value, ignoreDiscriminator = false) {
50
+ if (value == null) {
51
+ return value;
52
+ }
53
+ return {
54
+ 'ok': value['ok'],
55
+ 'type': value['type'],
56
+ 'success': value['success'],
57
+ 'path': value['path'],
58
+ };
59
+ }