@archildata/api-types 0.0.28 → 0.0.30
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.
- package/index.d.ts +83 -5
- package/package.json +1 -1
package/index.d.ts
CHANGED
|
@@ -514,6 +514,31 @@ export interface paths {
|
|
|
514
514
|
patch?: never;
|
|
515
515
|
trace?: never;
|
|
516
516
|
};
|
|
517
|
+
"/api/sandboxes/{sid}/timeout": {
|
|
518
|
+
parameters: {
|
|
519
|
+
query?: never;
|
|
520
|
+
header?: never;
|
|
521
|
+
path?: never;
|
|
522
|
+
cookie?: never;
|
|
523
|
+
};
|
|
524
|
+
get?: never;
|
|
525
|
+
put?: never;
|
|
526
|
+
/**
|
|
527
|
+
* Set a sandbox's timeout
|
|
528
|
+
* @description Replaces the sandbox's lifetime budget and, while it is running, resets
|
|
529
|
+
* its expiration deadline to the requested number of seconds from now.
|
|
530
|
+
* The new budget is retained across later stops and starts. For an
|
|
531
|
+
* inactive sandbox, it applies to the next powered-on session. Sandboxes
|
|
532
|
+
* that are starting or shutting down, or whose timeout changes
|
|
533
|
+
* concurrently, return 409.
|
|
534
|
+
*/
|
|
535
|
+
post: operations["setSandboxTimeout"];
|
|
536
|
+
delete?: never;
|
|
537
|
+
options?: never;
|
|
538
|
+
head?: never;
|
|
539
|
+
patch?: never;
|
|
540
|
+
trace?: never;
|
|
541
|
+
};
|
|
517
542
|
"/api/sandboxes/{sid}/start": {
|
|
518
543
|
parameters: {
|
|
519
544
|
query?: never;
|
|
@@ -619,7 +644,7 @@ export interface components {
|
|
|
619
644
|
SandboxState: "pending" | "running" | "pausing" | "paused" | "stopping" | "stopped" | "exited" | "failed" | "deleting" | "deleted";
|
|
620
645
|
/** @enum {string} */
|
|
621
646
|
SandboxNetworkAction: "allow" | "deny";
|
|
622
|
-
/** @description Deny targets take precedence when an address or domain matches both lists. When domain rules are present, TCP ports 80 and 443 are restricted to HTTP/1.1 or HTTP/2. Plaintext HTTP authority is enforced on port 80, but requests matching a transformation rule are rejected. Port 443 is TLS-terminated; both TLS SNI and HTTP authority are evaluated, and the HTTP authority selects the upstream and any request
|
|
647
|
+
/** @description Deny targets take precedence when an address or domain matches both lists. When domain rules are present, TCP ports 80 and 443 are restricted to HTTP/1.1 or HTTP/2. Plaintext HTTP authority is enforced on port 80, but requests matching a transformation rule are rejected unless the rule also forwards. Port 443 is TLS-terminated; both TLS SNI and HTTP authority are evaluated, and the HTTP authority selects the upstream, any request transformations, and any request forwarding. DNS to the sandbox's configured resolvers is allowed and UDP port 443 is denied. */
|
|
623
648
|
SandboxEgressPolicy: {
|
|
624
649
|
default: components["schemas"]["SandboxNetworkAction"];
|
|
625
650
|
/** @description Allowed IPv4 addresses, CIDR ranges, exact domains, wildcard domains beginning with `*.`, or target objects with optional outbound HTTPS request transformations. A wildcard matches subdomains but not the apex domain, including when applying transformations. */
|
|
@@ -628,9 +653,14 @@ export interface components {
|
|
|
628
653
|
deny?: string[];
|
|
629
654
|
};
|
|
630
655
|
SandboxEgressRule: {
|
|
631
|
-
/** @description Target allowed by this rule. Effective transformations require an exact or wildcard lowercase domain. */
|
|
656
|
+
/** @description Target allowed by this rule. Effective transformations and forwarding require an exact or wildcard lowercase domain. */
|
|
632
657
|
target: string;
|
|
633
658
|
transform?: components["schemas"]["SandboxEgressTransform"];
|
|
659
|
+
/**
|
|
660
|
+
* Format: uri
|
|
661
|
+
* @description Absolute public HTTPS URL that receives this rule's permitted HTTP and HTTPS requests instead of their original upstream. The original path is appended to this URL, and Archil overwrites the archil-forwarded-host, archil-forwarded-scheme, archil-forwarded-port, archil-forwarded-path, and archil-sandbox-id headers with request metadata. A transform on the same rule is applied before forwarding, so the forwarded request carries the transformed headers. URLs containing credentials, a query, or a fragment are rejected.
|
|
662
|
+
*/
|
|
663
|
+
forward_url?: string;
|
|
634
664
|
};
|
|
635
665
|
/** @description Optional outbound HTTPS request transformations. An omitted or empty transform leaves the rule as an ordinary allow without request mutations. */
|
|
636
666
|
SandboxEgressTransform: {
|
|
@@ -643,6 +673,10 @@ export interface components {
|
|
|
643
673
|
SandboxNetwork: {
|
|
644
674
|
egress?: components["schemas"]["SandboxEgressPolicy"];
|
|
645
675
|
};
|
|
676
|
+
SandboxTimeoutRequest: {
|
|
677
|
+
/** @description Seconds from now until a running sandbox expires, and the lifetime budget for its next powered-on session. */
|
|
678
|
+
timeout: number;
|
|
679
|
+
};
|
|
646
680
|
Sandbox: {
|
|
647
681
|
/** Format: uuid */
|
|
648
682
|
sandbox_id: string;
|
|
@@ -651,7 +685,7 @@ export interface components {
|
|
|
651
685
|
status: components["schemas"]["SandboxState"];
|
|
652
686
|
vcpu_count: number;
|
|
653
687
|
mem_size_mib: number;
|
|
654
|
-
/** @description Full lifetime budget applied independently to each powered-on session. */
|
|
688
|
+
/** @description Full lifetime budget applied independently to each powered-on session. Defaults to 24 hours and can be reset with the timeout endpoint. */
|
|
655
689
|
max_ttl_seconds: number;
|
|
656
690
|
/** @description Maximum number of concurrently attached process sessions. Detached processes and one-shot process controls do not count. */
|
|
657
691
|
max_concurrent_execs: number;
|
|
@@ -726,8 +760,11 @@ export interface components {
|
|
|
726
760
|
[key: string]: string;
|
|
727
761
|
};
|
|
728
762
|
network?: components["schemas"]["SandboxNetwork"];
|
|
729
|
-
/**
|
|
730
|
-
|
|
763
|
+
/**
|
|
764
|
+
* @description Lifetime budget applied independently to each powered-on session
|
|
765
|
+
* @default 86400
|
|
766
|
+
*/
|
|
767
|
+
max_ttl_seconds: number;
|
|
731
768
|
/** @description Maximum number of concurrently attached process sessions. Detached processes and one-shot process controls do not count. */
|
|
732
769
|
max_concurrent_execs?: number;
|
|
733
770
|
};
|
|
@@ -2588,6 +2625,47 @@ export interface operations {
|
|
|
2588
2625
|
503: components["responses"]["RetryableUnavailable"];
|
|
2589
2626
|
};
|
|
2590
2627
|
};
|
|
2628
|
+
setSandboxTimeout: {
|
|
2629
|
+
parameters: {
|
|
2630
|
+
query?: never;
|
|
2631
|
+
header?: never;
|
|
2632
|
+
path: {
|
|
2633
|
+
/** @description Sandbox UUID */
|
|
2634
|
+
sid: components["parameters"]["SandboxId"];
|
|
2635
|
+
};
|
|
2636
|
+
cookie?: never;
|
|
2637
|
+
};
|
|
2638
|
+
requestBody: {
|
|
2639
|
+
content: {
|
|
2640
|
+
"application/json": components["schemas"]["SandboxTimeoutRequest"];
|
|
2641
|
+
};
|
|
2642
|
+
};
|
|
2643
|
+
responses: {
|
|
2644
|
+
/** @description The sandbox timeout was set */
|
|
2645
|
+
200: {
|
|
2646
|
+
headers: {
|
|
2647
|
+
[name: string]: unknown;
|
|
2648
|
+
};
|
|
2649
|
+
content: {
|
|
2650
|
+
"application/json": components["schemas"]["ApiResponse_Sandbox"];
|
|
2651
|
+
};
|
|
2652
|
+
};
|
|
2653
|
+
400: components["responses"]["ValidationError"];
|
|
2654
|
+
401: components["responses"]["Unauthorized"];
|
|
2655
|
+
404: components["responses"]["NotFound"];
|
|
2656
|
+
/** @description The sandbox is transitioning or its timeout changed concurrently */
|
|
2657
|
+
409: {
|
|
2658
|
+
headers: {
|
|
2659
|
+
[name: string]: unknown;
|
|
2660
|
+
};
|
|
2661
|
+
content: {
|
|
2662
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
2663
|
+
};
|
|
2664
|
+
};
|
|
2665
|
+
500: components["responses"]["InternalError"];
|
|
2666
|
+
503: components["responses"]["RetryableUnavailable"];
|
|
2667
|
+
};
|
|
2668
|
+
};
|
|
2591
2669
|
startSandbox: {
|
|
2592
2670
|
parameters: {
|
|
2593
2671
|
query?: {
|