@leaflow/sdk 0.53.0 → 0.54.1
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/dist/account/v1/schema.d.ts +0 -5
- package/dist/billing/v1/index.d.ts +165 -57
- package/dist/billing/v1/schema.d.ts +3125 -1646
- package/dist/compute/v1/schema.d.ts +301 -13
- package/dist/iam/v1/schema.d.ts +0 -5
- package/package.json +1 -1
|
@@ -82,7 +82,10 @@ export interface paths {
|
|
|
82
82
|
path?: never;
|
|
83
83
|
cookie?: never;
|
|
84
84
|
};
|
|
85
|
-
/**
|
|
85
|
+
/**
|
|
86
|
+
* List disk types on sale
|
|
87
|
+
* @description Only disk types currently on sale are listed. A withdrawn one disappears from here and can no longer be bought, while the disks already on it keep working and can still be resized.
|
|
88
|
+
*/
|
|
86
89
|
get: operations["list-disk-types"];
|
|
87
90
|
put?: never;
|
|
88
91
|
post?: never;
|
|
@@ -102,6 +105,8 @@ export interface paths {
|
|
|
102
105
|
/**
|
|
103
106
|
* List images on sale
|
|
104
107
|
* @description An image whose `min_ram_mb` exceeds the memory of the selected instance type cannot boot. Filter the options accordingly.
|
|
108
|
+
*
|
|
109
|
+
* Only images currently on sale are listed. An image the platform withdraws disappears from here and can no longer install new instances, while the instances already running it keep running and can still be rebuilt onto it.
|
|
105
110
|
*/
|
|
106
111
|
get: operations["list-images"];
|
|
107
112
|
put?: never;
|
|
@@ -119,7 +124,10 @@ export interface paths {
|
|
|
119
124
|
path?: never;
|
|
120
125
|
cookie?: never;
|
|
121
126
|
};
|
|
122
|
-
/**
|
|
127
|
+
/**
|
|
128
|
+
* List instance types on sale
|
|
129
|
+
* @description Only instance types currently on sale are listed. A withdrawn one disappears from here and can no longer be ordered, while the instances already running it keep running.
|
|
130
|
+
*/
|
|
123
131
|
get: operations["list-instance-types"];
|
|
124
132
|
put?: never;
|
|
125
133
|
post?: never;
|
|
@@ -182,6 +190,8 @@ export interface paths {
|
|
|
182
190
|
/**
|
|
183
191
|
* Create a disk
|
|
184
192
|
* @description The disk is created in the availability zone of the selected disk type, and an instance must reside in the same zone to attach it. Choosing the disk type therefore determines the zone.
|
|
193
|
+
*
|
|
194
|
+
* A disk type that has been withdrawn is rejected with `DISK_TYPE_RETIRED`, even though its identifier still resolves. Withdrawn types stop appearing in the disk type listing; disks already bought on one keep working and can still be resized.
|
|
185
195
|
*/
|
|
186
196
|
post: operations["create-disk"];
|
|
187
197
|
delete?: never;
|
|
@@ -230,6 +240,12 @@ export interface paths {
|
|
|
230
240
|
/**
|
|
231
241
|
* Resize a disk
|
|
232
242
|
* @description Capacity can only be increased; shrinking is not supported. Extend the file system inside the instance once the resize completes.
|
|
243
|
+
*
|
|
244
|
+
* **A data disk whose performance grows with its size has to be detached first.** The storage backend decides a volume's limit when the volume is attached and never revisits it, so growing one that is attached would give you the capacity immediately and leave the speed at the old size's figure — indefinitely, and stopping the instance does not help. Rather than take the money for performance that does not arrive, this is refused with `DISK_RESIZE_NEEDS_DETACH`; detach the disk, resize it, and attach it again.
|
|
245
|
+
*
|
|
246
|
+
* It is only refused when the two sizes really would differ in speed. A disk whose type has no QoS level, or whose performance has already reached the type's ceiling, grows online as before.
|
|
247
|
+
*
|
|
248
|
+
* **A system disk is the exception and grows online**, because a root volume cannot be detached at all. Its performance does not change with size for exactly that reason — system disk types are required to carry a level that does not scale.
|
|
233
249
|
*/
|
|
234
250
|
post: operations["resize-disk"];
|
|
235
251
|
delete?: never;
|
|
@@ -317,6 +333,8 @@ export interface paths {
|
|
|
317
333
|
/**
|
|
318
334
|
* Set the bandwidth limit
|
|
319
335
|
* @description Limits both directions at once. Limiting egress alone does not prevent ingress traffic from saturating the uplink.
|
|
336
|
+
*
|
|
337
|
+
* While the address is bound to an instance, the ceiling has to fit that instance type's `max_bandwidth_mbps`; asking for more is refused with `INSTANCE_BANDWIDTH_CEILING`. An address bound to nothing is not checked against any type — there is none to check against — and is checked again when it is attached.
|
|
320
338
|
*/
|
|
321
339
|
put: operations["set-floating-ip-bandwidth"];
|
|
322
340
|
post?: never;
|
|
@@ -370,6 +388,8 @@ export interface paths {
|
|
|
370
388
|
*
|
|
371
389
|
* Exactly one source must be given: `image_id` for a platform image, `private_image_id` for a private image, or `boot_disk_id` to boot a disk you already have. Supplying more than one, or none, is rejected.
|
|
372
390
|
*
|
|
391
|
+
* A platform image that has been withdrawn is rejected with `IMAGE_RETIRED`, and an instance type that has been withdrawn with `INSTANCE_TYPE_RETIRED` — in both cases the identifier still resolves. Withdrawn entries stop appearing in their listing, so an identifier held in a script, a template or an earlier order is the way this is usually hit: reread the listing and pick another. Instances already running either are unaffected, and one on a withdrawn image can still be rebuilt onto it.
|
|
392
|
+
*
|
|
373
393
|
* `boot_disk_id` recovers an instance that can no longer be repaired from the inside. Snapshot its disk, restore that snapshot into a new disk, attach the new disk to another instance and repair it there, then create an instance from it. That disk is not deleted when the instance is released; it is detached and returned to you.
|
|
374
394
|
*
|
|
375
395
|
* Instances are created in the availability zone of the instance type. Disks to be attached later must reside in the same zone.
|
|
@@ -605,6 +625,8 @@ export interface paths {
|
|
|
605
625
|
/**
|
|
606
626
|
* Rebuild an instance
|
|
607
627
|
* @description **All data on the system disk is erased and cannot be recovered.** Attached data disks are unaffected.
|
|
628
|
+
*
|
|
629
|
+
* The image this instance already runs is accepted even after the platform has withdrawn it, since rebuilding is the only way back into an instance broken from the inside. Any *other* withdrawn image is rejected with `IMAGE_RETIRED`, which is a change of image and therefore a new order.
|
|
608
630
|
*/
|
|
609
631
|
post: operations["rebuild-instance"];
|
|
610
632
|
delete?: never;
|
|
@@ -1310,7 +1332,7 @@ export interface components {
|
|
|
1310
1332
|
RestoreBackupRequestBody: {
|
|
1311
1333
|
/**
|
|
1312
1334
|
* Format: uuid
|
|
1313
|
-
* @description May differ from the availability zone of the source disk, but must be in the same region
|
|
1335
|
+
* @description May differ from the availability zone of the source disk, but must be in the same region. It has to be on sale — restoring creates a new disk, so a withdrawn type is rejected here as well
|
|
1314
1336
|
*/
|
|
1315
1337
|
disk_type_id: string;
|
|
1316
1338
|
name: string;
|
|
@@ -1338,14 +1360,52 @@ export interface components {
|
|
|
1338
1360
|
region_code: string;
|
|
1339
1361
|
/** Format: int64 */
|
|
1340
1362
|
size_gb: number;
|
|
1363
|
+
/**
|
|
1364
|
+
* Format: int64
|
|
1365
|
+
* @description IOPS this disk is allowed. Null when its type is not rate-limited.
|
|
1366
|
+
*
|
|
1367
|
+
* Computed from the disk's own capacity, so it grows when the disk is grown — but see the
|
|
1368
|
+
* note on the resize endpoint: growing a disk that is attached is refused, precisely because
|
|
1369
|
+
* the new figure would not take effect until it was attached again.
|
|
1370
|
+
*/
|
|
1371
|
+
iops: number | null;
|
|
1372
|
+
/**
|
|
1373
|
+
* Format: int64
|
|
1374
|
+
* @description Throughput this disk is allowed, in bytes per second. Null when its type is not rate-limited
|
|
1375
|
+
*/
|
|
1376
|
+
throughput_bytes_per_sec: number | null;
|
|
1341
1377
|
/** @enum {string} */
|
|
1342
1378
|
status: "provisioning" | "available" | "attaching" | "in_use" | "detaching" | "resizing" | "reverting" | "restoring" | "releasing" | "deleting" | "error";
|
|
1379
|
+
/**
|
|
1380
|
+
* @description How this disk is paid for. `postpaid` is billed by the hour for as long as it exists;
|
|
1381
|
+
* `prepaid` was bought outright for a term.
|
|
1382
|
+
*
|
|
1383
|
+
* **Not the term.** How long it was bought for belongs to the order, not to the disk:
|
|
1384
|
+
* renewing can change it, and a machine bought for a year and then renewed for a month is
|
|
1385
|
+
* still a prepaid machine. Ask billing for the term and the expiry — they live there, and
|
|
1386
|
+
* they are the only two values a renewal moves.
|
|
1387
|
+
* @enum {string}
|
|
1388
|
+
*/
|
|
1389
|
+
charge_type: "postpaid" | "prepaid";
|
|
1343
1390
|
};
|
|
1344
1391
|
DiskTypeResource: {
|
|
1345
1392
|
availability_zone_code: string;
|
|
1346
1393
|
/** Format: uuid */
|
|
1347
1394
|
id: string;
|
|
1348
|
-
|
|
1395
|
+
/**
|
|
1396
|
+
* Format: int64
|
|
1397
|
+
* @description IOPS a disk of `min_size_gb` gets. Null when this type is not rate-limited.
|
|
1398
|
+
*
|
|
1399
|
+
* Performance grows with capacity, so this and `iops_at_max_size` are the two ends of the
|
|
1400
|
+
* range. The exact figure for the size actually bought appears on the disk itself once it
|
|
1401
|
+
* exists.
|
|
1402
|
+
*/
|
|
1403
|
+
iops_at_min_size: number | null;
|
|
1404
|
+
/**
|
|
1405
|
+
* Format: int64
|
|
1406
|
+
* @description IOPS a disk of `max_size_gb` gets. Null when this type is not rate-limited
|
|
1407
|
+
*/
|
|
1408
|
+
iops_at_max_size: number | null;
|
|
1349
1409
|
/** Format: int64 */
|
|
1350
1410
|
max_size_gb: number;
|
|
1351
1411
|
/** @enum {string} */
|
|
@@ -1356,7 +1416,62 @@ export interface components {
|
|
|
1356
1416
|
region_code: string;
|
|
1357
1417
|
/** Format: int64 */
|
|
1358
1418
|
step_gb: number;
|
|
1359
|
-
|
|
1419
|
+
/**
|
|
1420
|
+
* Format: int64
|
|
1421
|
+
* @description Throughput a disk of `min_size_gb` gets, in **bytes per second**. Null when this type is
|
|
1422
|
+
* not rate-limited.
|
|
1423
|
+
*
|
|
1424
|
+
* Bytes rather than MiB so the number needs no rounding on the way out; divide by 1048576
|
|
1425
|
+
* for MiB/s at the point of display.
|
|
1426
|
+
*/
|
|
1427
|
+
throughput_at_min_size: number | null;
|
|
1428
|
+
/**
|
|
1429
|
+
* Format: int64
|
|
1430
|
+
* @description Throughput a disk of `max_size_gb` gets, in bytes per second. Null when this type is not rate-limited
|
|
1431
|
+
*/
|
|
1432
|
+
throughput_at_max_size: number | null;
|
|
1433
|
+
/**
|
|
1434
|
+
* @description Whether any capacity is left in this type's pool.
|
|
1435
|
+
*
|
|
1436
|
+
* The same shape as on an instance type, but it answers less here: a disk is sold by the
|
|
1437
|
+
* GiB, so "not sold out" does not mean the size being asked for fits. `remaining` is the
|
|
1438
|
+
* field that decides that, and this one only says whether the pool is empty outright.
|
|
1439
|
+
*
|
|
1440
|
+
* It reflects a limit set by operations, not what the storage backend physically has —
|
|
1441
|
+
* raising the limit does not create capacity, and a type that is not sold out can still fail
|
|
1442
|
+
* to create if the backend is full.
|
|
1443
|
+
*
|
|
1444
|
+
* Advisory: it is read when the list is built, and capacity can be taken between that read
|
|
1445
|
+
* and the order. The order is what actually refuses.
|
|
1446
|
+
*/
|
|
1447
|
+
sold_out: boolean;
|
|
1448
|
+
/**
|
|
1449
|
+
* Format: int64
|
|
1450
|
+
* @description How much capacity is left, **in GiB**. Absent when this type is not limited at all.
|
|
1451
|
+
*
|
|
1452
|
+
* Unlike an instance type, where this is a count of machines, here it is an amount of
|
|
1453
|
+
* storage — and it is the number that bounds the size a customer may ask for. A picker that
|
|
1454
|
+
* offers sizes above it produces orders that are refused after the customer has chosen
|
|
1455
|
+
* everything else.
|
|
1456
|
+
*
|
|
1457
|
+
* Absent is not zero and not "unknown": a type with no limit simply has no number to show.
|
|
1458
|
+
* Reporting it as a number would need a sentinel, and any sentinel eventually gets compared
|
|
1459
|
+
* against a real size.
|
|
1460
|
+
*/
|
|
1461
|
+
remaining?: number;
|
|
1462
|
+
/**
|
|
1463
|
+
* @description What buying this type outright costs, per term. Empty means this type is only sold by the
|
|
1464
|
+
* hour.
|
|
1465
|
+
*
|
|
1466
|
+
* **The amount is per GiB for the whole term**, not the price of one disk: a disk's size is
|
|
1467
|
+
* chosen by the customer, so the total is this figure times the size. That differs from an
|
|
1468
|
+
* instance type, where the same field is the price of one machine — the unit follows what
|
|
1469
|
+
* the product is sold by, and the order is priced the same way.
|
|
1470
|
+
*
|
|
1471
|
+
* Advisory, like `sold_out`: it is read when the list is built. The order is what fixes the
|
|
1472
|
+
* price, and it refuses rather than falling back to hourly if the term is not sold.
|
|
1473
|
+
*/
|
|
1474
|
+
prepaid_prices?: components["schemas"]["PrepaidPrice"][];
|
|
1360
1475
|
};
|
|
1361
1476
|
DiskTypeListResponseBody: {
|
|
1362
1477
|
items: components["schemas"]["DiskTypeResource"][] | null;
|
|
@@ -1399,8 +1514,29 @@ export interface components {
|
|
|
1399
1514
|
availability_zone_code: string;
|
|
1400
1515
|
/** Format: uuid */
|
|
1401
1516
|
id: string;
|
|
1402
|
-
/**
|
|
1517
|
+
/**
|
|
1518
|
+
* Format: int64
|
|
1519
|
+
* @description The most public bandwidth a machine of this type may be given, in Mbps. Asking for more
|
|
1520
|
+
* when creating a machine, or raising a bound address past it, is refused.
|
|
1521
|
+
*
|
|
1522
|
+
* A ceiling on what can be bought, not a speed. How fast the machine's own interfaces run is
|
|
1523
|
+
* `network_egress_kbps` / `network_ingress_kbps`.
|
|
1524
|
+
*/
|
|
1403
1525
|
max_bandwidth_mbps: number;
|
|
1526
|
+
/**
|
|
1527
|
+
* Format: int64
|
|
1528
|
+
* @description Outbound ceiling of **each** network interface, in kbps. Null when this type is not
|
|
1529
|
+
* rate-limited.
|
|
1530
|
+
*
|
|
1531
|
+
* Per interface rather than per machine: a machine with two interfaces has this ceiling on
|
|
1532
|
+
* each of them, not shared between them. `max_ports` says how many it may have.
|
|
1533
|
+
*/
|
|
1534
|
+
network_egress_kbps: number | null;
|
|
1535
|
+
/**
|
|
1536
|
+
* Format: int64
|
|
1537
|
+
* @description Inbound ceiling of each network interface, in kbps. Null when this type is not rate-limited
|
|
1538
|
+
*/
|
|
1539
|
+
network_ingress_kbps: number | null;
|
|
1404
1540
|
/** Format: int64 */
|
|
1405
1541
|
max_floating_ips: number;
|
|
1406
1542
|
/** Format: int64 */
|
|
@@ -1467,7 +1603,34 @@ export interface components {
|
|
|
1467
1603
|
items: components["schemas"]["DiskResource"][] | null;
|
|
1468
1604
|
};
|
|
1469
1605
|
CreateDiskRequestBody: {
|
|
1470
|
-
/**
|
|
1606
|
+
/**
|
|
1607
|
+
* @description A promotion code to apply to this order. Case and surrounding whitespace do not matter.
|
|
1608
|
+
*
|
|
1609
|
+
* An unusable code is rejected outright rather than quietly ignored: somebody who typed a
|
|
1610
|
+
* code is buying at the discounted price, and letting it through silently means they pay
|
|
1611
|
+
* full price expecting the discount, with nothing anywhere saying so.
|
|
1612
|
+
*
|
|
1613
|
+
* The discount applies to the lines the campaign covers, not the whole order — typically
|
|
1614
|
+
* the instance type and memory, not the system disk, the address, or traffic. Preview it
|
|
1615
|
+
* first at `POST /account/v1/billing-accounts/{accountKey}/promotion-codes/preview` to
|
|
1616
|
+
* show the customer what will actually be charged.
|
|
1617
|
+
*
|
|
1618
|
+
* Metered orders reject any code: there is no amount to discount at this point.
|
|
1619
|
+
*/
|
|
1620
|
+
promotion_code?: string;
|
|
1621
|
+
/**
|
|
1622
|
+
* @description "This is the same click". Generate one when the dialog opens — not when it is submitted —
|
|
1623
|
+
* and send the same one on every retry of that action.
|
|
1624
|
+
*
|
|
1625
|
+
* Optional, and what happens without it is worth knowing: two identical requests inside the
|
|
1626
|
+
* same minute are treated as one, because there is nothing else to tell a double-click apart
|
|
1627
|
+
* from a deliberate second order. Sending your own key removes that guess entirely.
|
|
1628
|
+
*/
|
|
1629
|
+
idempotency_key?: string;
|
|
1630
|
+
/**
|
|
1631
|
+
* Format: uuid
|
|
1632
|
+
* @description A disk type currently on sale. A withdrawn one is rejected even though its identifier still resolves
|
|
1633
|
+
*/
|
|
1471
1634
|
disk_type_id: string;
|
|
1472
1635
|
name: string;
|
|
1473
1636
|
/** Format: int64 */
|
|
@@ -1545,6 +1708,18 @@ export interface components {
|
|
|
1545
1708
|
AllocateFloatingIPRequestBody: {
|
|
1546
1709
|
/** @description The address to allocate. Allocated by the platform when omitted */
|
|
1547
1710
|
address?: string;
|
|
1711
|
+
/**
|
|
1712
|
+
* Format: int64
|
|
1713
|
+
* @description The bandwidth ceiling of this address, in Mbit/s, applied to both directions.
|
|
1714
|
+
*
|
|
1715
|
+
* Required, and there is no "unlimited": an address with no ceiling runs at line rate and is
|
|
1716
|
+
* charged nothing for the traffic, while the address itself bills normally — so the invoice
|
|
1717
|
+
* looks correct and nothing anywhere reports it.
|
|
1718
|
+
*
|
|
1719
|
+
* It is billed separately from the address, per Mbit/s-hour, and appears as its own line on
|
|
1720
|
+
* the order. Changing it later goes through the bandwidth endpoint.
|
|
1721
|
+
*/
|
|
1722
|
+
bandwidth_mbps: number;
|
|
1548
1723
|
/** Format: uuid */
|
|
1549
1724
|
private_network_id: string;
|
|
1550
1725
|
};
|
|
@@ -1628,11 +1803,100 @@ export interface components {
|
|
|
1628
1803
|
suspended_at: string | null;
|
|
1629
1804
|
/** Format: date-time */
|
|
1630
1805
|
updated_at: string;
|
|
1806
|
+
/**
|
|
1807
|
+
* @description How this instance is paid for. `postpaid` is billed by the hour for as long as it exists;
|
|
1808
|
+
* `prepaid` was bought outright for a term.
|
|
1809
|
+
*
|
|
1810
|
+
* **Not the term.** How long it was bought for belongs to the order, not to the instance:
|
|
1811
|
+
* renewing can change it, and a machine bought for a year and then renewed for a month is
|
|
1812
|
+
* still a prepaid machine. Ask billing for the term and the expiry — they live there, and
|
|
1813
|
+
* they are the only two values a renewal moves.
|
|
1814
|
+
* @enum {string}
|
|
1815
|
+
*/
|
|
1816
|
+
charge_type: "postpaid" | "prepaid";
|
|
1817
|
+
/**
|
|
1818
|
+
* @description The order this instance was bought under, in billing's own identifiers. Empty when the
|
|
1819
|
+
* deployment has no billing wired in.
|
|
1820
|
+
*
|
|
1821
|
+
* Kept so the question can be answered later. "Why was I charged for this" is asked days
|
|
1822
|
+
* after the fact, and an order id handed back only in the launch response is one the
|
|
1823
|
+
* person who needs it never had.
|
|
1824
|
+
*/
|
|
1825
|
+
billing_order_id: string;
|
|
1631
1826
|
};
|
|
1632
1827
|
InstanceListResponseBody: {
|
|
1633
1828
|
items: components["schemas"]["InstanceResource"][] | null;
|
|
1634
1829
|
};
|
|
1635
1830
|
LaunchInstanceRequestBody: {
|
|
1831
|
+
/**
|
|
1832
|
+
* @description A promotion code to apply to this order. Case and surrounding whitespace do not matter.
|
|
1833
|
+
*
|
|
1834
|
+
* An unusable code is rejected outright rather than quietly ignored: somebody who typed a
|
|
1835
|
+
* code is buying at the discounted price, and letting it through silently means they pay
|
|
1836
|
+
* full price expecting the discount, with nothing anywhere saying so.
|
|
1837
|
+
*
|
|
1838
|
+
* The discount applies to the lines the campaign covers, not the whole order — typically
|
|
1839
|
+
* the instance type and memory, not the system disk, the address, or traffic. Preview it
|
|
1840
|
+
* first at `POST /account/v1/billing-accounts/{accountKey}/promotion-codes/preview` to
|
|
1841
|
+
* show the customer what will actually be charged.
|
|
1842
|
+
*
|
|
1843
|
+
* Metered orders reject any code: there is no amount to discount at this point.
|
|
1844
|
+
*/
|
|
1845
|
+
promotion_code?: string;
|
|
1846
|
+
/**
|
|
1847
|
+
* @description "This is the same click". Generate one when the dialog opens — not when it is submitted —
|
|
1848
|
+
* and send the same one on every retry of that action.
|
|
1849
|
+
*
|
|
1850
|
+
* Optional, and what happens without it is worth knowing: two identical requests inside the
|
|
1851
|
+
* same minute are treated as one, because there is nothing else to tell a double-click apart
|
|
1852
|
+
* from a deliberate second order. Sending your own key removes that guess entirely.
|
|
1853
|
+
*/
|
|
1854
|
+
idempotency_key?: string;
|
|
1855
|
+
/**
|
|
1856
|
+
* Format: uuid
|
|
1857
|
+
* @description Bind a floating IP you already hold, instead of allocating a new one. It must be idle and in
|
|
1858
|
+
* the same region.
|
|
1859
|
+
*
|
|
1860
|
+
* Mutually exclusive with `bandwidth_mbps`: an address you already hold has its own bandwidth
|
|
1861
|
+
* ceiling, set when it was allocated, and changing it is a separate operation.
|
|
1862
|
+
*
|
|
1863
|
+
* Like `bandwidth_mbps`, this happens **inside the creation**: if binding fails, no instance is
|
|
1864
|
+
* created. Binding afterwards is still possible from the instance page, but then it is two
|
|
1865
|
+
* operations and a failure in between leaves an instance you cannot reach.
|
|
1866
|
+
*
|
|
1867
|
+
* Only one instance can be created when it is used — one address binds to one interface.
|
|
1868
|
+
*/
|
|
1869
|
+
floating_ip_id?: string;
|
|
1870
|
+
/**
|
|
1871
|
+
* Format: int64
|
|
1872
|
+
* @description Give this instance a public address with this much bandwidth, in Mbit/s. Omitted or 0 means
|
|
1873
|
+
* no public address.
|
|
1874
|
+
*
|
|
1875
|
+
* Mutually exclusive with `floating_ip_id`, which binds one you already hold.
|
|
1876
|
+
*
|
|
1877
|
+
* The bandwidth is what says whether an address is wanted, rather than a separate flag,
|
|
1878
|
+
* because an address with no ceiling would run at line rate and be charged nothing for the
|
|
1879
|
+
* traffic — while the address itself bills normally and the invoice looks correct.
|
|
1880
|
+
*
|
|
1881
|
+
* The address and its bandwidth are two lines on the same order as the instance and its
|
|
1882
|
+
* system disk — one purchase with one total — and everything is created together or not at
|
|
1883
|
+
* all: if any step fails, the address goes back to the pool and no instance is created.
|
|
1884
|
+
* Asking for an address separately afterwards is still possible, but then they are separate
|
|
1885
|
+
* purchases, and a failure in between leaves an instance you cannot reach.
|
|
1886
|
+
*
|
|
1887
|
+
* Both lines are always billed by the hour, even when the instance is bought outright for a
|
|
1888
|
+
* term: a public IPv4 is a scarce resource the platform keeps holding for as long as you have
|
|
1889
|
+
* it, so it is not something that can be paid for once.
|
|
1890
|
+
*
|
|
1891
|
+
* Which address you get is not a choice here. Use the floating IP endpoints to claim a
|
|
1892
|
+
* particular address and bind it, which is what getting a known address back after a
|
|
1893
|
+
* migration needs.
|
|
1894
|
+
*
|
|
1895
|
+
* Rejected together with `port_id` when that interface already has a floating IP: an
|
|
1896
|
+
* interface carries one IPv4, and one IPv4 takes one floating IP. Attach another interface to
|
|
1897
|
+
* hold a second address.
|
|
1898
|
+
*/
|
|
1899
|
+
bandwidth_mbps?: number;
|
|
1636
1900
|
/**
|
|
1637
1901
|
* Format: int64
|
|
1638
1902
|
* @description Number of instances to create; 1 when omitted. Names are numbered automatically for several
|
|
@@ -1647,10 +1911,13 @@ export interface components {
|
|
|
1647
1911
|
boot_disk_id?: string;
|
|
1648
1912
|
/**
|
|
1649
1913
|
* Format: uuid
|
|
1650
|
-
* @description A platform image. Exactly one of this, `private_image_id` and `boot_disk_id`
|
|
1914
|
+
* @description A platform image, and it must be one currently on sale. Exactly one of this, `private_image_id` and `boot_disk_id`
|
|
1651
1915
|
*/
|
|
1652
1916
|
image_id?: string;
|
|
1653
|
-
/**
|
|
1917
|
+
/**
|
|
1918
|
+
* Format: uuid
|
|
1919
|
+
* @description An instance type currently on sale. A withdrawn one is rejected even though its identifier still resolves
|
|
1920
|
+
*/
|
|
1654
1921
|
instance_type_id: string;
|
|
1655
1922
|
/** @description The account the disk lets you log in as. Required with `boot_disk_id`, and rejected without it since an image states its own */
|
|
1656
1923
|
login_username?: string;
|
|
@@ -1692,9 +1959,13 @@ export interface components {
|
|
|
1692
1959
|
* refused — it is never quietly sold by the hour instead, because the customer who asked for
|
|
1693
1960
|
* a year would find out only from the bill.
|
|
1694
1961
|
*
|
|
1695
|
-
* The system disk is bought for the same term
|
|
1696
|
-
*
|
|
1697
|
-
*
|
|
1962
|
+
* The system disk is bought for the same term, because it is the same purchase: an instance
|
|
1963
|
+
* bought for a year whose disk is billed hourly is a bill nobody would predict from what they
|
|
1964
|
+
* clicked. A term is therefore refused together with `boot_disk_id`, where the disk already
|
|
1965
|
+
* exists and is already billed its own way.
|
|
1966
|
+
*
|
|
1967
|
+
* A public address asked for with `assign_public_ip` stays hourly regardless — it cannot be
|
|
1968
|
+
* bought outright — so one order can carry both.
|
|
1698
1969
|
*
|
|
1699
1970
|
* When the term runs out the instance is stopped, not deleted, and starts again once it is
|
|
1700
1971
|
* renewed. Renewal lives in the billing console, across every product, because what a
|
|
@@ -1715,6 +1986,23 @@ export interface components {
|
|
|
1715
1986
|
subnet_id?: string;
|
|
1716
1987
|
};
|
|
1717
1988
|
LaunchInstanceResponseBody: {
|
|
1989
|
+
/**
|
|
1990
|
+
* @description The orders these instances were bought under, in the same order as `instances`.
|
|
1991
|
+
*
|
|
1992
|
+
* **One per instance, not one per request.** A batch of three places three orders, because
|
|
1993
|
+
* each machine is ordered as it is created — stopping halfway leaves the machines already
|
|
1994
|
+
* made, and they each have to be paid for. A caller showing "your order" for a batch has to
|
|
1995
|
+
* show all of them.
|
|
1996
|
+
*
|
|
1997
|
+
* Empty when the deployment has no billing wired in, and on the `checkout_url` branch where
|
|
1998
|
+
* nothing was created yet.
|
|
1999
|
+
*
|
|
2000
|
+
* Given so the caller can point at the transaction. Creating a resource takes money — by
|
|
2001
|
+
* the hour from that moment for a metered one, in full from the balance for a prepaid one —
|
|
2002
|
+
* and until now the only thing handed back was the resource itself. Somebody asking "why
|
|
2003
|
+
* was I charged" had nothing to open.
|
|
2004
|
+
*/
|
|
2005
|
+
order_ids?: string[] | null;
|
|
1718
2006
|
/** @description Non-empty when only some of the instances were created, stating why the sequence stopped */
|
|
1719
2007
|
failure: string | null;
|
|
1720
2008
|
/** @description Returned in request order; an array even for a single instance */
|
|
@@ -1792,7 +2080,7 @@ export interface components {
|
|
|
1792
2080
|
generate_password?: boolean;
|
|
1793
2081
|
/**
|
|
1794
2082
|
* Format: uuid
|
|
1795
|
-
* @description A platform image. Exactly one of this and `private_image_id`
|
|
2083
|
+
* @description A platform image, which must be on sale unless it is the one this instance already runs. Exactly one of this and `private_image_id`
|
|
1796
2084
|
*/
|
|
1797
2085
|
image_id?: string;
|
|
1798
2086
|
password?: string;
|
package/dist/iam/v1/schema.d.ts
CHANGED
|
@@ -444,11 +444,6 @@ export interface components {
|
|
|
444
444
|
/** Format: uuid */
|
|
445
445
|
id: string;
|
|
446
446
|
name: string;
|
|
447
|
-
/**
|
|
448
|
-
* Format: date-time
|
|
449
|
-
* @description 欠费的起始时间
|
|
450
|
-
*/
|
|
451
|
-
overdue_at: string | null;
|
|
452
447
|
/** @enum {string} */
|
|
453
448
|
status: "ACTIVE" | "SUSPENDED" | "BANNED" | "DELETING" | "DELETED";
|
|
454
449
|
/** @description 给人看的,不参与任何查询 */
|