Skip to content

Commit eb1ab7c

Browse files
committed
Disk Create required/refactor; Copy edits
1 parent 0827ae4 commit eb1ab7c

File tree

1 file changed

+61
-43
lines changed

1 file changed

+61
-43
lines changed

openapi.yaml

Lines changed: 61 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -4108,38 +4108,39 @@ paths:
41084108
new Linode will incur a charge on your Account.
41094109

41104110
Linodes can be created using one of the available Types. See
4111-
[GET /linode/types](/docs/api/linode-types/#types-list) to get more
4111+
Types List ([GET /linode/types](/docs/api/linode-types/#types-list)) to get more
41124112
information about each Type's specs and cost.
41134113

4114-
Linodes can be created in any one of our available
4115-
[Regions](/docs/api/regions/#regions-list) for a list
4116-
of available Regions you can deploy your Linode in.
4114+
Linodes can be created in any one of our available Regions, which are accessible from the
4115+
Regions List ([GET /regions](/docs/api/regions/#regions-list)) endpoint.
41174116

41184117
In an effort to fight spam, Linode restricts outbound connections on ports 25, 465, and 587
41194118
on all Linodes for new accounts created after November 5th, 2019. For more information,
41204119
see [Sending Email on Linode](/docs/email/running-a-mail-server/#sending-email-on-linode).
41214120

41224121
Linodes can be created in a number of ways:
41234122

4124-
* Using a Linode Linux Distribution image or an Image you created based on another Linode.
4123+
* Using a Linode Public Image distribution or a Private Image you created based on another Linode.
4124+
* Access the Images List ([GET /images](/docs/api/images/#images-list)) endpoint with authentication to view
4125+
all available Images.
41254126
* The Linode will be `running` after it completes `provisioning`.
41264127
* A default config with two Disks, one being a 512 swap disk, is created.
41274128
* `swap_size` can be used to customize the swap disk size.
41284129
* Requires a `root_pass` be supplied to use for the root User's Account.
41294130
* It is recommended to supply SSH keys for the root User using the `authorized_keys` field.
41304131
* You may also supply a list of usernames via the `authorized_users` field.
4131-
* These users must have an SSH Key associated with your Profile first. See [/profile/sshkeys](/docs/api/profile/#ssh-key-add) for more information.
4132+
* These users must have an SSH Key associated with your Profile first. See SSH Key Add ([POST /profile/sshkeys](/docs/api/profile/#ssh-key-add)) for more information.
41324133

41334134
* Using a StackScript.
4134-
* See [/linode/stackscripts](/docs/api/stackscripts/#stackscripts-list) for
4135+
* See StackScripts List ([GET /linode/stackscripts](/docs/api/stackscripts/#stackscripts-list)) for
41354136
a list of available StackScripts.
41364137
* The Linode will be `running` after it completes `provisioning`.
41374138
* Requires a compatible Image to be supplied.
4138-
* See [/linode/stackscript/{stackscriptId}](/docs/api/stackscripts/#stackscript-view) for compatible Images.
4139+
* See StackScript View ([GET /linode/stackscript/{stackscriptId}](/docs/api/stackscripts/#stackscript-view)) for compatible Images.
41394140
* Requires a `root_pass` be supplied to use for the root User's Account.
41404141
* It is recommended to supply SSH keys for the root User using the `authorized_keys` field.
41414142
* You may also supply a list of usernames via the `authorized_users` field.
4142-
* These users must have an SSH Key associated with your Profile first. See [/profile/sshkeys](/docs/api/profile/#ssh-key-add) for more information.
4143+
* These users must have an SSH Key associated with your Profile first. See SSH Key Add ([POST /profile/sshkeys](/docs/api/profile/#ssh-key-add)) for more information.
41434144

41444145
* Using one of your other Linode's backups.
41454146
* You must create a Linode large enough to accommodate the Backup's size.
@@ -4148,7 +4149,7 @@ paths:
41484149

41494150
* Create an empty Linode.
41504151
* The Linode will remain `offline` and must be manually started.
4151-
* See [POST /linode/instances/{linodeId}/boot](/docs/api/linode-instances/#linode-boot).
4152+
* See Linode Boot ([POST /linode/instances/{linodeId}/boot](/docs/api/linode-instances/#linode-boot)).
41524153
* Disks and Configs must be created manually.
41534154
* This is only recommended for advanced use cases.
41544155

@@ -4533,11 +4534,11 @@ paths:
45334534
post:
45344535
x-linode-grant: read_write
45354536
summary: Snapshot Create
4536-
description: >
4537+
description: |
45374538
Creates a snapshot Backup of a Linode.
45384539

4539-
** If you already have a snapshot of this Linode, this is a destructive
4540-
action. The previous snapshot will be deleted.**
4540+
**Important:** If you already have a snapshot of this Linode, this is a destructive
4541+
action. The previous snapshot will be deleted.
45414542
tags:
45424543
- Linode Instances
45434544
operationId: createSnapshot
@@ -4547,7 +4548,6 @@ paths:
45474548
- oauth:
45484549
- linodes:read_write
45494550
requestBody:
4550-
description: The label for the new snapshot.
45514551
required: true
45524552
content:
45534553
application/json:
@@ -4560,10 +4560,11 @@ paths:
45604560
type: string
45614561
minLength: 1
45624562
maxLength: 255
4563+
description: The label for the new snapshot.
45634564
example: SnapshotLabel
45644565
responses:
45654566
'200':
4566-
description: Snapshot was successfully taken.
4567+
description: Snapshot request successful.
45674568
content:
45684569
application/json:
45694570
schema:
@@ -4826,8 +4827,7 @@ paths:
48264827
config_id:
48274828
type: integer
48284829
description: >
4829-
The Linode Config ID to boot into. If omitted, we will attempt to select a
4830-
config to use. (This will do the right thing in most cases.)
4830+
The Linode Config ID to boot into.
48314831
example: null
48324832
responses:
48334833
'200':
@@ -4893,9 +4893,6 @@ paths:
48934893
application/json:
48944894
schema:
48954895
type: object
4896-
required:
4897-
- region
4898-
- type
48994896
properties:
49004897
region:
49014898
type: string
@@ -4905,7 +4902,7 @@ paths:
49054902
To view all available Regions you can deploy to see
49064903
[/regions](/docs/api/regions/#regions-list).
49074904

4908-
* Region can only be provided when cloning to a new Linode.
4905+
* Region can only be provided and is required when cloning to a new Linode.
49094906
example: us-east
49104907
type:
49114908
type: string
@@ -4918,12 +4915,12 @@ paths:
49184915
To view all available Linode Types you can deploy with
49194916
see [/linode/types](/docs/api/linode-types/#types-list).
49204917

4921-
* Type can only be provided when cloning to a new Linode.
4918+
* Type can only be provided and is required when cloning to a new Linode.
49224919
example: g6-standard-2
49234920
linode_id:
49244921
type: integer
49254922
description: >
4926-
If an existing Linode is to be the target for the clone,
4923+
If an existing Linode is the target for the clone,
49274924
the ID of that Linode. The existing Linode must have enough
49284925
resources to accept the clone.
49294926
example: 124
@@ -5389,13 +5386,27 @@ paths:
53895386
- Linode Instances
53905387
summary: Disk Create
53915388
description: |
5392-
Adds a new Disk to a Linode. You can optionally create a Disk
5393-
from an Image (see [/images](/docs/api/images/#images-list) for a list of available public images,
5394-
or use one of your own), and optionally provide a StackScript to deploy
5395-
with this Disk.
5389+
Adds a new Disk to a Linode.
5390+
5391+
* You can optionally create a Disk from an Image or an Empty Disk if no Image is provided with a request.
5392+
5393+
* When creating an Empty Disk, providing a `label` is required.
53965394

5397-
The default filesystem for new Disks is `ext4`. If creating a Disk from an Image, the filesystem
5395+
* If no `label` is provided, an `image` is required instead.
5396+
5397+
* When creating a Disk from an Image, `root_pass` is required.
5398+
5399+
* The default filesystem for new Disks is `ext4`. If creating a Disk from an Image, the filesystem
53985400
of the Image is used unless otherwise specified.
5401+
5402+
* When deploying a StackScript on a Disk:
5403+
* See StackScripts List ([GET /linode/stackscripts](/docs/api/stackscripts/#stackscripts-list)) for
5404+
a list of available StackScripts.
5405+
* Requires a compatible Image to be supplied.
5406+
* See StackScript View ([GET /linode/stackscript/{stackscriptId}](/docs/api/stackscripts/#stackscript-view)) for compatible Images.
5407+
* It is recommended to supply SSH keys for the root User using the `authorized_keys` field.
5408+
* You may also supply a list of usernames via the `authorized_users` field.
5409+
* These users must have an SSH Key associated with their Profiles first. See SSH Key Add ([POST /profile/sshkeys](/docs/api/profile/#ssh-key-add)) for more information.
53995410
operationId: addLinodeDisk
54005411
x-linode-cli-action: disk-create
54015412
security:
@@ -5409,7 +5420,10 @@ paths:
54095420
content:
54105421
application/json:
54115422
schema:
5412-
$ref: '#/components/schemas/DiskRequest'
5423+
required:
5424+
- size
5425+
allOf:
5426+
- $ref: '#/components/schemas/DiskRequest'
54135427
responses:
54145428
'200':
54155429
description: Disk created.
@@ -16326,24 +16340,27 @@ components:
1632616340
DiskRequest:
1632716341
type: object
1632816342
description: Disk object request.
16329-
required:
16330-
- size
16331-
- label
1633216343
properties:
1633316344
size:
16334-
$ref: '#/components/schemas/Disk/properties/size'
16345+
x-linode-filterable: true
16346+
type: integer
16347+
description: |
16348+
The size of the Disk in MB.
16349+
16350+
Images require a minimum size. Access the Image View ([GET /images/{imageID}](/docs/api/images/#image-view)) endpoint to view its size.
16351+
example: 48640
1633516352
label:
1633616353
$ref: '#/components/schemas/Disk/properties/label'
1633716354
filesystem:
1633816355
$ref: '#/components/schemas/Disk/properties/filesystem'
1633916356
image:
1634016357
type: string
1634116358
description: |
16342-
An Image ID to deploy the Disk from.
16359+
An Image ID to deploy the Linode Disk from.
1634316360

1634416361
Access the Images List ([GET /images](/docs/api/images/#images-list)) endpoint with authentication to view
1634516362
all available Images. Official Linode Images start with `linode/`, while your Account's Images start with `private/`. Creating
16346-
a disk from an Account Image requires `read_only` or `read_write` permissions for that Image. Access the User's
16363+
a disk from a Private Image requires `read_only` or `read_write` permissions for that Image. Access the User's
1634716364
Grant Update ([PUT /account/users/{username}/grants](/docs/api/account/#users-grants-update)) endpoint to
1634816365
adjust permissions for an Account Image.
1634916366
example: linode/debian9
@@ -16356,9 +16373,7 @@ components:
1635616373
- ssh-rsa AAAA_valid_public_ssh_key_123456785== user@their-computer
1635716374
description: |
1635816375
A list of public SSH keys that will be automatically appended
16359-
to the root user's `~/.ssh/authorized_keys` file.
16360-
16361-
Only accepted if `image` is provided.
16376+
to the root user's `~/.ssh/authorized_keys` file when deploying from an Image.
1636216377
authorized_users:
1636316378
type: array
1636416379
items:
@@ -16370,17 +16385,19 @@ components:
1637016385
description: >
1637116386
A list of usernames. If the usernames have associated
1637216387
SSH keys, the keys will be appended to the root users
16373-
`~/.ssh/authorized_keys` file automatically.
16388+
`~/.ssh/authorized_keys` file automatically when deploying from an Image.
1637416389
root_pass:
1637516390
type: string
1637616391
format: password
1637716392
writeOnly: true
1637816393
example: aComplexP@ssword
16394+
minLength: 7
16395+
maxLength: 128
1637916396
description: |
16380-
This will set the root user's password on the newly-created Linode. Linode passwords have the following constraints:
16397+
This sets the root user's password on a newly-created Linode Disk when deploying from an Image.
1638116398

16382-
* Must meet a password strength score requirement that is calculated internally by the API.
16383-
If the strength requirement is not met, you will receive a `Password does not meet strength requirement` error.
16399+
* Must meet a password strength score requirement that is calculated internally by the API.
16400+
If the strength requirement is not met, you will receive a `Password does not meet strength requirement` error.
1638416401
stackscript_id:
1638516402
type: integer
1638616403
example: 10079
@@ -16389,7 +16406,7 @@ components:
1638916406
deployment of this Linode. A compatible `image` is required to use a
1639016407
StackScript. To get a list of available StackScript and their permitted Images
1639116408
see [/stackscripts](/docs/api/stackscripts/#stackscripts-list).
16392-
This field cannot be used when deploying from a Backup or a private Image.
16409+
This field cannot be used when deploying from a Backup or a Private Image.
1639316410
stackscript_data:
1639416411
type: object
1639516412
example:
@@ -18715,6 +18732,7 @@ components:
1871518732

1871618733
If it is deployed from an Image or a Backup and you wish it to remain `offline`
1871718734
after deployment, set this to `false`.
18735+
default: true
1871818736
LinodeStats:
1871918737
type: object
1872018738
description: >

0 commit comments

Comments
 (0)