@zocomputer/system-api 0.1.1 → 0.1.2

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.
@@ -105,6 +105,10 @@ export interface ZoAgentCancelOutputV1 {
105
105
  export interface ZoAgentCreateInputV1 {
106
106
  workspace_id: string;
107
107
  display_name: string;
108
+ /**
109
+ * Describe what this Agent is for in the user's terms.
110
+ */
111
+ description?: string;
108
112
  visibility?: ("workspace" | "protected");
109
113
  implementation: "zo.native";
110
114
  configuration: ZoAgentCreateInputV1NativeConfiguration;
@@ -139,6 +143,7 @@ export interface ZoAgentCreateOutputV1 {
139
143
  type: "agent";
140
144
  type_version: number;
141
145
  display_name: string;
146
+ description: string;
142
147
  revision: number;
143
148
  implementation: "zo.native";
144
149
  configuration: ZoAgentCreateOutputV1NativeConfiguration;
@@ -222,6 +227,7 @@ export interface ZoAgentGetOutputV1 {
222
227
  type: "agent";
223
228
  type_version: number;
224
229
  display_name: string;
230
+ description: string;
225
231
  revision: number;
226
232
  implementation: "zo.native";
227
233
  configuration: ZoAgentGetOutputV1NativeConfiguration;
@@ -301,6 +307,7 @@ export interface ZoAgentListOutputV1Agent {
301
307
  type: "agent";
302
308
  type_version: number;
303
309
  display_name: string;
310
+ description: string;
304
311
  revision: number;
305
312
  implementation: "zo.native";
306
313
  configuration: ZoAgentListOutputV1NativeConfiguration;
@@ -526,6 +533,10 @@ export interface ZoAgentUpdateInputV1 {
526
533
  agent_id: string;
527
534
  expected_revision: number;
528
535
  display_name?: (string | null);
536
+ /**
537
+ * Describe what this Agent is for in the user's terms.
538
+ */
539
+ description?: (string | null);
529
540
  configuration?: (ZoAgentUpdateInputV1NativeConfiguration | null);
530
541
  }
531
542
  /**
@@ -558,6 +569,7 @@ export interface ZoAgentUpdateOutputV1 {
558
569
  type: "agent";
559
570
  type_version: number;
560
571
  display_name: string;
572
+ description: string;
561
573
  revision: number;
562
574
  implementation: "zo.native";
563
575
  configuration: ZoAgentUpdateOutputV1NativeConfiguration;
@@ -789,18 +801,47 @@ export interface ZoConnectionAuthorizeOutputV1KeyAttached {
789
801
  }
790
802
  export interface ZoConnectionCreateInputV1 {
791
803
  workspace_id: string;
792
- definition_id: string;
793
- definition_version: number;
804
+ /**
805
+ * The published definition to connect to. Give it, or `values`, not both.
806
+ */
807
+ definition_id?: (string | null);
808
+ /**
809
+ * The version of `definition_id` to connect to; required with it.
810
+ */
811
+ definition_version?: (number | null);
794
812
  display_name: string;
795
- configuration: {
813
+ /**
814
+ * Describe what this connection is for in the user's terms.
815
+ */
816
+ description?: string;
817
+ /**
818
+ * The connection's configuration; required with `definition_id`.
819
+ */
820
+ configuration?: ({
796
821
  [k: string]: JsonValue;
797
- };
822
+ } | null);
798
823
  visibility?: ("workspace" | "protected");
824
+ /**
825
+ * Named values to store, in place of a definition: Zo publishes a private definition named after `display_name`, with one required key credential per name delivered as the environment variable of that name, creates the connection and stores every value. A definition name already taken in the workspace returns `conflict`. A name Zo refuses as an environment variable returns `invalid_input` with the `invalid_environment` violation.
826
+ */
827
+ values?: ({
828
+ /**
829
+ * Secret: the value. Stored sealed and never returned.
830
+ */
831
+ [k: string]: string;
832
+ } | null);
833
+ /**
834
+ * Environment variables delivered, exactly as written, to machines that list this connection, beside its credential and the variables its definition sets. Plain strings, not secrets: put a secret in the vault. Names are upper-case letters, digits and underscores; at most 64 variables of at most 4096 characters each.
835
+ */
836
+ environment?: {
837
+ [k: string]: string;
838
+ };
799
839
  }
800
840
  export interface ZoConnectionCreateOutputV1 {
801
841
  id: string;
802
842
  workspace_id: string;
803
843
  display_name: string;
844
+ description: string;
804
845
  definition_id: string;
805
846
  definition_version: number;
806
847
  visibility: ("workspace" | "protected");
@@ -824,6 +865,7 @@ export interface ZoConnectionDisconnectOutputV1 {
824
865
  id: string;
825
866
  workspace_id: string;
826
867
  display_name: string;
868
+ description: string;
827
869
  definition_id: string;
828
870
  definition_version: number;
829
871
  visibility: ("workspace" | "protected");
@@ -838,6 +880,7 @@ export interface ZoConnectionGetOutputV1 {
838
880
  id: string;
839
881
  workspace_id: string;
840
882
  display_name: string;
883
+ description: string;
841
884
  definition_id: string;
842
885
  definition_version: number;
843
886
  visibility: ("workspace" | "protected");
@@ -847,6 +890,9 @@ export interface ZoConnectionGetOutputV1 {
847
890
  account_labels: {
848
891
  [k: string]: string;
849
892
  };
893
+ environment: {
894
+ [k: string]: string;
895
+ };
850
896
  }
851
897
  export interface ZoConnectionListInputV1 {
852
898
  workspace_id: string;
@@ -859,6 +905,7 @@ export interface ZoConnectionListOutputV1ConnectionWithAccountsResource {
859
905
  id: string;
860
906
  workspace_id: string;
861
907
  display_name: string;
908
+ description: string;
862
909
  definition_id: string;
863
910
  definition_version: number;
864
911
  visibility: ("workspace" | "protected");
@@ -868,6 +915,9 @@ export interface ZoConnectionListOutputV1ConnectionWithAccountsResource {
868
915
  account_labels: {
869
916
  [k: string]: string;
870
917
  };
918
+ environment: {
919
+ [k: string]: string;
920
+ };
871
921
  }
872
922
  export interface ZoConnectionListQueryV1 {
873
923
  /**
@@ -904,6 +954,7 @@ export interface ZoConnectionSlackCompleteAuthorizationOutputV1 {
904
954
  id: string;
905
955
  workspace_id: string;
906
956
  display_name: string;
957
+ description: string;
907
958
  definition_id: string;
908
959
  definition_version: number;
909
960
  visibility: ("workspace" | "protected");
@@ -913,6 +964,9 @@ export interface ZoConnectionSlackCompleteAuthorizationOutputV1 {
913
964
  account_labels: {
914
965
  [k: string]: string;
915
966
  };
967
+ environment: {
968
+ [k: string]: string;
969
+ };
916
970
  }
917
971
  export interface ZoConnectionSlackStartAuthorizationInputV1 {
918
972
  connection_id: string;
@@ -936,11 +990,32 @@ export interface ZoConnectionUpdateInputV1 {
936
990
  * A new name for the connection; omit it to keep the current name.
937
991
  */
938
992
  display_name?: (string | null);
993
+ /**
994
+ * Describe what this connection is for in the user's terms.
995
+ */
996
+ description?: (string | null);
997
+ /**
998
+ * Move the connection to this version of its definition, keeping its id and grants. Credentials in both versions keep their values, credentials only the current version has are erased, and credentials only the new version has start empty. Omit it to stay on the current version.
999
+ */
1000
+ definition_version?: (number | null);
1001
+ /**
1002
+ * Named values to set, or `null` to remove a name, on a connection whose definition is private to its workspace and holds only single-value key credentials, as one created from `values` does. Changing a value replaces that credential. Adding or removing a name publishes the definition's next version from the connection's own version and moves the connection to it, keeping its id and grants; other connections to the definition stay on their versions. A connection keeps at least one name. Any other connection returns `invalid_input`.
1003
+ */
1004
+ values?: ({
1005
+ [k: string]: string | null;
1006
+ } | null);
1007
+ /**
1008
+ * The environment that replaces the stored one; omit it to keep the stored environment. Environment variables delivered, exactly as written, to machines that list this connection, beside its credential and the variables its definition sets. Plain strings, not secrets: put a secret in the vault. Names are upper-case letters, digits and underscores; at most 64 variables of at most 4096 characters each.
1009
+ */
1010
+ environment?: ({
1011
+ [k: string]: string;
1012
+ } | null);
939
1013
  }
940
1014
  export interface ZoConnectionUpdateOutputV1 {
941
1015
  id: string;
942
1016
  workspace_id: string;
943
1017
  display_name: string;
1018
+ description: string;
944
1019
  definition_id: string;
945
1020
  definition_version: number;
946
1021
  visibility: ("workspace" | "protected");
@@ -2127,6 +2202,10 @@ export interface ZoFunctionCancelRunOutputV1 {
2127
2202
  export interface ZoFunctionCreateInputV1 {
2128
2203
  workspace_id: string;
2129
2204
  display_name: string;
2205
+ /**
2206
+ * Describe what this function is for in the user's terms.
2207
+ */
2208
+ description?: string;
2130
2209
  visibility?: ("workspace" | "protected");
2131
2210
  }
2132
2211
  export interface ZoFunctionCreateOutputV1 {
@@ -2135,6 +2214,7 @@ export interface ZoFunctionCreateOutputV1 {
2135
2214
  type: "function";
2136
2215
  type_version: number;
2137
2216
  display_name: string;
2217
+ description: string;
2138
2218
  revision: number;
2139
2219
  properties: ZoFunctionCreateOutputV1FunctionProperties;
2140
2220
  active_deployment_id: (string | null);
@@ -2203,6 +2283,7 @@ export interface ZoFunctionGetOutputV1 {
2203
2283
  type: "function";
2204
2284
  type_version: number;
2205
2285
  display_name: string;
2286
+ description: string;
2206
2287
  revision: number;
2207
2288
  properties: ZoFunctionGetOutputV1FunctionProperties;
2208
2289
  active_deployment_id: (string | null);
@@ -2323,6 +2404,7 @@ export interface ZoFunctionListOutputV1VisibleFunctionResource {
2323
2404
  type: "function";
2324
2405
  type_version: number;
2325
2406
  display_name: string;
2407
+ description: string;
2326
2408
  revision: number;
2327
2409
  properties: ZoFunctionListOutputV1FunctionProperties;
2328
2410
  active_deployment_id: (string | null);
@@ -2406,22 +2488,39 @@ export interface ZoMachineApplyPatchOutputV1 {
2406
2488
  size: number;
2407
2489
  sha256: string;
2408
2490
  }
2491
+ export type ZoMachineCreateInputV1GpuType = ("T4" | "L4" | "A10" | "L40S" | "A100" | "A100-40GB" | "A100-80GB" | "RTX-PRO-6000" | "H100" | "H100!" | "H200" | "B200" | "B200+" | "B300");
2409
2492
  export interface ZoMachineCreateInputV1 {
2410
2493
  workspace_id: string;
2411
2494
  idempotency_key: string;
2412
2495
  display_name: string;
2496
+ /**
2497
+ * Describe what this machine is for in the user's terms.
2498
+ */
2499
+ description?: string;
2413
2500
  source: ZoMachineCreateInputV1MachineSourceInput;
2414
2501
  resources: ZoMachineCreateInputV1MachineResourcesInput;
2415
2502
  lifecycle: ZoMachineCreateInputV1MachineLifecycleInput;
2416
2503
  region?: string;
2417
2504
  /**
2418
- * Which process runs first at boot. `none` (default): nothing; the machine waits for exec. `image`: the init system inside the machine's image (systemd, OpenRC) becomes PID 1 and starts the services enabled on its disk. This does not choose the image; `source.machine_image_id` does. Debian and Ubuntu images need `systemd systemd-sysv` installed first. A unit restarts after a crash only when it sets `Restart=`.
2505
+ * Which process runs first at boot. `none` (default): nothing; the machine waits for exec. `image`: the init system inside the machine's image (systemd, OpenRC) becomes PID 1 and starts the services enabled on its disk. This does not choose the image; `source.machine_image_id` does. Debian and Ubuntu images need `systemd systemd-sysv` installed first. A unit restarts after a crash only when it sets `Restart=`. GPU machines require `none`.
2419
2506
  */
2420
2507
  init?: ("none" | "image");
2421
2508
  /**
2422
- * Run these arguments as the main process on every boot, without a shell. Use ["sh", "-c", ...] for shell syntax. Find ENTRYPOINT and CMD on the image's registry page; Zo does not return them. Pass ENTRYPOINT then CMD. With `init: image`, the command must wait for services it needs. The machine stops when it exits; resume runs it again. It may run more than once after a lost create or resume response, so make it safe to rerun. Each argument is at most 4,096 UTF-8 bytes and all arguments total at most 65,536 bytes. A running command is not activity: set `idle_timeout_seconds` at least as long as the job. The maximum is published by `zo.machine.list_configurations` (3,600 s today); a longer job needs Zo exec or file calls, or HTTP through a tunnel or connect token. After exit, `get` may show `running` for a few minutes until the stop is recorded. Zo reports no exit reason or code. Write a job's result to disk. A resume runs the command again, so to read it, clear the command, resume, then use `zo.machine.read_bytes`. With `init: image` and a command, a missing `/sbin/init` ends the generation as an exit stop, without `incompatible_image`.
2509
+ * Run these arguments as the main process on every boot, without a shell. Use ["sh", "-c", ...] for shell syntax. Find ENTRYPOINT and CMD on the image's registry page; Zo does not return them. Pass ENTRYPOINT then CMD. With `init: image`, the command must wait for services it needs. The machine stops when it exits; resume runs it again. It may run more than once after a lost create or resume response, so make it safe to rerun. Each argument is at most 4,096 UTF-8 bytes and all arguments total at most 65,536 bytes. A running command is not activity: set `idle_timeout_seconds` at least as long as the job. The maximum is published by `zo.machine.list_configurations`: 3,600 s for CPU machines and 86,400 s for GPU machines. Longer CPU jobs need Zo exec or file calls, or HTTP through a tunnel or connect token. After exit, `get` may show `running` for a few minutes until the stop is recorded. Zo reports no exit reason or code. Write a job's result to disk. A resume runs the command again, so to read it, clear the command, resume, then use `zo.machine.read_bytes`. With `init: image` and a command, a missing `/sbin/init` ends the generation as an exit stop, without `incompatible_image`.
2423
2510
  */
2424
2511
  command?: ([string, ...(string)[]] | null);
2512
+ /**
2513
+ * Environment variables set, exactly as written, in the boot process and every command run on the machine. Plain strings, not secrets: they are part of the machine's configuration, which anyone who can read the machine sees. Names are upper-case letters, digits and underscores, and reserved names such as `PATH` or ones starting with `ZO_` are refused; at most 64 variables of at most 4096 characters each. A variable here wins over a connection in `credentials` that sets the same name.
2514
+ */
2515
+ environment?: {
2516
+ [k: string]: string;
2517
+ };
2518
+ /**
2519
+ * Connection IDs whose credentials the machine receives as environment variables, in the boot process and every command. Each slot of a listed connection sets the variable its definition names, with the variables the slot and the connection declare. The machine also needs a use grant on each connection (`zo.grant.create` with the machine as assignee); a listed connection without one delivers nothing. When two listed connections set the same variable, the later one in the list wins. At most 100 connections, each listed once.
2520
+ *
2521
+ * @maxItems 100
2522
+ */
2523
+ credentials?: string[];
2425
2524
  /**
2426
2525
  * `workspace` (default): every member can see and use it. `protected`: only you, and whoever you share it with; workspace-wide grants don't reach it. Fixed at creation.
2427
2526
  */
@@ -2439,11 +2538,20 @@ export interface ZoMachineCreateInputV1MachineResourcesInput {
2439
2538
  */
2440
2539
  vcpus: number;
2441
2540
  memory_mib: number;
2541
+ gpu?: (ZoMachineCreateInputV1MachineGpu | null);
2542
+ }
2543
+ export interface ZoMachineCreateInputV1MachineGpu {
2544
+ type: ZoMachineCreateInputV1GpuType;
2545
+ count: number;
2442
2546
  }
2443
2547
  export interface ZoMachineCreateInputV1MachineLifecycleInput {
2444
- idle_timeout_seconds?: number;
2548
+ /**
2549
+ * Omit for 900 seconds on CPU. For GPU, the default is the smaller of 300 seconds and max_run_seconds. An explicit GPU idle timeout must not exceed max_run_seconds.
2550
+ */
2551
+ idle_timeout_seconds?: (number | null);
2445
2552
  max_run_seconds: number;
2446
2553
  }
2554
+ export type ZoMachineCreateOutputV1GpuType = ("T4" | "L4" | "A10" | "L40S" | "A100" | "A100-40GB" | "A100-80GB" | "RTX-PRO-6000" | "H100" | "H100!" | "H200" | "B200" | "B200+" | "B300");
2447
2555
  export type ZoMachineCreateOutputV1ObservedState = ("creating" | "running" | "stopping" | "stopped" | "resuming" | "destroying" | "destroyed" | "failed");
2448
2556
  /**
2449
2557
  * A machine's registry envelope, boot settings and row-owned lifecycle state.
@@ -2454,6 +2562,7 @@ export interface ZoMachineCreateOutputV1 {
2454
2562
  type: "machine";
2455
2563
  type_version: 1;
2456
2564
  display_name: string;
2565
+ description: string;
2457
2566
  visibility: ("workspace" | "protected");
2458
2567
  revision: number;
2459
2568
  properties: ZoMachineCreateOutputV1MachineProperties;
@@ -2465,6 +2574,8 @@ export interface ZoMachineCreateOutputV1 {
2465
2574
  created_at: string;
2466
2575
  updated_at: string;
2467
2576
  destroyed_at: (string | null);
2577
+ recoverable_until?: (string | null);
2578
+ recovery_acceptance_required?: boolean;
2468
2579
  }
2469
2580
  /**
2470
2581
  * Public properties of a `machine` resource.
@@ -2483,11 +2594,20 @@ export interface ZoMachineCreateOutputV1MachineProperties {
2483
2594
  machine_image_id: (string | null);
2484
2595
  vcpus: (number | null);
2485
2596
  memory_mib: (number | null);
2597
+ gpu?: (ZoMachineCreateOutputV1MachineGpu | null);
2486
2598
  region: (string | null);
2487
2599
  idle_timeout_seconds: (number | null);
2488
2600
  max_run_seconds: (number | null);
2489
2601
  init?: (("none" | "image") | null);
2490
2602
  command?: ([string, ...(string)[]] | null);
2603
+ environment?: ({
2604
+ [k: string]: string;
2605
+ } | null);
2606
+ credentials?: (string[] | null);
2607
+ }
2608
+ export interface ZoMachineCreateOutputV1MachineGpu {
2609
+ type: ZoMachineCreateOutputV1GpuType;
2610
+ count: number;
2491
2611
  }
2492
2612
  export interface ZoMachineCreateOutputV1MachineBootedView {
2493
2613
  init: ("none" | "image");
@@ -2498,6 +2618,7 @@ export interface ZoMachineDestroyInputV1 {
2498
2618
  expected_revision: number;
2499
2619
  idempotency_key: string;
2500
2620
  }
2621
+ export type ZoMachineDestroyOutputV1GpuType = ("T4" | "L4" | "A10" | "L40S" | "A100" | "A100-40GB" | "A100-80GB" | "RTX-PRO-6000" | "H100" | "H100!" | "H200" | "B200" | "B200+" | "B300");
2501
2622
  export type ZoMachineDestroyOutputV1ObservedState = ("creating" | "running" | "stopping" | "stopped" | "resuming" | "destroying" | "destroyed" | "failed");
2502
2623
  /**
2503
2624
  * A machine's registry envelope, boot settings and row-owned lifecycle state.
@@ -2508,6 +2629,7 @@ export interface ZoMachineDestroyOutputV1 {
2508
2629
  type: "machine";
2509
2630
  type_version: 1;
2510
2631
  display_name: string;
2632
+ description: string;
2511
2633
  visibility: ("workspace" | "protected");
2512
2634
  revision: number;
2513
2635
  properties: ZoMachineDestroyOutputV1MachineProperties;
@@ -2519,6 +2641,8 @@ export interface ZoMachineDestroyOutputV1 {
2519
2641
  created_at: string;
2520
2642
  updated_at: string;
2521
2643
  destroyed_at: (string | null);
2644
+ recoverable_until?: (string | null);
2645
+ recovery_acceptance_required?: boolean;
2522
2646
  }
2523
2647
  /**
2524
2648
  * Public properties of a `machine` resource.
@@ -2537,11 +2661,20 @@ export interface ZoMachineDestroyOutputV1MachineProperties {
2537
2661
  machine_image_id: (string | null);
2538
2662
  vcpus: (number | null);
2539
2663
  memory_mib: (number | null);
2664
+ gpu?: (ZoMachineDestroyOutputV1MachineGpu | null);
2540
2665
  region: (string | null);
2541
2666
  idle_timeout_seconds: (number | null);
2542
2667
  max_run_seconds: (number | null);
2543
2668
  init?: (("none" | "image") | null);
2544
2669
  command?: ([string, ...(string)[]] | null);
2670
+ environment?: ({
2671
+ [k: string]: string;
2672
+ } | null);
2673
+ credentials?: (string[] | null);
2674
+ }
2675
+ export interface ZoMachineDestroyOutputV1MachineGpu {
2676
+ type: ZoMachineDestroyOutputV1GpuType;
2677
+ count: number;
2545
2678
  }
2546
2679
  export interface ZoMachineDestroyOutputV1MachineBootedView {
2547
2680
  init: ("none" | "image");
@@ -2565,6 +2698,7 @@ export interface ZoMachineExecOutputV1 {
2565
2698
  export interface ZoMachineGetInputV1 {
2566
2699
  machine_id: string;
2567
2700
  }
2701
+ export type ZoMachineGetOutputV1GpuType = ("T4" | "L4" | "A10" | "L40S" | "A100" | "A100-40GB" | "A100-80GB" | "RTX-PRO-6000" | "H100" | "H100!" | "H200" | "B200" | "B200+" | "B300");
2568
2702
  export type ZoMachineGetOutputV1ObservedState = ("creating" | "running" | "stopping" | "stopped" | "resuming" | "destroying" | "destroyed" | "failed");
2569
2703
  /**
2570
2704
  * A machine's registry envelope, boot settings and row-owned lifecycle state.
@@ -2575,6 +2709,7 @@ export interface ZoMachineGetOutputV1 {
2575
2709
  type: "machine";
2576
2710
  type_version: 1;
2577
2711
  display_name: string;
2712
+ description: string;
2578
2713
  visibility: ("workspace" | "protected");
2579
2714
  revision: number;
2580
2715
  properties: ZoMachineGetOutputV1MachineProperties;
@@ -2586,6 +2721,8 @@ export interface ZoMachineGetOutputV1 {
2586
2721
  created_at: string;
2587
2722
  updated_at: string;
2588
2723
  destroyed_at: (string | null);
2724
+ recoverable_until?: (string | null);
2725
+ recovery_acceptance_required?: boolean;
2589
2726
  }
2590
2727
  /**
2591
2728
  * Public properties of a `machine` resource.
@@ -2604,11 +2741,20 @@ export interface ZoMachineGetOutputV1MachineProperties {
2604
2741
  machine_image_id: (string | null);
2605
2742
  vcpus: (number | null);
2606
2743
  memory_mib: (number | null);
2744
+ gpu?: (ZoMachineGetOutputV1MachineGpu | null);
2607
2745
  region: (string | null);
2608
2746
  idle_timeout_seconds: (number | null);
2609
2747
  max_run_seconds: (number | null);
2610
2748
  init?: (("none" | "image") | null);
2611
2749
  command?: ([string, ...(string)[]] | null);
2750
+ environment?: ({
2751
+ [k: string]: string;
2752
+ } | null);
2753
+ credentials?: (string[] | null);
2754
+ }
2755
+ export interface ZoMachineGetOutputV1MachineGpu {
2756
+ type: ZoMachineGetOutputV1GpuType;
2757
+ count: number;
2612
2758
  }
2613
2759
  export interface ZoMachineGetOutputV1MachineBootedView {
2614
2760
  init: ("none" | "image");
@@ -2617,6 +2763,7 @@ export interface ZoMachineGetOutputV1MachineBootedView {
2617
2763
  export interface ZoMachineListInputV1 {
2618
2764
  workspace_id: string;
2619
2765
  }
2766
+ export type ZoMachineListOutputV1GpuType = ("T4" | "L4" | "A10" | "L40S" | "A100" | "A100-40GB" | "A100-80GB" | "RTX-PRO-6000" | "H100" | "H100!" | "H200" | "B200" | "B200+" | "B300");
2620
2767
  export type ZoMachineListOutputV1ObservedState = ("creating" | "running" | "stopping" | "stopped" | "resuming" | "destroying" | "destroyed" | "failed");
2621
2768
  export interface ZoMachineListOutputV1 {
2622
2769
  machines: ZoMachineListOutputV1ManagedMachineView[];
@@ -2631,6 +2778,7 @@ export interface ZoMachineListOutputV1ManagedMachineView {
2631
2778
  type: "machine";
2632
2779
  type_version: 1;
2633
2780
  display_name: string;
2781
+ description: string;
2634
2782
  visibility: ("workspace" | "protected");
2635
2783
  revision: number;
2636
2784
  properties: ZoMachineListOutputV1MachineProperties;
@@ -2642,6 +2790,8 @@ export interface ZoMachineListOutputV1ManagedMachineView {
2642
2790
  created_at: string;
2643
2791
  updated_at: string;
2644
2792
  destroyed_at: (string | null);
2793
+ recoverable_until?: (string | null);
2794
+ recovery_acceptance_required?: boolean;
2645
2795
  }
2646
2796
  /**
2647
2797
  * Public properties of a `machine` resource.
@@ -2660,11 +2810,20 @@ export interface ZoMachineListOutputV1MachineProperties {
2660
2810
  machine_image_id: (string | null);
2661
2811
  vcpus: (number | null);
2662
2812
  memory_mib: (number | null);
2813
+ gpu?: (ZoMachineListOutputV1MachineGpu | null);
2663
2814
  region: (string | null);
2664
2815
  idle_timeout_seconds: (number | null);
2665
2816
  max_run_seconds: (number | null);
2666
2817
  init?: (("none" | "image") | null);
2667
2818
  command?: ([string, ...(string)[]] | null);
2819
+ environment?: ({
2820
+ [k: string]: string;
2821
+ } | null);
2822
+ credentials?: (string[] | null);
2823
+ }
2824
+ export interface ZoMachineListOutputV1MachineGpu {
2825
+ type: ZoMachineListOutputV1GpuType;
2826
+ count: number;
2668
2827
  }
2669
2828
  export interface ZoMachineListOutputV1MachineBootedView {
2670
2829
  init: ("none" | "image");
@@ -2691,6 +2850,8 @@ export interface ZoMachineListConfigurationsInputV1 {
2691
2850
  */
2692
2851
  export interface ZoMachineListConfigurationsOutputV1 {
2693
2852
  resources: ZoMachineListConfigurationsOutputV1MachineResourceBounds;
2853
+ gpus: ZoMachineListConfigurationsOutputV1MachineGpuOffer[];
2854
+ runtime: "vm";
2694
2855
  vcpu_microusd_per_second: number;
2695
2856
  memory_gib_microusd_per_second: number;
2696
2857
  regions: string[];
@@ -2709,16 +2870,26 @@ export interface ZoMachineListConfigurationsOutputV1MachineRunBounds {
2709
2870
  minimum: number;
2710
2871
  maximum: number;
2711
2872
  }
2712
- export interface ZoMachineListConfigurationsOutputV1MachineCommandOffer {
2713
- supported: boolean;
2714
- max_args: number;
2715
- max_arg_bytes: number;
2873
+ export interface ZoMachineListConfigurationsOutputV1MachineGpuOffer {
2874
+ type: string;
2875
+ count: ZoMachineListConfigurationsOutputV1MachineRunBounds;
2876
+ vram_gb: number;
2877
+ gpu_microusd_per_second: number;
2878
+ runtime: "gvisor";
2879
+ init: ("none")[];
2880
+ idle_timeout_seconds: ZoMachineListConfigurationsOutputV1MachineIdleTimeoutBounds;
2881
+ max_run_seconds: ZoMachineListConfigurationsOutputV1MachineRunBounds;
2716
2882
  }
2717
2883
  export interface ZoMachineListConfigurationsOutputV1MachineIdleTimeoutBounds {
2718
2884
  minimum: number;
2719
2885
  maximum: number;
2720
2886
  default: number;
2721
2887
  }
2888
+ export interface ZoMachineListConfigurationsOutputV1MachineCommandOffer {
2889
+ supported: boolean;
2890
+ max_args: number;
2891
+ max_arg_bytes: number;
2892
+ }
2722
2893
  export interface ZoMachineListFilesInputV1 {
2723
2894
  machine_id: string;
2724
2895
  path: string;
@@ -2764,6 +2935,7 @@ export interface ZoMachineResumeInputV1 {
2764
2935
  idempotency_key: string;
2765
2936
  accept_recovery?: boolean;
2766
2937
  }
2938
+ export type ZoMachineResumeOutputV1GpuType = ("T4" | "L4" | "A10" | "L40S" | "A100" | "A100-40GB" | "A100-80GB" | "RTX-PRO-6000" | "H100" | "H100!" | "H200" | "B200" | "B200+" | "B300");
2767
2939
  export type ZoMachineResumeOutputV1ObservedState = ("creating" | "running" | "stopping" | "stopped" | "resuming" | "destroying" | "destroyed" | "failed");
2768
2940
  /**
2769
2941
  * A machine's registry envelope, boot settings and row-owned lifecycle state.
@@ -2774,6 +2946,7 @@ export interface ZoMachineResumeOutputV1 {
2774
2946
  type: "machine";
2775
2947
  type_version: 1;
2776
2948
  display_name: string;
2949
+ description: string;
2777
2950
  visibility: ("workspace" | "protected");
2778
2951
  revision: number;
2779
2952
  properties: ZoMachineResumeOutputV1MachineProperties;
@@ -2785,6 +2958,8 @@ export interface ZoMachineResumeOutputV1 {
2785
2958
  created_at: string;
2786
2959
  updated_at: string;
2787
2960
  destroyed_at: (string | null);
2961
+ recoverable_until?: (string | null);
2962
+ recovery_acceptance_required?: boolean;
2788
2963
  }
2789
2964
  /**
2790
2965
  * Public properties of a `machine` resource.
@@ -2803,11 +2978,20 @@ export interface ZoMachineResumeOutputV1MachineProperties {
2803
2978
  machine_image_id: (string | null);
2804
2979
  vcpus: (number | null);
2805
2980
  memory_mib: (number | null);
2981
+ gpu?: (ZoMachineResumeOutputV1MachineGpu | null);
2806
2982
  region: (string | null);
2807
2983
  idle_timeout_seconds: (number | null);
2808
2984
  max_run_seconds: (number | null);
2809
2985
  init?: (("none" | "image") | null);
2810
2986
  command?: ([string, ...(string)[]] | null);
2987
+ environment?: ({
2988
+ [k: string]: string;
2989
+ } | null);
2990
+ credentials?: (string[] | null);
2991
+ }
2992
+ export interface ZoMachineResumeOutputV1MachineGpu {
2993
+ type: ZoMachineResumeOutputV1GpuType;
2994
+ count: number;
2811
2995
  }
2812
2996
  export interface ZoMachineResumeOutputV1MachineBootedView {
2813
2997
  init: ("none" | "image");
@@ -2824,6 +3008,10 @@ export interface ZoMachineSnapshotInputV1 {
2824
3008
  }
2825
3009
  export interface ZoMachineSnapshotInputV1MachineImageCreateOptions {
2826
3010
  display_name: string;
3011
+ /**
3012
+ * Describe what this machine image is for in the user's terms.
3013
+ */
3014
+ description?: string;
2827
3015
  /**
2828
3016
  * Image visibility. Omit or pass null to use the creating operation's default. Protected images use ordinary verified-human creator ownership.
2829
3017
  */
@@ -2842,6 +3030,7 @@ export interface ZoMachineSnapshotOutputV1 {
2842
3030
  type: "machine_image";
2843
3031
  type_version: number;
2844
3032
  display_name: string;
3033
+ description: string;
2845
3034
  visibility: ("workspace" | "protected");
2846
3035
  revision: number;
2847
3036
  properties: ZoMachineSnapshotOutputV1MachineImageProperties;
@@ -2868,6 +3057,7 @@ export interface ZoMachineStopInputV1 {
2868
3057
  expected_revision: number;
2869
3058
  idempotency_key: string;
2870
3059
  }
3060
+ export type ZoMachineStopOutputV1GpuType = ("T4" | "L4" | "A10" | "L40S" | "A100" | "A100-40GB" | "A100-80GB" | "RTX-PRO-6000" | "H100" | "H100!" | "H200" | "B200" | "B200+" | "B300");
2871
3061
  export type ZoMachineStopOutputV1ObservedState = ("creating" | "running" | "stopping" | "stopped" | "resuming" | "destroying" | "destroyed" | "failed");
2872
3062
  /**
2873
3063
  * A machine's registry envelope, boot settings and row-owned lifecycle state.
@@ -2878,6 +3068,7 @@ export interface ZoMachineStopOutputV1 {
2878
3068
  type: "machine";
2879
3069
  type_version: 1;
2880
3070
  display_name: string;
3071
+ description: string;
2881
3072
  visibility: ("workspace" | "protected");
2882
3073
  revision: number;
2883
3074
  properties: ZoMachineStopOutputV1MachineProperties;
@@ -2889,6 +3080,8 @@ export interface ZoMachineStopOutputV1 {
2889
3080
  created_at: string;
2890
3081
  updated_at: string;
2891
3082
  destroyed_at: (string | null);
3083
+ recoverable_until?: (string | null);
3084
+ recovery_acceptance_required?: boolean;
2892
3085
  }
2893
3086
  /**
2894
3087
  * Public properties of a `machine` resource.
@@ -2907,11 +3100,20 @@ export interface ZoMachineStopOutputV1MachineProperties {
2907
3100
  machine_image_id: (string | null);
2908
3101
  vcpus: (number | null);
2909
3102
  memory_mib: (number | null);
3103
+ gpu?: (ZoMachineStopOutputV1MachineGpu | null);
2910
3104
  region: (string | null);
2911
3105
  idle_timeout_seconds: (number | null);
2912
3106
  max_run_seconds: (number | null);
2913
3107
  init?: (("none" | "image") | null);
2914
3108
  command?: ([string, ...(string)[]] | null);
3109
+ environment?: ({
3110
+ [k: string]: string;
3111
+ } | null);
3112
+ credentials?: (string[] | null);
3113
+ }
3114
+ export interface ZoMachineStopOutputV1MachineGpu {
3115
+ type: ZoMachineStopOutputV1GpuType;
3116
+ count: number;
2915
3117
  }
2916
3118
  export interface ZoMachineStopOutputV1MachineBootedView {
2917
3119
  init: ("none" | "image");
@@ -2923,6 +3125,7 @@ export interface ZoMachineSystemInfoInputV1 {
2923
3125
  export type ZoMachineSystemInfoOutputV1DesiredState = ("running" | "stopped" | "destroyed");
2924
3126
  export type ZoMachineSystemInfoOutputV1ObservedState = ("creating" | "running" | "stopping" | "stopped" | "resuming" | "destroying" | "destroyed" | "failed");
2925
3127
  export type ZoMachineSystemInfoOutputV1InfoSource = ("provider" | "zo_control");
3128
+ export type ZoMachineSystemInfoOutputV1GpuType = ("T4" | "L4" | "A10" | "L40S" | "A100" | "A100-40GB" | "A100-80GB" | "RTX-PRO-6000" | "H100" | "H100!" | "H200" | "B200" | "B200+" | "B300");
2926
3129
  export type ZoMachineSystemInfoOutputV1InfoGroup = ("architecture" | "os" | "allocation" | "guest" | "disk" | "network" | "accelerators" | "capabilities");
2927
3130
  export type ZoMachineSystemInfoOutputV1InfoUnknownReason = ("not_observed" | "driver_unavailable");
2928
3131
  /**
@@ -2971,9 +3174,14 @@ export interface ZoMachineSystemInfoOutputV1MachineInfoAllocation {
2971
3174
  observed_at: string;
2972
3175
  requested_vcpus: number;
2973
3176
  requested_memory_mib: number;
3177
+ requested_gpu?: (ZoMachineSystemInfoOutputV1MachineGpu | null);
2974
3178
  verified_vcpus: (number | null);
2975
3179
  verified_memory_mib: (number | null);
2976
3180
  }
3181
+ export interface ZoMachineSystemInfoOutputV1MachineGpu {
3182
+ type: ZoMachineSystemInfoOutputV1GpuType;
3183
+ count: number;
3184
+ }
2977
3185
  /**
2978
3186
  * What the machine's driver supports, not what the caller may do.
2979
3187
  * ``stop`` keeps the filesystem; ``pause`` keeps memory too.
@@ -3004,19 +3212,33 @@ export interface ZoMachineUpdateInputV1 {
3004
3212
  machine_id: string;
3005
3213
  expected_revision: number;
3006
3214
  display_name?: (string | null);
3215
+ /**
3216
+ * Describe what this machine is for in the user's terms.
3217
+ */
3218
+ description?: (string | null);
3007
3219
  lifecycle?: (ZoMachineUpdateInputV1MachineLifecycleUpdate | null);
3008
3220
  /**
3009
- * Which process runs first at boot. `none` (default): nothing; the machine waits for exec. `image`: the image's init system (systemd, OpenRC) becomes PID 1 and starts enabled services. `source.machine_image_id` chooses the image. Debian and Ubuntu need `systemd systemd-sysv`. Setting `image` needs exec permission; approval-gated exec is denied. Write access to boot files can run code as root at next boot.
3221
+ * Which process runs first at boot. `none` (default): nothing; the machine waits for exec. `image`: the image's init system (systemd, OpenRC) becomes PID 1 and starts enabled services. `source.machine_image_id` chooses the image. Debian and Ubuntu need `systemd systemd-sysv`. Write access to boot files can run code as root at next boot.
3010
3222
  */
3011
3223
  init?: (("none" | "image") | null);
3012
3224
  /**
3013
- * Set the main process for the next resume. Arguments run without a shell; use ["sh", "-c", ...] for shell syntax. Find ENTRYPOINT and CMD on the image's registry page; Zo does not return them. Pass ENTRYPOINT then CMD. With `init: image`, wait for needed services. The machine stops when the command exits; resume runs it again. It may run more than once after a lost create or resume response, so make it safe to rerun. Each argument is at most 4,096 UTF-8 bytes and all arguments total at most 65,536 bytes. A running command is not activity: set `idle_timeout_seconds` at least as long as the job. The maximum is published by `zo.machine.list_configurations` (3,600 s today); a longer job needs Zo exec or file calls, or HTTP through a tunnel or connect token. After exit, `get` may show `running` for a few minutes. Zo reports no exit reason or code. Write a job's result to disk. A resume runs the command again, so to read it, clear the command, resume, then use `zo.machine.read_bytes`. With `init: image` and a command, a missing `/sbin/init` ends the generation as an exit stop, without `incompatible_image`. Changing the command needs exec permission; approval-gated exec is denied. Write access to its script can run code as root at next boot.
3225
+ * Set the main process for the next resume. Arguments run without a shell; use ["sh", "-c", ...] for shell syntax. Find ENTRYPOINT and CMD on the image's registry page; Zo does not return them. Pass ENTRYPOINT then CMD. With `init: image`, wait for needed services. The machine stops when the command exits; resume runs it again. It may run more than once after a lost create or resume response, so make it safe to rerun. Each argument is at most 4,096 UTF-8 bytes and all arguments total at most 65,536 bytes. A running command is not activity: set `idle_timeout_seconds` at least as long as the job. The maximum is published by `zo.machine.list_configurations`: 3,600 s for CPU machines and 86,400 s for GPU machines. Longer CPU jobs need Zo exec or file calls, or HTTP through a tunnel or connect token. After exit, `get` may show `running` for a few minutes. Zo reports no exit reason or code. Write a job's result to disk. A resume runs the command again, so to read it, clear the command, resume, then use `zo.machine.read_bytes`. With `init: image` and a command, a missing `/sbin/init` ends the generation as an exit stop, without `incompatible_image`. Write access to its script can run code as root at next boot.
3014
3226
  */
3015
3227
  command?: ([string, ...(string)[]] | null);
3016
3228
  /**
3017
- * Remove the main process on the next resume. Requires manage permission only.
3229
+ * Remove the main process on the next resume.
3018
3230
  */
3019
3231
  clear_command?: boolean;
3232
+ /**
3233
+ * The environment that replaces the stored one; omit it to keep it. Environment variables set, exactly as written, in the boot process and every command run on the machine. Plain strings, not secrets: they are part of the machine's configuration, which anyone who can read the machine sees. Names are upper-case letters, digits and underscores, and reserved names such as `PATH` or ones starting with `ZO_` are refused; at most 64 variables of at most 4096 characters each. A variable here wins over a connection in `credentials` that sets the same name.
3234
+ */
3235
+ environment?: ({
3236
+ [k: string]: string;
3237
+ } | null);
3238
+ /**
3239
+ * The list that replaces the stored one; omit it to keep it. Connection IDs whose credentials the machine receives as environment variables, in the boot process and every command. Each slot of a listed connection sets the variable its definition names, with the variables the slot and the connection declare. The machine also needs a use grant on each connection (`zo.grant.create` with the machine as assignee); a listed connection without one delivers nothing. When two listed connections set the same variable, the later one in the list wins. At most 100 connections, each listed once.
3240
+ */
3241
+ credentials?: (string[] | null);
3020
3242
  }
3021
3243
  /**
3022
3244
  * The timers a caller may change after create. Modal fixes them at
@@ -3030,6 +3252,7 @@ export interface ZoMachineUpdateOutputV1 {
3030
3252
  machine_id: string;
3031
3253
  revision: number;
3032
3254
  display_name: string;
3255
+ description: string;
3033
3256
  idle_timeout_seconds: number;
3034
3257
  max_run_seconds: (number | null);
3035
3258
  }
@@ -3063,6 +3286,7 @@ export interface ZoMachineImageDeleteOutputV1 {
3063
3286
  type: "machine_image";
3064
3287
  type_version: number;
3065
3288
  display_name: string;
3289
+ description: string;
3066
3290
  visibility: ("workspace" | "protected");
3067
3291
  revision: number;
3068
3292
  properties: ZoMachineImageDeleteOutputV1MachineImageProperties;
@@ -3100,6 +3324,7 @@ export interface ZoMachineImageGetOutputV1 {
3100
3324
  type: "machine_image";
3101
3325
  type_version: number;
3102
3326
  display_name: string;
3327
+ description: string;
3103
3328
  visibility: ("workspace" | "protected");
3104
3329
  revision: number;
3105
3330
  properties: ZoMachineImageGetOutputV1MachineImageProperties;
@@ -3123,6 +3348,10 @@ export interface ZoMachineImageGetOutputV1MachineImageProperties {
3123
3348
  }
3124
3349
  export interface ZoMachineImageImportInputV1 {
3125
3350
  display_name: string;
3351
+ /**
3352
+ * Describe what this machine image is for in the user's terms.
3353
+ */
3354
+ description?: string;
3126
3355
  /**
3127
3356
  * `workspace` (default): every member can see and use it. `protected`: only you, and whoever you share it with; workspace-wide grants don't reach it. Fixed at creation.
3128
3357
  */
@@ -3149,6 +3378,7 @@ export interface ZoMachineImageImportOutputV1 {
3149
3378
  type: "machine_image";
3150
3379
  type_version: number;
3151
3380
  display_name: string;
3381
+ description: string;
3152
3382
  visibility: ("workspace" | "protected");
3153
3383
  revision: number;
3154
3384
  properties: ZoMachineImageImportOutputV1MachineImageProperties;
@@ -3190,6 +3420,7 @@ export interface ZoMachineImageListOutputV1MachineImageView {
3190
3420
  type: "machine_image";
3191
3421
  type_version: number;
3192
3422
  display_name: string;
3423
+ description: string;
3193
3424
  visibility: ("workspace" | "protected");
3194
3425
  revision: number;
3195
3426
  properties: ZoMachineImageListOutputV1MachineImageProperties;
@@ -3430,6 +3661,10 @@ export interface ZoOauthAppUpdateOutputV1 {
3430
3661
  export interface ZoScheduleCreateInputV1 {
3431
3662
  workspace_id: string;
3432
3663
  display_name: string;
3664
+ /**
3665
+ * Describe what this schedule is for in the user's terms.
3666
+ */
3667
+ description?: string;
3433
3668
  rrule: string;
3434
3669
  start_at: string;
3435
3670
  timezone: string;
@@ -3444,6 +3679,7 @@ export interface ZoScheduleCreateOutputV1 {
3444
3679
  type: "schedule";
3445
3680
  type_version: number;
3446
3681
  display_name: string;
3682
+ description: string;
3447
3683
  revision: number;
3448
3684
  visibility: ("workspace" | "protected");
3449
3685
  owner_user_id: (string | null);
@@ -3483,6 +3719,7 @@ export interface ZoScheduleGetOutputV1 {
3483
3719
  type: "schedule";
3484
3720
  type_version: number;
3485
3721
  display_name: string;
3722
+ description: string;
3486
3723
  revision: number;
3487
3724
  visibility: ("workspace" | "protected");
3488
3725
  owner_user_id: (string | null);
@@ -3518,6 +3755,7 @@ export interface ZoScheduleListOutputV1ScheduleView {
3518
3755
  type: "schedule";
3519
3756
  type_version: number;
3520
3757
  display_name: string;
3758
+ description: string;
3521
3759
  revision: number;
3522
3760
  visibility: ("workspace" | "protected");
3523
3761
  owner_user_id: (string | null);
@@ -3551,6 +3789,10 @@ export interface ZoScheduleUpdateInputV1 {
3551
3789
  schedule_id: string;
3552
3790
  expected_revision: number;
3553
3791
  display_name: string;
3792
+ /**
3793
+ * Describe what this schedule is for in the user's terms.
3794
+ */
3795
+ description?: (string | null);
3554
3796
  rrule: string;
3555
3797
  start_at: string;
3556
3798
  timezone: string;
@@ -3565,6 +3807,7 @@ export interface ZoScheduleUpdateOutputV1 {
3565
3807
  type: "schedule";
3566
3808
  type_version: number;
3567
3809
  display_name: string;
3810
+ description: string;
3568
3811
  revision: number;
3569
3812
  visibility: ("workspace" | "protected");
3570
3813
  owner_user_id: (string | null);
@@ -3834,6 +4077,10 @@ export interface ZoSubscriptionCreateInputV2 {
3834
4077
  workspace_id: string;
3835
4078
  event_id: string;
3836
4079
  display_name: string;
4080
+ /**
4081
+ * Describe what this subscription is for in the user's terms.
4082
+ */
4083
+ description?: string;
3837
4084
  filter?: ((ZoSubscriptionCreateInputV2EqFilter | ZoSubscriptionCreateInputV2InFilter | ZoSubscriptionCreateInputV2ExistsFilter | ZoSubscriptionCreateInputV2All1 | ZoSubscriptionCreateInputV2Any1) | null);
3838
4085
  handler_resource_type: ("function" | "workflow" | "agent");
3839
4086
  handler_resource_id?: (string | null);
@@ -3940,6 +4187,7 @@ export interface ZoSubscriptionCreateOutputV2 {
3940
4187
  type: "event_subscription";
3941
4188
  type_version: number;
3942
4189
  display_name: string;
4190
+ description: string;
3943
4191
  revision: number;
3944
4192
  properties: ZoSubscriptionCreateOutputV2EventSubscriptionProperties;
3945
4193
  event_type: string;
@@ -4213,6 +4461,7 @@ export interface ZoSubscriptionGetOutputV2 {
4213
4461
  type: "event_subscription";
4214
4462
  type_version: number;
4215
4463
  display_name: string;
4464
+ description: string;
4216
4465
  revision: number;
4217
4466
  properties: ZoSubscriptionGetOutputV2EventSubscriptionProperties;
4218
4467
  event_type: string;
@@ -4516,6 +4765,7 @@ export interface ZoSubscriptionListOutputV2SubscriptionResourceV2 {
4516
4765
  type: "event_subscription";
4517
4766
  type_version: number;
4518
4767
  display_name: string;
4768
+ description: string;
4519
4769
  revision: number;
4520
4770
  properties: ZoSubscriptionListOutputV2EventSubscriptionProperties;
4521
4771
  event_type: string;
@@ -4834,8 +5084,9 @@ export interface ZoSubscriptionUpdateOutputV1PrincipalRef {
4834
5084
  }
4835
5085
  export type ZoSubscriptionUpdateInputV2InputContractKind = ("exact_event" | "generic_envelope");
4836
5086
  /**
4837
- * Full replacement of every create field but the workspace and the event (a new
4838
- * definition or version is a new subscription), plus ``lifecycle``: ``active``
5087
+ * Replace create fields except workspace, event and optional description.
5088
+ * A new event definition or version requires a new subscription.
5089
+ * Omitted or null description keeps its value. ``lifecycle``: ``active``
4839
5090
  * resumes a paused or suspended subscription, ``paused`` pauses it;
4840
5091
  * ``zo.subscription.delete`` retires. ``handler_resource_type`` must be the
4841
5092
  * subscription's own: a different handler type is a new subscription.
@@ -4844,6 +5095,10 @@ export interface ZoSubscriptionUpdateInputV2 {
4844
5095
  subscription_id: string;
4845
5096
  expected_revision: number;
4846
5097
  display_name: string;
5098
+ /**
5099
+ * Describe what this subscription is for in the user's terms.
5100
+ */
5101
+ description?: (string | null);
4847
5102
  filter?: ((ZoSubscriptionUpdateInputV2EqFilter | ZoSubscriptionUpdateInputV2InFilter | ZoSubscriptionUpdateInputV2ExistsFilter | ZoSubscriptionUpdateInputV2All1 | ZoSubscriptionUpdateInputV2Any1) | null);
4848
5103
  handler_resource_type: ("function" | "workflow" | "agent");
4849
5104
  handler_resource_id?: (string | null);
@@ -4950,6 +5205,7 @@ export interface ZoSubscriptionUpdateOutputV2 {
4950
5205
  type: "event_subscription";
4951
5206
  type_version: number;
4952
5207
  display_name: string;
5208
+ description: string;
4953
5209
  revision: number;
4954
5210
  properties: ZoSubscriptionUpdateOutputV2EventSubscriptionProperties;
4955
5211
  event_type: string;
@@ -6589,6 +6845,10 @@ export interface ZoWebsiteCreateInputV1 {
6589
6845
  workspace_id: string;
6590
6846
  slug: string;
6591
6847
  display_name: string;
6848
+ /**
6849
+ * Describe what this Website is for in the user's terms.
6850
+ */
6851
+ description?: string;
6592
6852
  visibility?: ("workspace" | "protected");
6593
6853
  }
6594
6854
  export interface ZoWebsiteCreateOutputV1 {
@@ -6596,6 +6856,7 @@ export interface ZoWebsiteCreateOutputV1 {
6596
6856
  workspace_id: string;
6597
6857
  slug: string;
6598
6858
  display_name: string;
6859
+ description: string;
6599
6860
  generated_hostname: string;
6600
6861
  custom_hostname: (ZoWebsiteCreateOutputV1WebsiteHostname | null);
6601
6862
  access: "public";
@@ -6625,6 +6886,7 @@ export interface ZoWebsiteGetOutputV1 {
6625
6886
  workspace_id: string;
6626
6887
  slug: string;
6627
6888
  display_name: string;
6889
+ description: string;
6628
6890
  generated_hostname: string;
6629
6891
  custom_hostname: (ZoWebsiteGetOutputV1WebsiteHostname | null);
6630
6892
  access: "public";
@@ -6650,6 +6912,7 @@ export interface ZoWebsiteListOutputV1WebsiteListItem {
6650
6912
  workspace_id: string;
6651
6913
  slug: string;
6652
6914
  display_name: string;
6915
+ description: string;
6653
6916
  generated_hostname: string;
6654
6917
  custom_hostname: (ZoWebsiteListOutputV1WebsiteHostname | null);
6655
6918
  access: "public";
@@ -6711,6 +6974,10 @@ export interface ZoWebsiteUpdateInputV1 {
6711
6974
  website_id: string;
6712
6975
  expected_revision: number;
6713
6976
  display_name?: (string | null);
6977
+ /**
6978
+ * Describe what this Website is for in the user's terms.
6979
+ */
6980
+ description?: (string | null);
6714
6981
  custom_hostname?: (ZoWebsiteUpdateInputV1CustomHostnameChange | null);
6715
6982
  }
6716
6983
  export interface ZoWebsiteUpdateInputV1CustomHostnameChange {
@@ -6721,6 +6988,7 @@ export interface ZoWebsiteUpdateOutputV1 {
6721
6988
  workspace_id: string;
6722
6989
  slug: string;
6723
6990
  display_name: string;
6991
+ description: string;
6724
6992
  generated_hostname: string;
6725
6993
  custom_hostname: (ZoWebsiteUpdateOutputV1WebsiteHostname | null);
6726
6994
  access: "public";
@@ -7058,6 +7326,10 @@ export interface ZoWorkflowCancelRunOutputV1 {
7058
7326
  export interface ZoWorkflowCreateInputV1 {
7059
7327
  workspace_id: string;
7060
7328
  display_name: string;
7329
+ /**
7330
+ * Describe what this workflow is for in the user's terms.
7331
+ */
7332
+ description?: string;
7061
7333
  visibility?: ("workspace" | "protected");
7062
7334
  }
7063
7335
  export interface ZoWorkflowCreateOutputV1 {
@@ -7066,6 +7338,7 @@ export interface ZoWorkflowCreateOutputV1 {
7066
7338
  type: "workflow";
7067
7339
  type_version: number;
7068
7340
  display_name: string;
7341
+ description: string;
7069
7342
  revision: number;
7070
7343
  active_revision_id: (string | null);
7071
7344
  latest_revision_id: (string | null);
@@ -7090,6 +7363,7 @@ export interface ZoWorkflowGetOutputV1 {
7090
7363
  type: "workflow";
7091
7364
  type_version: number;
7092
7365
  display_name: string;
7366
+ description: string;
7093
7367
  revision: number;
7094
7368
  active_revision_id: (string | null);
7095
7369
  latest_revision_id: (string | null);
@@ -7167,6 +7441,7 @@ export interface ZoWorkflowListOutputV1VisibleWorkflowResource {
7167
7441
  type: "workflow";
7168
7442
  type_version: number;
7169
7443
  display_name: string;
7444
+ description: string;
7170
7445
  revision: number;
7171
7446
  active_revision_id: (string | null);
7172
7447
  latest_revision_id: (string | null);
@@ -7341,6 +7616,7 @@ export interface EventSubscriptionV1 {
7341
7616
  export interface FunctionV1 {
7342
7617
  code_owner: ("zo" | "workspace");
7343
7618
  }
7619
+ export type MachineV1GpuType = ("T4" | "L4" | "A10" | "L40S" | "A100" | "A100-40GB" | "A100-80GB" | "RTX-PRO-6000" | "H100" | "H100!" | "H200" | "B200" | "B200+" | "B300");
7344
7620
  /**
7345
7621
  * Public properties of a `machine` resource.
7346
7622
  *
@@ -7358,11 +7634,20 @@ export interface MachineV1 {
7358
7634
  machine_image_id: (string | null);
7359
7635
  vcpus: (number | null);
7360
7636
  memory_mib: (number | null);
7637
+ gpu?: (MachineV1MachineGpu | null);
7361
7638
  region: (string | null);
7362
7639
  idle_timeout_seconds: (number | null);
7363
7640
  max_run_seconds: (number | null);
7364
7641
  init?: (("none" | "image") | null);
7365
7642
  command?: ([string, ...(string)[]] | null);
7643
+ environment?: ({
7644
+ [k: string]: string;
7645
+ } | null);
7646
+ credentials?: (string[] | null);
7647
+ }
7648
+ export interface MachineV1MachineGpu {
7649
+ type: MachineV1GpuType;
7650
+ count: number;
7366
7651
  }
7367
7652
  export type MachineImageV1ImageOrigin = ("registry" | "build" | "machine_snapshot");
7368
7653
  /**