@archildata/api-types 0.0.45 → 0.0.47

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 (2) hide show
  1. package/index.d.ts +217 -7
  2. package/package.json +1 -1
package/index.d.ts CHANGED
@@ -58,6 +58,26 @@ export interface paths {
58
58
  patch?: never;
59
59
  trace?: never;
60
60
  };
61
+ "/api/billing/default-payment-method": {
62
+ parameters: {
63
+ query?: never;
64
+ header?: never;
65
+ path?: never;
66
+ cookie?: never;
67
+ };
68
+ get?: never;
69
+ /**
70
+ * Set the default method for customer invoices and the current subscription
71
+ * @description Provide a saved method ID or a succeeded SetupIntent ID. The method must belong to the authenticated account's Stripe customer. Existing invoice debt is not paid by this action. Accounts with multiple billable subscriptions require support review.
72
+ */
73
+ put: operations["setBillingDefaultPaymentMethod"];
74
+ post?: never;
75
+ delete?: never;
76
+ options?: never;
77
+ head?: never;
78
+ patch?: never;
79
+ trace?: never;
80
+ };
61
81
  "/api/activity": {
62
82
  parameters: {
63
83
  query?: never;
@@ -398,6 +418,55 @@ export interface paths {
398
418
  patch?: never;
399
419
  trace?: never;
400
420
  };
421
+ "/api/images": {
422
+ parameters: {
423
+ query?: never;
424
+ header?: never;
425
+ path?: never;
426
+ cookie?: never;
427
+ };
428
+ get?: never;
429
+ put?: never;
430
+ /**
431
+ * Build a sandbox image
432
+ * @description Starts pulling and converting an OCI image, or joins the build already
433
+ * running for it. Poll the image until it is `ready`, then pass its
434
+ * `image_id` when creating a sandbox. Requesting the same `source` again
435
+ * returns the same image. A finished tag rebuilds, since the tag may have
436
+ * moved; until the rebuild is `ready`, new sandboxes boot the previous
437
+ * `digest`. A finished digest reference returns immediately.
438
+ * `registry_auth` pulls from a private registry, and a private image is
439
+ * visible only to its account. The credentials are passed to the build
440
+ * and never stored. A failed build, or a build whose runtime host does
441
+ * not answer, builds again on the next request.
442
+ */
443
+ post: operations["createImage"];
444
+ delete?: never;
445
+ options?: never;
446
+ head?: never;
447
+ patch?: never;
448
+ trace?: never;
449
+ };
450
+ "/api/images/{image_id}": {
451
+ parameters: {
452
+ query?: never;
453
+ header?: never;
454
+ path?: never;
455
+ cookie?: never;
456
+ };
457
+ /**
458
+ * Get a sandbox image
459
+ * @description Reports build progress. A build its runtime host failed or lost reports `failed` with `failure_reason: interrupted`; one whose host does not answer stays `building`. Request the image again to rebuild either.
460
+ */
461
+ get: operations["getImage"];
462
+ put?: never;
463
+ post?: never;
464
+ delete?: never;
465
+ options?: never;
466
+ head?: never;
467
+ patch?: never;
468
+ trace?: never;
469
+ };
401
470
  "/api/sandboxes": {
402
471
  parameters: {
403
472
  query?: never;
@@ -862,6 +931,16 @@ export interface components {
862
931
  clientSecret: string;
863
932
  };
864
933
  };
934
+ ApiResponse_BillingDefaultPaymentMethod: {
935
+ success: boolean;
936
+ data: {
937
+ paymentMethodId: string;
938
+ customerDefault: boolean;
939
+ subscriptionDefault: boolean;
940
+ /** @enum {string} */
941
+ scope: "customer" | "customer_and_subscription";
942
+ };
943
+ };
865
944
  ActivityEvent: {
866
945
  accountId: string;
867
946
  /**
@@ -963,8 +1042,10 @@ export interface components {
963
1042
  idle_ttl_seconds: number;
964
1043
  /** @description Maximum number of concurrently attached process sessions. Detached processes and one-shot process controls do not count. */
965
1044
  max_concurrent_execs: number;
966
- /** @description OCI reference requested when the sandbox was created. */
1045
+ /** @description OCI reference requested when the sandbox was created. Empty for a sandbox created from `image_id`. */
967
1046
  base_image: string;
1047
+ /** @description Image digest the sandbox was created from, if any. */
1048
+ image_digest?: string;
968
1049
  /**
969
1050
  * @description Sandbox CPU architecture.
970
1051
  * @enum {string}
@@ -1090,6 +1171,44 @@ export interface components {
1090
1171
  success: boolean;
1091
1172
  data: components["schemas"]["SandboxConnection"];
1092
1173
  };
1174
+ RegistryAuth: {
1175
+ username: string;
1176
+ /** @description Password or access token, such as a GitHub personal access token with `read:packages`. */
1177
+ password: string;
1178
+ };
1179
+ CreateImageRequest: {
1180
+ /** @description Linux OCI image reference. Docker shorthand and tags are accepted. */
1181
+ source: string;
1182
+ registry_auth?: components["schemas"]["RegistryAuth"];
1183
+ };
1184
+ /** @enum {string} */
1185
+ ImageState: "building" | "ready" | "failed";
1186
+ Image: {
1187
+ image_id: string;
1188
+ /** @description Normalized OCI reference the image is pulled from. */
1189
+ source: string;
1190
+ /** @description Whether the image is pulled with registry credentials. */
1191
+ private: boolean;
1192
+ status: components["schemas"]["ImageState"];
1193
+ /** @description The most recent successful build. Sandboxes created from this `image_id` boot it, and keep it after the image is rebuilt. */
1194
+ digest?: string;
1195
+ /** @description The pulled manifest, as `repository@sha256:...`. */
1196
+ canonical_source?: string;
1197
+ /**
1198
+ * @description Set when `failed`. `invalid_source`: the registry reported the image missing or denied access, so requesting it again will not help. `interrupted`: the build did not finish; request the image again.
1199
+ * @enum {string}
1200
+ */
1201
+ failure_reason?: "invalid_source" | "interrupted";
1202
+ /** Format: date-time */
1203
+ created_at: string;
1204
+ /** Format: date-time */
1205
+ updated_at: string;
1206
+ };
1207
+ ApiResponse_Image: {
1208
+ /** @example true */
1209
+ success: boolean;
1210
+ data: components["schemas"]["Image"];
1211
+ };
1093
1212
  ApiResponse_Sandbox: {
1094
1213
  /** @example true */
1095
1214
  success: boolean;
@@ -1107,11 +1226,10 @@ export interface components {
1107
1226
  vcpu_count: number;
1108
1227
  /** @default 2048 */
1109
1228
  mem_size_mib: number;
1110
- /**
1111
- * @description Public Linux OCI image reference. Docker shorthand and tags are accepted; the selected platform manifest is pinned at creation.
1112
- * @default ubuntu:26.04
1113
- */
1114
- base_image: string;
1229
+ /** @description Public Linux OCI image reference. Docker shorthand and tags are accepted; the selected platform manifest is pinned at creation. Defaults to `ubuntu:26.04` when neither this nor `image_id` is set. Mutually exclusive with `image_id`. */
1230
+ base_image?: string;
1231
+ /** @description An image from the images API, for images that need registry credentials. The sandbox boots the image's current `digest`. Mutually exclusive with `base_image`. */
1232
+ image_id?: string;
1115
1233
  /** @description TCP ports to expose publicly when the sandbox is created. */
1116
1234
  ports?: number[];
1117
1235
  /**
@@ -2177,6 +2295,46 @@ export interface operations {
2177
2295
  };
2178
2296
  };
2179
2297
  };
2298
+ setBillingDefaultPaymentMethod: {
2299
+ parameters: {
2300
+ query?: never;
2301
+ header?: never;
2302
+ path?: never;
2303
+ cookie?: never;
2304
+ };
2305
+ requestBody: {
2306
+ content: {
2307
+ "application/json": {
2308
+ methodId?: string;
2309
+ setupIntentId?: string;
2310
+ };
2311
+ };
2312
+ };
2313
+ responses: {
2314
+ /** @description Stripe defaults were fetched again and verified */
2315
+ 200: {
2316
+ headers: {
2317
+ [name: string]: unknown;
2318
+ };
2319
+ content: {
2320
+ "application/json": components["schemas"]["ApiResponse_BillingDefaultPaymentMethod"];
2321
+ };
2322
+ };
2323
+ 400: components["responses"]["ValidationError"];
2324
+ /** @description Missing, invalid, or disallowed credential */
2325
+ 401: {
2326
+ headers: {
2327
+ [name: string]: unknown;
2328
+ };
2329
+ content: {
2330
+ "text/plain": string;
2331
+ };
2332
+ };
2333
+ 404: components["responses"]["NotFound"];
2334
+ 409: components["responses"]["ValidationError"];
2335
+ 502: components["responses"]["InternalError"];
2336
+ };
2337
+ };
2180
2338
  listActivity: {
2181
2339
  parameters: {
2182
2340
  query?: {
@@ -2776,6 +2934,58 @@ export interface operations {
2776
2934
  500: components["responses"]["InternalError"];
2777
2935
  };
2778
2936
  };
2937
+ createImage: {
2938
+ parameters: {
2939
+ query?: never;
2940
+ header?: never;
2941
+ path?: never;
2942
+ cookie?: never;
2943
+ };
2944
+ requestBody: {
2945
+ content: {
2946
+ "application/json": components["schemas"]["CreateImageRequest"];
2947
+ };
2948
+ };
2949
+ responses: {
2950
+ /** @description The image build is running or finished */
2951
+ 202: {
2952
+ headers: {
2953
+ [name: string]: unknown;
2954
+ };
2955
+ content: {
2956
+ "application/json": components["schemas"]["ApiResponse_Image"];
2957
+ };
2958
+ };
2959
+ 400: components["responses"]["ValidationError"];
2960
+ 401: components["responses"]["Unauthorized"];
2961
+ 500: components["responses"]["InternalError"];
2962
+ };
2963
+ };
2964
+ getImage: {
2965
+ parameters: {
2966
+ query?: never;
2967
+ header?: never;
2968
+ path: {
2969
+ image_id: string;
2970
+ };
2971
+ cookie?: never;
2972
+ };
2973
+ requestBody?: never;
2974
+ responses: {
2975
+ /** @description The sandbox image */
2976
+ 200: {
2977
+ headers: {
2978
+ [name: string]: unknown;
2979
+ };
2980
+ content: {
2981
+ "application/json": components["schemas"]["ApiResponse_Image"];
2982
+ };
2983
+ };
2984
+ 401: components["responses"]["Unauthorized"];
2985
+ 404: components["responses"]["NotFound"];
2986
+ 500: components["responses"]["InternalError"];
2987
+ };
2988
+ };
2779
2989
  listSandboxes: {
2780
2990
  parameters: {
2781
2991
  query?: {
@@ -2830,7 +3040,7 @@ export interface operations {
2830
3040
  400: components["responses"]["ValidationError"];
2831
3041
  401: components["responses"]["Unauthorized"];
2832
3042
  404: components["responses"]["NotFound"];
2833
- /** @description The requested sandbox name already exists in the account */
3043
+ /** @description The requested sandbox name already exists in the account, or the requested `image_id` has no finished build yet */
2834
3044
  409: {
2835
3045
  headers: {
2836
3046
  [name: string]: unknown;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@archildata/api-types",
3
- "version": "0.0.45",
3
+ "version": "0.0.47",
4
4
  "description": "API types for the Archil control plane",
5
5
  "type": "module",
6
6
  "types": "index.d.ts",