Skip to content

Commit 2d1dc76

Browse files
Add View VLAN and Delete VLAN
Copy editing and formatting
1 parent dd1ab17 commit 2d1dc76

File tree

1 file changed

+114
-44
lines changed

1 file changed

+114
-44
lines changed

openapi.yaml

Lines changed: 114 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -9001,6 +9001,8 @@ paths:
90019001
parameters:
90029002
- $ref: '#/components/parameters/pageOffset'
90039003
- $ref: '#/components/parameters/pageSize'
9004+
servers:
9005+
- url: https://api.linode.com/v4beta
90049006
tags:
90059007
- Networking
90069008
summary: List VLANs
@@ -9009,9 +9011,6 @@ paths:
90099011
a mechanism for secure communication between two or more Linodes that are assigned to the same
90109012
VLAN and are both within the same Layer 2 broadcast domain.
90119013

9012-
* You can create up to 10 VLANs within each data center region.
9013-
* Move this to the POST
9014-
90159014

90169015
**Beta**: This endpoint is in beta. Please make sure to prepend all requests with
90179016
`/v4beta` instead of `/v4`, and be aware that this endpoint may receive breaking
@@ -9053,6 +9052,8 @@ paths:
90539052
linode-cli networking vlans-list
90549053
post:
90559054
x-linode-grant: add_vlans
9055+
servers:
9056+
- url: https://api.linode.com/v4beta
90569057
tags:
90579058
- Networking
90589059
summary: Create VLAN
@@ -9062,8 +9063,10 @@ paths:
90629063
VLAN and are both within the same Layer 2 broadcast domain.
90639064

90649065
* You can create up to 10 VLANs within each data center region.
9065-
* Use the Create Linode endpoint to deploy a Linode with a Network Interface that is attached
9066+
9067+
* Use the [Create Linode](/api/v4/linode-instances/#post) endpoint to deploy a new Linode with a Network Interface that is attached
90669068
to an existing VLAN.
9069+
90679070
* To add a Network Interface to an existing Linode, use the Create Interface endpoint. This endpoint
90689071
will allow you to assign a private Interface to an existing VLAN. See the Create Interface endpoint
90699072
for more details.
@@ -9080,49 +9083,19 @@ paths:
90809083
- oauth:
90819084
- vlans:read_write
90829085
requestBody:
9083-
description: >
9084-
The payload
9086+
description: Information about the domain you are registering.
90859087
required: true
90869088
content:
90879089
application/json:
90889090
schema:
9089-
required:
9090-
- region
9091-
properties:
9092-
region:
9093-
type: string
9094-
description: >
9095-
The ID of the Region to create this NodeBalancer in.
9096-
example: us-east
9097-
label:
9098-
$ref: '#/components/schemas/NodeBalancer/properties/label'
9099-
client_conn_throttle:
9100-
$ref: '#/components/schemas/NodeBalancer/properties/client_conn_throttle'
9101-
configs:
9102-
type: array
9103-
description: >
9104-
The ports to configure this NodeBalancer with on creation.
9105-
Each config must have a unique port and at least one Node.
9106-
items:
9107-
allOf:
9108-
- $ref: '#/components/schemas/NodeBalancerConfig'
9109-
- type: object
9110-
properties:
9111-
nodes:
9112-
type: array
9113-
description: >
9114-
The NodeBalancer Nodes that serve this port. When
9115-
creating a NodeBalancer this way, at least one Node
9116-
is required per configured port.
9117-
items:
9118-
$ref: '#/components/schemas/NodeBalancerNode'
9091+
$ref: '#/components/schemas/Vlans'
91199092
responses:
91209093
'200':
91219094
description: NodeBalancer created successfully.
91229095
content:
91239096
application/json:
91249097
schema:
9125-
$ref: '#/components/schemas/NodeBalancer'
9098+
$ref: '#/components/schemas/Vlans'
91269099
default:
91279100
$ref: '#/components/responses/ErrorResponse'
91289101
x-code-samples:
@@ -9131,17 +9104,109 @@ paths:
91319104
curl -H "Content-Type: application/json" \
91329105
-H "Authorization: Bearer $TOKEN" \
91339106
-X POST -d '{
9107+
"description": "My example VLAN",
91349108
"region": "us-east",
9135-
"label": "balancer12345",
9136-
"client_conn_throttle": 0
9109+
"linodes": [
9110+
123,
9111+
456,
9112+
789
9113+
],
9114+
"cidr_block": "10.0.0.0/24"
91379115
}' \
9138-
https://api.linode.com/v4/nodebalancers
9116+
https://api.linode.com/v4/networking/vlans
91399117
- lang: CLI
91409118
source: >
9141-
linode-cli nodebalancers create \
9119+
linode-cli vlan-create \
91429120
--region us-east \
9143-
--label balancer12345 \
9144-
--client_conn_throttle 0
9121+
--description "My example VLAN" \
9122+
--linodes [123, 456, 789]
9123+
/networking/vlans/{vlanId}:
9124+
parameters:
9125+
- name: vlanId
9126+
in: path
9127+
description: ID of the VLAN to look up.
9128+
required: true
9129+
schema:
9130+
type: integer
9131+
x-linode-cli-command: networking
9132+
get:
9133+
servers:
9134+
- url: https://api.linode.com/v4beta
9135+
operationId: getVlan
9136+
x-linode-cli-action: vlan-view
9137+
security:
9138+
- personalAccessToken: []
9139+
- oauth:
9140+
- vlans:read_only
9141+
tags:
9142+
- Networking
9143+
summary: View VLAN
9144+
description: >
9145+
Lookup the details of a specific VLAN by its ID.
9146+
9147+
9148+
**Beta**: This endpoint is in beta. Please make sure to prepend all requests with
9149+
`/v4beta` instead of `/v4`, and be aware that this endpoint may receive breaking
9150+
updates in the future. This notice will be removed when this endpoint is out of
9151+
beta.
9152+
responses:
9153+
'200':
9154+
description: Returns a single VLAN.
9155+
content:
9156+
application/json:
9157+
schema:
9158+
$ref: '#/components/schemas/Vlans'
9159+
default:
9160+
$ref: '#/components/responses/ErrorResponse'
9161+
x-code-samples:
9162+
- lang: Shell
9163+
source: >
9164+
curl -H "Authorization: Bearer $TOKEN" \
9165+
https://api.linode.com/v4beta/networking/vlans/12345
9166+
- lang: CLI
9167+
source:
9168+
linode-cli networking vlan-view 12345
9169+
delete:
9170+
servers:
9171+
- url: https://api.linode.com/v4beta
9172+
operationId: deleteVlan
9173+
x-linode-cli-action: vlan-delete
9174+
security:
9175+
- personalAccessToken: []
9176+
- oauth:
9177+
- vlan:read_write
9178+
tags:
9179+
- Networking
9180+
summary: Delete VLAN
9181+
description: |
9182+
Deletes a VLAN you have permission to `read_write`. **Deleting a VLAN is a destructive action and cannot be undone.**
9183+
9184+
If the VLAN has any Linodes assigned to it, deleting the VLAN removes all Linodes from the VLAN.
9185+
9186+
9187+
9188+
**Beta**: This endpoint is in beta. Please make sure to prepend all requests with
9189+
`/v4beta` instead of `/v4`, and be aware that this endpoint may receive breaking
9190+
updates in the future. This notice will be removed when this endpoint is out of
9191+
beta.
9192+
responses:
9193+
'200':
9194+
description: Delete successful
9195+
content:
9196+
application/json:
9197+
schema:
9198+
type: object
9199+
default:
9200+
$ref: '#/components/responses/ErrorResponse'
9201+
x-code-samples:
9202+
- lang: Shell
9203+
source: >
9204+
curl -H "Authorization: Bearer $TOKEN" \
9205+
-X DELETE \
9206+
https://api.linode.com/v4beta/networking/vlans/12345
9207+
- lang: CLI
9208+
source: >
9209+
linode-cli networking vlan-delete 12345
91459210
/nodebalancers:
91469211
x-linode-cli-command: nodebalancers
91479212
get:
@@ -18795,7 +18860,7 @@ components:
1879518860
description:
1879618861
type: string
1879718862
description: >
18798-
Information about this VLAN.
18863+
Information about this VLAN for your own reference.
1879918864
example: "My example VLAN"
1880018865
minLength: 1
1880118866
maxLength: 255
@@ -18815,8 +18880,13 @@ components:
1881518880
description: >
1881618881
An array of Linode IDs to assign to this VLAN.
1881718882

18883+
1881818884
Use the [List Linodes](/api/v4/linode-instances) endpoint to view all Linode IDs associated
1881918885
with this Account.
18886+
18887+
18888+
**Note:** Currently, a VLAN can only be assigned to a Linode
18889+
within the same data center region.
1882018890
items:
1882118891
type: integer
1882218892
example:

0 commit comments

Comments
 (0)