Skip to content

Commit dd1ab17

Browse files
Add GET and POST /vlans
1 parent 920f9ad commit dd1ab17

File tree

1 file changed

+198
-0
lines changed

1 file changed

+198
-0
lines changed

openapi.yaml

Lines changed: 198 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8995,6 +8995,153 @@ paths:
89958995
- lang: CLI
89968996
source: >
89978997
linode-cli networking v6-ranges
8998+
/networking/vlans:
8999+
x-linode-cli-command: networking
9000+
get:
9001+
parameters:
9002+
- $ref: '#/components/parameters/pageOffset'
9003+
- $ref: '#/components/parameters/pageSize'
9004+
tags:
9005+
- Networking
9006+
summary: List VLANs
9007+
description: >
9008+
Returns a list of all Virtual Local Area Networks (VLANs) on your Account. VLANs provide
9009+
a mechanism for secure communication between two or more Linodes that are assigned to the same
9010+
VLAN and are both within the same Layer 2 broadcast domain.
9011+
9012+
* You can create up to 10 VLANs within each data center region.
9013+
* Move this to the POST
9014+
9015+
9016+
**Beta**: This endpoint is in beta. Please make sure to prepend all requests with
9017+
`/v4beta` instead of `/v4`, and be aware that this endpoint may receive breaking
9018+
updates in the future. This notice will be removed when this endpoint is out of
9019+
beta.
9020+
operationId: getVLANs
9021+
x-linode-cli-action: vlans-list
9022+
security:
9023+
- personalAccessToken: []
9024+
- oauth:
9025+
- vlans:read_only
9026+
responses:
9027+
'200':
9028+
description: The VLANs available on this Account.
9029+
content:
9030+
application/json:
9031+
schema:
9032+
type: object
9033+
properties:
9034+
data:
9035+
type: array
9036+
items:
9037+
$ref: '#/components/schemas/Vlans'
9038+
page:
9039+
$ref: '#/components/schemas/PaginationEnvelope/properties/page'
9040+
pages:
9041+
$ref: '#/components/schemas/PaginationEnvelope/properties/pages'
9042+
results:
9043+
$ref: '#/components/schemas/PaginationEnvelope/properties/results'
9044+
default:
9045+
$ref: '#/components/responses/ErrorResponse'
9046+
x-code-samples:
9047+
- lang: Shell
9048+
source: >
9049+
curl -H "Authorization: Bearer $TOKEN" \
9050+
https://api.linode.com/v4beta/networking/vlans/
9051+
- lang: CLI
9052+
source: >
9053+
linode-cli networking vlans-list
9054+
post:
9055+
x-linode-grant: add_vlans
9056+
tags:
9057+
- Networking
9058+
summary: Create VLAN
9059+
description: >
9060+
Creates a Virtual Local Area Network (VLAN) in the specified data center region. VLANs provide
9061+
a mechanism for secure communication between two or more Linodes that are assigned to the same
9062+
VLAN and are both within the same Layer 2 broadcast domain.
9063+
9064+
* 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+
to an existing VLAN.
9067+
* To add a Network Interface to an existing Linode, use the Create Interface endpoint. This endpoint
9068+
will allow you to assign a private Interface to an existing VLAN. See the Create Interface endpoint
9069+
for more details.
9070+
9071+
9072+
**Beta**: This endpoint is in beta. Please make sure to prepend all requests with
9073+
`/v4beta` instead of `/v4`, and be aware that this endpoint may receive breaking
9074+
updates in the future. This notice will be removed when this endpoint is out of
9075+
beta.
9076+
operationId: createVlan
9077+
x-linode-cli-action: vlan-create
9078+
security:
9079+
- personalAccessToken: []
9080+
- oauth:
9081+
- vlans:read_write
9082+
requestBody:
9083+
description: >
9084+
The payload
9085+
required: true
9086+
content:
9087+
application/json:
9088+
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'
9119+
responses:
9120+
'200':
9121+
description: NodeBalancer created successfully.
9122+
content:
9123+
application/json:
9124+
schema:
9125+
$ref: '#/components/schemas/NodeBalancer'
9126+
default:
9127+
$ref: '#/components/responses/ErrorResponse'
9128+
x-code-samples:
9129+
- lang: Shell
9130+
source: >
9131+
curl -H "Content-Type: application/json" \
9132+
-H "Authorization: Bearer $TOKEN" \
9133+
-X POST -d '{
9134+
"region": "us-east",
9135+
"label": "balancer12345",
9136+
"client_conn_throttle": 0
9137+
}' \
9138+
https://api.linode.com/v4/nodebalancers
9139+
- lang: CLI
9140+
source: >
9141+
linode-cli nodebalancers create \
9142+
--region us-east \
9143+
--label balancer12345 \
9144+
--client_conn_throttle 0
89989145
/nodebalancers:
89999146
x-linode-cli-command: nodebalancers
90009147
get:
@@ -18632,6 +18779,57 @@ components:
1863218779
description: >
1863318780
The public SSH Key, which is used to authenticate to the root user
1863418781
of the Linodes you deploy.
18782+
Vlans:
18783+
type: object
18784+
required:
18785+
- region
18786+
description: >
18787+
A virtual local area network (VLAN) associated with your Account.
18788+
properties:
18789+
id:
18790+
type: integer
18791+
description: The unique ID of this Volume.
18792+
example: 12345
18793+
readOnly: true
18794+
x-linode-cli-display: 1
18795+
description:
18796+
type: string
18797+
description: >
18798+
Information about this VLAN.
18799+
example: "My example VLAN"
18800+
minLength: 1
18801+
maxLength: 255
18802+
x-linode-cli-display: 2
18803+
region:
18804+
type: string
18805+
description: >
18806+
This VLAN's data center region.
18807+
18808+
18809+
**Note:** Currently, a VLAN can only be assigned to a Linode
18810+
within the same data center region.
18811+
example: us-east
18812+
x-linode-cli-display: 3
18813+
linodes:
18814+
type: array
18815+
description: >
18816+
An array of Linode IDs to assign to this VLAN.
18817+
18818+
Use the [List Linodes](/api/v4/linode-instances) endpoint to view all Linode IDs associated
18819+
with this Account.
18820+
items:
18821+
type: integer
18822+
example:
18823+
- 12345
18824+
- 56789
18825+
cidr_block:
18826+
type: string
18827+
description: >
18828+
A Classles Inter-Domain Routing (CIDIR) block allows for simple IP Address Management (IPAM)
18829+
for this VLAN. If specified, new Interfaces associated with this VLAN
18830+
are assigned a private IPv4 address from within the `cidr_block` range.
18831+
example: 10.0.0.0/24
18832+
x-linode-cli-display: 4
1863518833
Volume:
1863618834
type: object
1863718835
required:

0 commit comments

Comments
 (0)