ogboot/public/swagger.yml

342 lines
9.3 KiB
YAML

openapi: 3.0.0
info:
title: 'Ogdhcp API'
version: '1.0'
paths:
/opengnsys3/rest/dhcp/subnets:
get:
operationId: 8f92a1cbcb8cd176bdc4ae272b3ad303
responses:
'200':
description: 'Devuelve todas las subredes'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Subnet'
'400':
description: 'Error al obtener las subredes'
post:
summary: 'Add a new DHCP subnet'
operationId: 88949bae5e7784ce2721ffafe7c88c0a
requestBody:
description: 'JSON payload'
required: true
content:
application/json:
schema:
properties:
subnetId:
type: integer
example: 2
mask:
type: string
example: 255.255.255.0
address:
type: string
example: 192.168.1.0
nextServer:
type: string
example: 192.168.1.1
bootFileName:
type: string
example: pxelinux.0
type: object
responses:
'200':
description: 'Subnet added successfully'
content:
application/json:
schema:
properties:
success: { type: string }
type: object
'400':
description: 'Error occurred'
content:
application/json:
schema:
properties:
error: { type: string }
type: object
'/opengnsys3/rest/dhcp/subnets/{subnetId}':
put:
summary: 'Modify a DHCP subnet'
operationId: 548b55fc0e1ad59ea5b5c909dfd07c71
parameters:
-
name: subnetId
in: path
description: 'ID of the subnet to modify'
required: true
schema:
type: integer
requestBody:
description: 'Data to modify the subnet'
required: true
content:
application/json:
schema:
properties:
mask:
type: string
address:
type: string
nextServer:
type: string
bootFileName:
type: string
type: object
responses:
'200':
description: 'Subnet modified successfully'
content:
application/json:
schema:
properties:
success: { type: string }
type: object
'400':
description: 'Error occurred'
content:
application/json:
schema:
properties:
error: { type: string }
type: object
delete:
summary: 'Delete a DHCP subnet'
operationId: c1c1c34729bdd85857b22e6e2bdc41de
parameters:
-
name: subnetId
in: path
description: 'ID of the subnet to delete'
required: true
schema:
type: integer
responses:
'200':
description: 'Subnet deleted successfully'
content:
application/json:
schema:
properties:
success: { type: string }
type: object
'400':
description: 'Error occurred'
content:
application/json:
schema:
properties:
error: { type: string }
type: object
'/opengnsys3/rest/dhcp/subnets/{subnetId}/hosts':
get:
summary: 'Get all hosts in a subnet'
operationId: 0989ca622a6a7e23f5af8e3bdd6f6b05
parameters:
-
name: subnetId
in: path
description: 'The ID of the subnet'
required: true
schema:
type: integer
responses:
'200':
description: 'List of hosts in the subnet'
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Host'
'400':
description: 'Error occurred'
content:
application/json:
schema:
properties:
error: { type: string }
type: object
'500':
description: 'Server error'
content:
application/json:
schema:
properties:
error: { type: string }
type: object
put:
summary: 'Update a DHCP host'
operationId: 1541441cd53685aaf6df45ab48befaa8
parameters:
-
name: subnetId
in: path
description: 'The ID of the subnet'
required: true
schema:
type: integer
requestBody:
description: 'Data for the host to update'
required: true
content:
application/json:
schema:
properties:
host:
type: string
example: pc11
oldMacAddress:
type: string
example: '56:6f:c7:4f:00:4f'
oldAddress:
type: string
example: 192.168.1.11
macAddress:
type: string
example: '56:6f:c7:4f:01:01'
address:
type: string
example: 192.168.1.11
type: object
responses:
'200':
description: 'Host updated successfully'
content:
application/json:
schema:
properties:
success: { type: string }
type: object
'400':
description: 'Error occurred'
content:
application/json:
schema:
properties:
error: { type: string }
type: object
post:
summary: 'Add a DHCP host to a subnet'
operationId: 3f897dcd7c04787ac9c42ddbb57cb800
parameters:
-
name: subnetId
in: path
description: 'ID of the subnet to add the host to'
required: true
schema:
type: integer
requestBody:
description: 'Data for the new host'
required: true
content:
application/json:
schema:
properties:
host:
type: string
example: pc11
macAddress:
type: string
example: '56:6f:c7:4f:00:4f'
address:
type: string
example: 172.30.4.11
type: object
responses:
'200':
description: 'Host added successfully'
content:
application/json:
schema:
properties:
success: { type: string }
type: object
'400':
description: 'Error occurred'
content:
application/json:
schema:
properties:
error: { type: string }
type: object
delete:
summary: 'Delete a DHCP host from a specific subnet'
operationId: f652c52b39d57d283401df66a7930b5f
parameters:
-
name: subnetId
in: path
description: 'The ID of the subnet'
required: true
schema:
type: integer
requestBody:
description: 'Data for the host to delete'
required: true
content:
application/json:
schema:
properties:
host:
type: string
example: pc11
type: object
responses:
'200':
description: 'Host deleted successfully'
content:
application/json:
schema:
properties:
success: { type: string }
type: object
'400':
description: 'Error occurred'
content:
application/json:
schema:
properties:
error: { type: string }
type: object
components:
schemas:
Subnet:
properties:
id:
description: 'The ID of the subnet'
type: integer
subnet:
description: 'The name of the subnet'
type: string
next-server:
description: 'The next server in the subnet'
type: string
boot-file-name:
description: 'The boot file name for the subnet'
type: string
reservations:
type: array
items:
description: 'The reservations in the subnet'
type: object
type: object
Host:
properties:
host:
type: string
example: pc11
macAddress:
type: string
example: '56:6f:c7:4f:00:4f'
address:
type: string
example: 172.30.4.11
type: object