@gpuai/sdk 0.3.0 → 0.3.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.
- package/README.md +2 -2
- package/dist/esm/models/CreateInstanceRequest.d.ts +6 -0
- package/dist/esm/models/CreateInstanceRequest.js +2 -0
- package/dist/esm/models/Instance.d.ts +8 -1
- package/dist/esm/models/Instance.js +3 -0
- package/dist/models/CreateInstanceRequest.d.ts +6 -0
- package/dist/models/CreateInstanceRequest.js +2 -0
- package/dist/models/Instance.d.ts +8 -1
- package/dist/models/Instance.js +3 -0
- package/docs/CreateInstanceRequest.md +2 -0
- package/docs/Instance.md +2 -0
- package/docs/InstancesApi.md +2 -2
- package/package.json +1 -1
- package/src/models/CreateInstanceRequest.ts +8 -0
- package/src/models/Instance.ts +10 -1
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# @gpuai/sdk@0.3.
|
|
1
|
+
# @gpuai/sdk@0.3.2
|
|
2
2
|
|
|
3
3
|
A TypeScript SDK client for the api.gpu.ai API.
|
|
4
4
|
|
|
@@ -196,7 +196,7 @@ and is automatically generated by the
|
|
|
196
196
|
[OpenAPI Generator](https://openapi-generator.tech) project:
|
|
197
197
|
|
|
198
198
|
- API version: `1.0.0`
|
|
199
|
-
- Package version: `0.3.
|
|
199
|
+
- Package version: `0.3.2`
|
|
200
200
|
- Generator version: `7.24.0`
|
|
201
201
|
- Build package: `org.openapitools.codegen.languages.TypeScriptFetchClientCodegen`
|
|
202
202
|
|
|
@@ -57,6 +57,12 @@ export interface CreateInstanceRequest {
|
|
|
57
57
|
* @memberof CreateInstanceRequest
|
|
58
58
|
*/
|
|
59
59
|
maxPricePerHour?: number;
|
|
60
|
+
/**
|
|
61
|
+
* The retail $/hr the caller displayed to the user before launch. A catalog row is a quote, not a booking, and pinning an offering fixes which machine is placed but not its rate. If the launch-time price exceeds this by more than $0.01 the launch fails with `price_changed` carrying the new price instead of proceeding at the higher price; omit to accept the launch-time price (previous behavior). Refusal only — it is never read as consent, so it can neither raise what you are charged nor widen what may be bought on your behalf. Use max_price_per_hour to bound spend.
|
|
62
|
+
* @type {number}
|
|
63
|
+
* @memberof CreateInstanceRequest
|
|
64
|
+
*/
|
|
65
|
+
viewedPricePerHour?: number;
|
|
60
66
|
/**
|
|
61
67
|
* Deploy a curated application template (e.g. comfyui, vllm). When set, gpu_type may be omitted — the cheapest eligible GPU is auto-selected. For templates serving a Hugging Face model via env.MODEL (vllm, sglang), the model's published weights size is checked against the GPU's VRAM at submit time: an oversized model on an explicit gpu_type returns 422 `model_too_large` (auto-select instead raises its VRAM floor to the estimate, and 422s only when no available GPU fits). Gated/private/unknown repos are never blocked — the deploy proceeds and the 202 carries a `warnings` entry.
|
|
62
68
|
* @type {string}
|
|
@@ -45,6 +45,7 @@ export function CreateInstanceRequestFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
45
45
|
'sshKeyIds': json['ssh_key_ids'] == null ? undefined : json['ssh_key_ids'],
|
|
46
46
|
'name': json['name'] == null ? undefined : json['name'],
|
|
47
47
|
'maxPricePerHour': json['max_price_per_hour'] == null ? undefined : json['max_price_per_hour'],
|
|
48
|
+
'viewedPricePerHour': json['viewed_price_per_hour'] == null ? undefined : json['viewed_price_per_hour'],
|
|
48
49
|
'templateId': json['template_id'] == null ? undefined : json['template_id'],
|
|
49
50
|
'environment': json['environment'] == null ? undefined : json['environment'],
|
|
50
51
|
'offeringId': json['offering_id'] == null ? undefined : json['offering_id'],
|
|
@@ -67,6 +68,7 @@ export function CreateInstanceRequestToJSONTyped(value, ignoreDiscriminator = fa
|
|
|
67
68
|
'ssh_key_ids': value['sshKeyIds'],
|
|
68
69
|
'name': value['name'],
|
|
69
70
|
'max_price_per_hour': value['maxPricePerHour'],
|
|
71
|
+
'viewed_price_per_hour': value['viewedPricePerHour'],
|
|
70
72
|
'template_id': value['templateId'],
|
|
71
73
|
'environment': value['environment'],
|
|
72
74
|
'offering_id': value['offeringId'],
|
|
@@ -29,7 +29,7 @@ export interface Instance {
|
|
|
29
29
|
*/
|
|
30
30
|
name?: string;
|
|
31
31
|
/**
|
|
32
|
-
* Customer-facing lifecycle status. "allocating" = the GPU is still being acquired from the provider (slow-boot capacity such as baremetal can take ~15 min); "starting" = the node exists and is booting; "running" = ready to use.
|
|
32
|
+
* Customer-facing lifecycle status. "allocating" = the GPU is still being acquired from the provider (slow-boot capacity such as baremetal can take ~15 min); "starting" = the node exists and is booting; "running" = ready to use. "unreachable" = the platform's tunnel probe has confirmed the SSH path is down while the machine may still be up: the instance is NOT usable right now, billing for the confirmed-dead window is auto-credited back, and the instance either recovers to "running" on its own or is failed after a grace window. It is a degraded reading of a running instance, not a separate lifecycle state — see unreachable_since.
|
|
33
33
|
* @type {InstanceStatusEnum}
|
|
34
34
|
* @memberof Instance
|
|
35
35
|
*/
|
|
@@ -106,6 +106,12 @@ export interface Instance {
|
|
|
106
106
|
* @memberof Instance
|
|
107
107
|
*/
|
|
108
108
|
lastReachableAt?: Date;
|
|
109
|
+
/**
|
|
110
|
+
* Start of the confirmed tunnel outage the instance is currently in. Present exactly when status is "unreachable", absent otherwise. It is the timestamp the auto-credit for the dead window is computed from, so a ledger credit can be reconciled against it.
|
|
111
|
+
* @type {Date}
|
|
112
|
+
* @memberof Instance
|
|
113
|
+
*/
|
|
114
|
+
unreachableSince?: Date;
|
|
109
115
|
}
|
|
110
116
|
/**
|
|
111
117
|
* @export
|
|
@@ -117,6 +123,7 @@ export declare const InstanceStatusEnum: {
|
|
|
117
123
|
readonly Stopping: "stopping";
|
|
118
124
|
readonly Stopped: "stopped";
|
|
119
125
|
readonly Terminated: "terminated";
|
|
126
|
+
readonly Unreachable: "unreachable";
|
|
120
127
|
readonly Error: "error";
|
|
121
128
|
};
|
|
122
129
|
export type InstanceStatusEnum = typeof InstanceStatusEnum[keyof typeof InstanceStatusEnum];
|
|
@@ -22,6 +22,7 @@ export const InstanceStatusEnum = {
|
|
|
22
22
|
Stopping: 'stopping',
|
|
23
23
|
Stopped: 'stopped',
|
|
24
24
|
Terminated: 'terminated',
|
|
25
|
+
Unreachable: 'unreachable',
|
|
25
26
|
Error: 'error'
|
|
26
27
|
};
|
|
27
28
|
/**
|
|
@@ -76,6 +77,7 @@ export function InstanceFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
76
77
|
'readyAt': json['ready_at'] == null ? undefined : (new Date(json['ready_at'])),
|
|
77
78
|
'terminatedAt': json['terminated_at'] == null ? undefined : (new Date(json['terminated_at'])),
|
|
78
79
|
'lastReachableAt': json['last_reachable_at'] == null ? undefined : (new Date(json['last_reachable_at'])),
|
|
80
|
+
'unreachableSince': json['unreachable_since'] == null ? undefined : (new Date(json['unreachable_since'])),
|
|
79
81
|
};
|
|
80
82
|
}
|
|
81
83
|
export function InstanceToJSON(json) {
|
|
@@ -101,5 +103,6 @@ export function InstanceToJSONTyped(value, ignoreDiscriminator = false) {
|
|
|
101
103
|
'ready_at': value['readyAt'] == null ? value['readyAt'] : value['readyAt'].toISOString(),
|
|
102
104
|
'terminated_at': value['terminatedAt'] == null ? value['terminatedAt'] : value['terminatedAt'].toISOString(),
|
|
103
105
|
'last_reachable_at': value['lastReachableAt'] == null ? value['lastReachableAt'] : value['lastReachableAt'].toISOString(),
|
|
106
|
+
'unreachable_since': value['unreachableSince'] == null ? value['unreachableSince'] : value['unreachableSince'].toISOString(),
|
|
104
107
|
};
|
|
105
108
|
}
|
|
@@ -57,6 +57,12 @@ export interface CreateInstanceRequest {
|
|
|
57
57
|
* @memberof CreateInstanceRequest
|
|
58
58
|
*/
|
|
59
59
|
maxPricePerHour?: number;
|
|
60
|
+
/**
|
|
61
|
+
* The retail $/hr the caller displayed to the user before launch. A catalog row is a quote, not a booking, and pinning an offering fixes which machine is placed but not its rate. If the launch-time price exceeds this by more than $0.01 the launch fails with `price_changed` carrying the new price instead of proceeding at the higher price; omit to accept the launch-time price (previous behavior). Refusal only — it is never read as consent, so it can neither raise what you are charged nor widen what may be bought on your behalf. Use max_price_per_hour to bound spend.
|
|
62
|
+
* @type {number}
|
|
63
|
+
* @memberof CreateInstanceRequest
|
|
64
|
+
*/
|
|
65
|
+
viewedPricePerHour?: number;
|
|
60
66
|
/**
|
|
61
67
|
* Deploy a curated application template (e.g. comfyui, vllm). When set, gpu_type may be omitted — the cheapest eligible GPU is auto-selected. For templates serving a Hugging Face model via env.MODEL (vllm, sglang), the model's published weights size is checked against the GPU's VRAM at submit time: an oversized model on an explicit gpu_type returns 422 `model_too_large` (auto-select instead raises its VRAM floor to the estimate, and 422s only when no available GPU fits). Gated/private/unknown repos are never blocked — the deploy proceeds and the 202 carries a `warnings` entry.
|
|
62
68
|
* @type {string}
|
|
@@ -53,6 +53,7 @@ function CreateInstanceRequestFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
53
53
|
'sshKeyIds': json['ssh_key_ids'] == null ? undefined : json['ssh_key_ids'],
|
|
54
54
|
'name': json['name'] == null ? undefined : json['name'],
|
|
55
55
|
'maxPricePerHour': json['max_price_per_hour'] == null ? undefined : json['max_price_per_hour'],
|
|
56
|
+
'viewedPricePerHour': json['viewed_price_per_hour'] == null ? undefined : json['viewed_price_per_hour'],
|
|
56
57
|
'templateId': json['template_id'] == null ? undefined : json['template_id'],
|
|
57
58
|
'environment': json['environment'] == null ? undefined : json['environment'],
|
|
58
59
|
'offeringId': json['offering_id'] == null ? undefined : json['offering_id'],
|
|
@@ -75,6 +76,7 @@ function CreateInstanceRequestToJSONTyped(value, ignoreDiscriminator = false) {
|
|
|
75
76
|
'ssh_key_ids': value['sshKeyIds'],
|
|
76
77
|
'name': value['name'],
|
|
77
78
|
'max_price_per_hour': value['maxPricePerHour'],
|
|
79
|
+
'viewed_price_per_hour': value['viewedPricePerHour'],
|
|
78
80
|
'template_id': value['templateId'],
|
|
79
81
|
'environment': value['environment'],
|
|
80
82
|
'offering_id': value['offeringId'],
|
|
@@ -29,7 +29,7 @@ export interface Instance {
|
|
|
29
29
|
*/
|
|
30
30
|
name?: string;
|
|
31
31
|
/**
|
|
32
|
-
* Customer-facing lifecycle status. "allocating" = the GPU is still being acquired from the provider (slow-boot capacity such as baremetal can take ~15 min); "starting" = the node exists and is booting; "running" = ready to use.
|
|
32
|
+
* Customer-facing lifecycle status. "allocating" = the GPU is still being acquired from the provider (slow-boot capacity such as baremetal can take ~15 min); "starting" = the node exists and is booting; "running" = ready to use. "unreachable" = the platform's tunnel probe has confirmed the SSH path is down while the machine may still be up: the instance is NOT usable right now, billing for the confirmed-dead window is auto-credited back, and the instance either recovers to "running" on its own or is failed after a grace window. It is a degraded reading of a running instance, not a separate lifecycle state — see unreachable_since.
|
|
33
33
|
* @type {InstanceStatusEnum}
|
|
34
34
|
* @memberof Instance
|
|
35
35
|
*/
|
|
@@ -106,6 +106,12 @@ export interface Instance {
|
|
|
106
106
|
* @memberof Instance
|
|
107
107
|
*/
|
|
108
108
|
lastReachableAt?: Date;
|
|
109
|
+
/**
|
|
110
|
+
* Start of the confirmed tunnel outage the instance is currently in. Present exactly when status is "unreachable", absent otherwise. It is the timestamp the auto-credit for the dead window is computed from, so a ledger credit can be reconciled against it.
|
|
111
|
+
* @type {Date}
|
|
112
|
+
* @memberof Instance
|
|
113
|
+
*/
|
|
114
|
+
unreachableSince?: Date;
|
|
109
115
|
}
|
|
110
116
|
/**
|
|
111
117
|
* @export
|
|
@@ -117,6 +123,7 @@ export declare const InstanceStatusEnum: {
|
|
|
117
123
|
readonly Stopping: "stopping";
|
|
118
124
|
readonly Stopped: "stopped";
|
|
119
125
|
readonly Terminated: "terminated";
|
|
126
|
+
readonly Unreachable: "unreachable";
|
|
120
127
|
readonly Error: "error";
|
|
121
128
|
};
|
|
122
129
|
export type InstanceStatusEnum = typeof InstanceStatusEnum[keyof typeof InstanceStatusEnum];
|
package/dist/models/Instance.js
CHANGED
|
@@ -30,6 +30,7 @@ exports.InstanceStatusEnum = {
|
|
|
30
30
|
Stopping: 'stopping',
|
|
31
31
|
Stopped: 'stopped',
|
|
32
32
|
Terminated: 'terminated',
|
|
33
|
+
Unreachable: 'unreachable',
|
|
33
34
|
Error: 'error'
|
|
34
35
|
};
|
|
35
36
|
/**
|
|
@@ -84,6 +85,7 @@ function InstanceFromJSONTyped(json, ignoreDiscriminator) {
|
|
|
84
85
|
'readyAt': json['ready_at'] == null ? undefined : (new Date(json['ready_at'])),
|
|
85
86
|
'terminatedAt': json['terminated_at'] == null ? undefined : (new Date(json['terminated_at'])),
|
|
86
87
|
'lastReachableAt': json['last_reachable_at'] == null ? undefined : (new Date(json['last_reachable_at'])),
|
|
88
|
+
'unreachableSince': json['unreachable_since'] == null ? undefined : (new Date(json['unreachable_since'])),
|
|
87
89
|
};
|
|
88
90
|
}
|
|
89
91
|
function InstanceToJSON(json) {
|
|
@@ -109,5 +111,6 @@ function InstanceToJSONTyped(value, ignoreDiscriminator = false) {
|
|
|
109
111
|
'ready_at': value['readyAt'] == null ? value['readyAt'] : value['readyAt'].toISOString(),
|
|
110
112
|
'terminated_at': value['terminatedAt'] == null ? value['terminatedAt'] : value['terminatedAt'].toISOString(),
|
|
111
113
|
'last_reachable_at': value['lastReachableAt'] == null ? value['lastReachableAt'] : value['lastReachableAt'].toISOString(),
|
|
114
|
+
'unreachable_since': value['unreachableSince'] == null ? value['unreachableSince'] : value['unreachableSince'].toISOString(),
|
|
112
115
|
};
|
|
113
116
|
}
|
|
@@ -13,6 +13,7 @@ Name | Type
|
|
|
13
13
|
`sshKeyIds` | Array<string>
|
|
14
14
|
`name` | string
|
|
15
15
|
`maxPricePerHour` | number
|
|
16
|
+
`viewedPricePerHour` | number
|
|
16
17
|
`templateId` | string
|
|
17
18
|
`environment` | string
|
|
18
19
|
`offeringId` | string
|
|
@@ -33,6 +34,7 @@ const example = {
|
|
|
33
34
|
"sshKeyIds": null,
|
|
34
35
|
"name": null,
|
|
35
36
|
"maxPricePerHour": null,
|
|
37
|
+
"viewedPricePerHour": null,
|
|
36
38
|
"templateId": null,
|
|
37
39
|
"environment": certified:pytorch@2.13,
|
|
38
40
|
"offeringId": null,
|
package/docs/Instance.md
CHANGED
|
@@ -21,6 +21,7 @@ Name | Type
|
|
|
21
21
|
`readyAt` | Date
|
|
22
22
|
`terminatedAt` | Date
|
|
23
23
|
`lastReachableAt` | Date
|
|
24
|
+
`unreachableSince` | Date
|
|
24
25
|
|
|
25
26
|
## Example
|
|
26
27
|
|
|
@@ -44,6 +45,7 @@ const example = {
|
|
|
44
45
|
"readyAt": null,
|
|
45
46
|
"terminatedAt": null,
|
|
46
47
|
"lastReachableAt": null,
|
|
48
|
+
"unreachableSince": null,
|
|
47
49
|
} satisfies Instance
|
|
48
50
|
|
|
49
51
|
console.log(example)
|
package/docs/InstancesApi.md
CHANGED
|
@@ -268,7 +268,7 @@ async function example() {
|
|
|
268
268
|
cursor: cursor_example,
|
|
269
269
|
// number (optional)
|
|
270
270
|
limit: 56,
|
|
271
|
-
// 'allocating' | 'starting' | 'running' | 'stopping' | 'stopped' | 'terminated' | 'error' | 'all' | Filter by customer-facing status (default = all non-terminated) (optional)
|
|
271
|
+
// 'allocating' | 'starting' | 'running' | 'stopping' | 'stopped' | 'terminated' | 'error' | 'all' | Filter by customer-facing status (default = all non-terminated). There is no \"unreachable\" filter value: an unreachable instance is a running instance with a dead tunnel, so it is listed under status=running and reads \"unreachable\" in the response body. (optional)
|
|
272
272
|
status: status_example,
|
|
273
273
|
} satisfies ListInstancesRequest;
|
|
274
274
|
|
|
@@ -291,7 +291,7 @@ example().catch(console.error);
|
|
|
291
291
|
|------------- | ------------- | ------------- | -------------|
|
|
292
292
|
| **cursor** | `string` | | [Optional] [Defaults to `undefined`] |
|
|
293
293
|
| **limit** | `number` | | [Optional] [Defaults to `50`] |
|
|
294
|
-
| **status** | `allocating`, `starting`, `running`, `stopping`, `stopped`, `terminated`, `error`, `all` | Filter by customer-facing status (default = all non-terminated) | [Optional] [Defaults to `undefined`] [Enum: allocating, starting, running, stopping, stopped, terminated, error, all] |
|
|
294
|
+
| **status** | `allocating`, `starting`, `running`, `stopping`, `stopped`, `terminated`, `error`, `all` | Filter by customer-facing status (default = all non-terminated). There is no \"unreachable\" filter value: an unreachable instance is a running instance with a dead tunnel, so it is listed under status=running and reads \"unreachable\" in the response body. | [Optional] [Defaults to `undefined`] [Enum: allocating, starting, running, stopping, stopped, terminated, error, all] |
|
|
295
295
|
|
|
296
296
|
### Return type
|
|
297
297
|
|
package/package.json
CHANGED
|
@@ -61,6 +61,12 @@ export interface CreateInstanceRequest {
|
|
|
61
61
|
* @memberof CreateInstanceRequest
|
|
62
62
|
*/
|
|
63
63
|
maxPricePerHour?: number;
|
|
64
|
+
/**
|
|
65
|
+
* The retail $/hr the caller displayed to the user before launch. A catalog row is a quote, not a booking, and pinning an offering fixes which machine is placed but not its rate. If the launch-time price exceeds this by more than $0.01 the launch fails with `price_changed` carrying the new price instead of proceeding at the higher price; omit to accept the launch-time price (previous behavior). Refusal only — it is never read as consent, so it can neither raise what you are charged nor widen what may be bought on your behalf. Use max_price_per_hour to bound spend.
|
|
66
|
+
* @type {number}
|
|
67
|
+
* @memberof CreateInstanceRequest
|
|
68
|
+
*/
|
|
69
|
+
viewedPricePerHour?: number;
|
|
64
70
|
/**
|
|
65
71
|
* Deploy a curated application template (e.g. comfyui, vllm). When set, gpu_type may be omitted — the cheapest eligible GPU is auto-selected. For templates serving a Hugging Face model via env.MODEL (vllm, sglang), the model's published weights size is checked against the GPU's VRAM at submit time: an oversized model on an explicit gpu_type returns 422 `model_too_large` (auto-select instead raises its VRAM floor to the estimate, and 422s only when no available GPU fits). Gated/private/unknown repos are never blocked — the deploy proceeds and the 202 carries a `warnings` entry.
|
|
66
72
|
* @type {string}
|
|
@@ -131,6 +137,7 @@ export function CreateInstanceRequestFromJSONTyped(json: any, ignoreDiscriminato
|
|
|
131
137
|
'sshKeyIds': json['ssh_key_ids'] == null ? undefined : json['ssh_key_ids'],
|
|
132
138
|
'name': json['name'] == null ? undefined : json['name'],
|
|
133
139
|
'maxPricePerHour': json['max_price_per_hour'] == null ? undefined : json['max_price_per_hour'],
|
|
140
|
+
'viewedPricePerHour': json['viewed_price_per_hour'] == null ? undefined : json['viewed_price_per_hour'],
|
|
134
141
|
'templateId': json['template_id'] == null ? undefined : json['template_id'],
|
|
135
142
|
'environment': json['environment'] == null ? undefined : json['environment'],
|
|
136
143
|
'offeringId': json['offering_id'] == null ? undefined : json['offering_id'],
|
|
@@ -157,6 +164,7 @@ export function CreateInstanceRequestToJSONTyped(value?: CreateInstanceRequest |
|
|
|
157
164
|
'ssh_key_ids': value['sshKeyIds'],
|
|
158
165
|
'name': value['name'],
|
|
159
166
|
'max_price_per_hour': value['maxPricePerHour'],
|
|
167
|
+
'viewed_price_per_hour': value['viewedPricePerHour'],
|
|
160
168
|
'template_id': value['templateId'],
|
|
161
169
|
'environment': value['environment'],
|
|
162
170
|
'offering_id': value['offeringId'],
|
package/src/models/Instance.ts
CHANGED
|
@@ -40,7 +40,7 @@ export interface Instance {
|
|
|
40
40
|
*/
|
|
41
41
|
name?: string;
|
|
42
42
|
/**
|
|
43
|
-
* Customer-facing lifecycle status. "allocating" = the GPU is still being acquired from the provider (slow-boot capacity such as baremetal can take ~15 min); "starting" = the node exists and is booting; "running" = ready to use.
|
|
43
|
+
* Customer-facing lifecycle status. "allocating" = the GPU is still being acquired from the provider (slow-boot capacity such as baremetal can take ~15 min); "starting" = the node exists and is booting; "running" = ready to use. "unreachable" = the platform's tunnel probe has confirmed the SSH path is down while the machine may still be up: the instance is NOT usable right now, billing for the confirmed-dead window is auto-credited back, and the instance either recovers to "running" on its own or is failed after a grace window. It is a degraded reading of a running instance, not a separate lifecycle state — see unreachable_since.
|
|
44
44
|
* @type {InstanceStatusEnum}
|
|
45
45
|
* @memberof Instance
|
|
46
46
|
*/
|
|
@@ -117,6 +117,12 @@ export interface Instance {
|
|
|
117
117
|
* @memberof Instance
|
|
118
118
|
*/
|
|
119
119
|
lastReachableAt?: Date;
|
|
120
|
+
/**
|
|
121
|
+
* Start of the confirmed tunnel outage the instance is currently in. Present exactly when status is "unreachable", absent otherwise. It is the timestamp the auto-credit for the dead window is computed from, so a ledger credit can be reconciled against it.
|
|
122
|
+
* @type {Date}
|
|
123
|
+
* @memberof Instance
|
|
124
|
+
*/
|
|
125
|
+
unreachableSince?: Date;
|
|
120
126
|
}
|
|
121
127
|
|
|
122
128
|
|
|
@@ -130,6 +136,7 @@ export const InstanceStatusEnum = {
|
|
|
130
136
|
Stopping: 'stopping',
|
|
131
137
|
Stopped: 'stopped',
|
|
132
138
|
Terminated: 'terminated',
|
|
139
|
+
Unreachable: 'unreachable',
|
|
133
140
|
Error: 'error'
|
|
134
141
|
} as const;
|
|
135
142
|
export type InstanceStatusEnum = typeof InstanceStatusEnum[keyof typeof InstanceStatusEnum];
|
|
@@ -184,6 +191,7 @@ export function InstanceFromJSONTyped(json: any, ignoreDiscriminator: boolean):
|
|
|
184
191
|
'readyAt': json['ready_at'] == null ? undefined : (new Date(json['ready_at'])),
|
|
185
192
|
'terminatedAt': json['terminated_at'] == null ? undefined : (new Date(json['terminated_at'])),
|
|
186
193
|
'lastReachableAt': json['last_reachable_at'] == null ? undefined : (new Date(json['last_reachable_at'])),
|
|
194
|
+
'unreachableSince': json['unreachable_since'] == null ? undefined : (new Date(json['unreachable_since'])),
|
|
187
195
|
};
|
|
188
196
|
}
|
|
189
197
|
|
|
@@ -213,6 +221,7 @@ export function InstanceToJSONTyped(value?: Instance | null, ignoreDiscriminator
|
|
|
213
221
|
'ready_at': value['readyAt'] == null ? value['readyAt'] : value['readyAt'].toISOString(),
|
|
214
222
|
'terminated_at': value['terminatedAt'] == null ? value['terminatedAt'] : value['terminatedAt'].toISOString(),
|
|
215
223
|
'last_reachable_at': value['lastReachableAt'] == null ? value['lastReachableAt'] : value['lastReachableAt'].toISOString(),
|
|
224
|
+
'unreachable_since': value['unreachableSince'] == null ? value['unreachableSince'] : value['unreachableSince'].toISOString(),
|
|
216
225
|
};
|
|
217
226
|
}
|
|
218
227
|
|