Files
virtfusion-mcp/openapi.yaml
Prophet731 3d0eed4f17
All checks were successful
CI / build (push) Successful in 32s
feat: initial implementation of VirtFusion MCP server
Complete MCP server wrapping all 84 VirtFusion Admin API endpoints:
- Core HTTP client with Bearer auth and error handling
- 17 tool modules organized by API category
- Endpoint drift detection scripts and Gitea Actions CI/CD
- Comprehensive README with configuration examples
- CLAUDE.md for AI assistant onboarding

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 23:37:31 -04:00

8310 lines
312 KiB
YAML

openapi: 3.0.1
info:
title: VirtFusion Global API
description: >-
You can use this API to access all Administrator API endpoints, such as the
server API to deploy and manage servers, or the system API to configure and
manage the system.
The API is organized around REST. All requests should be made over SSL. All
request and response bodies, including errors, are encoded in JSON.
Endpoint https://cp.domain.com/api/v1
version: 1.0.0
tags:
- name: General
- name: Hypervisors
- name: Hypervisor Groups
- name: Servers
- name: Servers/Network
- name: Servers/Network/Firewall
- name: Servers/Network/Traffic
- name: Servers/Power
- name: IP Blocks
- name: Backups
- name: DNS
- name: Media
- name: Packages
- name: Queue & Tasks
- name: SSH Keys
- name: Users
- name: Users/External Rel ID & Rel Str
- name: Self Service
- name: Self Service/External Relational ID
paths:
/connect:
get:
summary: Test connection
deprecated: false
description: ''
tags:
- General
parameters: []
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example: []
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/compute/hypervisors/groups:
get:
summary: Retrieve hypervisor groups
deprecated: false
description: ''
tags:
- Hypervisor Groups
parameters:
- name: results
in: query
description: >-
Number of results to return. Range between 1 and 200. Defaults to
20.
required: false
example: 20
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
current_page: 1
data:
- id: 1
name: Default
label: null
description: Default hypervisor group
distributionType: 5
enabled: true
default: true
created: '2024-03-12T22:21:32+00:00'
updated: '2024-04-12T20:56:04+00:00'
- id: 2
name: Test 1
label: null
description: null
distributionType: 13
enabled: true
default: false
created: '2024-10-08T13:23:28+00:00'
updated: '2024-10-08T13:23:42+00:00'
- id: 3
name: Test 2
label: null
description: null
distributionType: 5
enabled: true
default: false
created: '2024-10-12T21:12:33+00:00'
updated: '2024-10-12T21:14:18+00:00'
first_page_url: >-
https://192.168.3.11/api/v1/compute/hypervisors/groups?results=20&page=1
from: 1
last_page: 1
last_page_url: >-
https://192.168.3.11/api/v1/compute/hypervisors/groups?results=20&page=1
links:
- url: null
label: '&laquo; Previous'
active: false
- url: >-
https://192.168.3.11/api/v1/compute/hypervisors/groups?results=20&page=1
label: '1'
active: true
- url: null
label: Next &raquo;
active: false
next_page_url: null
path: https://192.168.3.11/api/v1/compute/hypervisors/groups
per_page: 20
prev_page_url: null
to: 3
total: 3
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/compute/hypervisors/groups/{hypervisorGroupId}:
get:
summary: Retrieve a hypervisor group
deprecated: false
description: ''
tags:
- Hypervisor Groups
parameters:
- name: hypervisorGroupId
in: path
description: A valid hypervisor group ID as shown in VirtFusion.
required: true
example: 1
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
id: 1
name: Default
label: null
description: Default hypervisor group
distributionType: 5
enabled: true
default: true
created: '2024-03-12T22:21:32+00:00'
updated: '2024-04-12T20:56:04+00:00'
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/compute/hypervisors/groups/{hypervisorGroupId}/resources:
get:
summary: Retrieve a hypervisor groups resources
deprecated: false
description: ''
tags:
- Hypervisor Groups
parameters:
- name: hypervisorGroupId
in: path
description: A valid hypervisor group ID as shown in VirtFusion.
required: true
example: 1
schema:
type: integer
- name: results
in: query
description: >-
Number of results to return. Range between 1 and 200. Defaults to
20.
required: false
example: 20
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
current_page: 1
data:
- hypervisor:
id: 1
name: PHV 1 (RED)
enabled: true
prohibit: false
accept: false
commissioned: true
resources:
servers:
units: '#'
max: 0
allocated: 1
free: -1
percent: null
memory:
units: MB
max: 6004
allocated: 4096
free: 1908
percent: 68.2
cpuCores:
units: '#'
max: 4
allocated: 3
free: 1
percent: 75
localStorage:
enabled: 1
name: Local (Default mountpoint)
storageType: 0
units: GB
max: 90
allocated: 25
free: 65
percent: 27.8
otherStorage: []
network:
total:
ipv4:
free: 470
- hypervisor:
id: 2
name: PHV 2 (BLUE)
enabled: true
prohibit: false
accept: false
commissioned: true
resources:
servers:
units: '#'
max: 0
allocated: 1
free: -1
percent: null
memory:
units: MB
max: 10000
allocated: 1024
free: 8976
percent: 10.2
cpuCores:
units: '#'
max: 28
allocated: 1
free: 27
percent: 3.6
localStorage:
enabled: 1
name: Local (Default mountpoint)
storageType: 0
units: GB
max: 150
allocated: 10
free: 140
percent: 6.7
otherStorage: []
network:
total:
ipv4:
free: 470
- hypervisor:
id: 3
name: BHV 9
enabled: true
prohibit: false
accept: false
commissioned: true
resources:
servers:
units: '#'
max: 0
allocated: 2
free: -2
percent: null
memory:
units: MB
max: 27913
allocated: 2048
free: 25865
percent: 7.3
cpuCores:
units: '#'
max: 64
allocated: 2
free: 62
percent: 3.1
localStorage:
enabled: 1
name: Local (Default mountpoint)
storageType: 0
units: GB
max: 400
allocated: 20
free: 380
percent: 5
otherStorage: []
network:
total:
ipv4:
free: 470
- hypervisor:
id: 4
name: BHV 8
enabled: true
prohibit: false
accept: false
commissioned: true
resources:
servers:
units: '#'
max: 0
allocated: 0
free: 0
percent: null
memory:
units: MB
max: 27913
allocated: 0
free: 27913
percent: 0
cpuCores:
units: '#'
max: 16
allocated: 0
free: 16
percent: 0
localStorage:
enabled: 1
name: Local (Default mountpoint)
storageType: 0
units: GB
max: 1000
allocated: 0
free: 1000
percent: 0
otherStorage: []
network:
total:
ipv4:
free: 0
- hypervisor:
id: 8
name: BHV 3
enabled: true
prohibit: false
accept: false
commissioned: true
resources:
servers:
units: '#'
max: 0
allocated: 2
free: -2
percent: null
memory:
units: MB
max: 27913
allocated: 2048
free: 25865
percent: 7.3
cpuCores:
units: '#'
max: 120
allocated: 3
free: 117
percent: 2.5
localStorage:
enabled: 1
name: Local (Default mountpoint)
storageType: 1
units: GB
max: 2000
allocated: 20
free: 1980
percent: 1
otherStorage: []
network:
total:
ipv4:
free: 470
- hypervisor:
id: 9
name: BHV 4
enabled: true
prohibit: false
accept: false
commissioned: true
resources:
servers:
units: '#'
max: 0
allocated: 0
free: 0
percent: null
memory:
units: MB
max: 13684
allocated: 0
free: 13684
percent: 0
cpuCores:
units: '#'
max: 4
allocated: 0
free: 4
percent: 0
localStorage:
enabled: 1
name: Local (Default mountpoint)
storageType: 0
units: GB
max: 1000
allocated: 0
free: 1000
percent: 0
otherStorage: []
network:
total:
ipv4:
free: 0
- hypervisor:
id: 10
name: BHV 5
enabled: true
prohibit: false
accept: false
commissioned: true
resources:
servers:
units: '#'
max: 0
allocated: 0
free: 0
percent: null
memory:
units: MB
max: 13684
allocated: 0
free: 13684
percent: 0
cpuCores:
units: '#'
max: 4
allocated: 0
free: 4
percent: 0
localStorage:
enabled: 1
name: Local (Default mountpoint)
storageType: 0
units: GB
max: 1000
allocated: 0
free: 1000
percent: 0
otherStorage: []
network:
total:
ipv4:
free: 0
- hypervisor:
id: 11
name: BHV 6
enabled: true
prohibit: false
accept: false
commissioned: true
resources:
servers:
units: '#'
max: 0
allocated: 1
free: -1
percent: null
memory:
units: MB
max: 27913
allocated: 1024
free: 26889
percent: 3.7
cpuCores:
units: '#'
max: 16
allocated: 1
free: 15
percent: 6.3
localStorage:
enabled: 1
name: Local (Default mountpoint)
storageType: 0
units: GB
max: 1000
allocated: 10
free: 990
percent: 1
otherStorage: []
network:
total:
ipv4:
free: 478
- hypervisor:
id: 12
name: BHV 7
enabled: true
prohibit: false
accept: false
commissioned: true
resources:
servers:
units: '#'
max: 0
allocated: 1
free: -1
percent: null
memory:
units: MB
max: 27913
allocated: 1024
free: 26889
percent: 3.7
cpuCores:
units: '#'
max: 16
allocated: 1
free: 15
percent: 6.3
localStorage:
enabled: 1
name: Local (Default mountpoint)
storageType: 0
units: GB
max: 1000
allocated: 10
free: 990
percent: 1
otherStorage: []
network:
total:
ipv4:
free: 478
- hypervisor:
id: 13
name: Ceph Hypervisor 1
enabled: true
prohibit: false
accept: false
commissioned: true
resources:
servers:
units: '#'
max: 0
allocated: 5
free: -5
percent: null
memory:
units: MB
max: 24000
allocated: 7168
free: 16832
percent: 29.9
cpuCores:
units: '#'
max: 64
allocated: 8
free: 56
percent: 12.5
localStorage:
enabled: 1
name: Local (Default mountpoint)
storageType: 1
units: GB
max: 100
allocated: 50
free: 50
percent: 50
otherStorage:
- id: 1
name: Ceph RBD
enabled: 0
path: null
units: GB
storageType: 2
isDatastore: true
max: 10000
allocated: 35
free: 9965
percent: 0.4
- id: 4
name: Ceph FS
enabled: 0
path: null
units: GB
storageType: 2
isDatastore: true
max: 558349385
allocated: 5
free: 558349380
percent: 0
network:
total:
ipv4:
free: 503
- hypervisor:
id: 14
name: Ceph Hypervisor 2
enabled: true
prohibit: false
accept: false
commissioned: true
resources:
servers:
units: '#'
max: 0
allocated: 3
free: -3
percent: null
memory:
units: MB
max: 24000
allocated: 3072
free: 20928
percent: 12.8
cpuCores:
units: '#'
max: 64
allocated: 3
free: 61
percent: 4.7
localStorage:
enabled: 1
name: Local (Default mountpoint)
storageType: 1
units: GB
max: 1000
allocated: 10
free: 990
percent: 1
otherStorage:
- id: 2
name: Ceph RBD
enabled: 0
path: null
units: GB
storageType: 2
isDatastore: true
max: 10000
allocated: 10
free: 9990
percent: 0.1
- id: 3
name: Ceph EC
enabled: 0
path: null
units: GB
storageType: 2
isDatastore: true
max: 13333333
allocated: 10
free: 13333323
percent: 0
network:
total:
ipv4:
free: 33
first_page_url: >-
https://192.168.3.11/api/v1/compute/hypervisors/groups/1/resources?page=1
from: 1
last_page: 1
last_page_url: >-
https://192.168.3.11/api/v1/compute/hypervisors/groups/1/resources?page=1
links:
- url: null
label: '&laquo; Previous'
active: false
- url: >-
https://192.168.3.11/api/v1/compute/hypervisors/groups/1/resources?page=1
label: '1'
active: true
- url: null
label: Next &raquo;
active: false
next_page_url: null
path: >-
https://192.168.3.11/api/v1/compute/hypervisors/groups/1/resources
per_page: 20
prev_page_url: null
to: 11
total: 11
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/firewall/{interface}/disable:
post:
summary: Disable firewall
deprecated: false
description: ''
tags:
- Servers/Network/Firewall
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
- name: interface
in: path
description: primary or secondary.
required: true
example: primary
schema:
type: string
- name: sync
in: query
description: >-
Synchronise and apply the defined rules. true|false Defaults to
false.
required: false
example: 'true'
schema:
type: boolean
responses:
'200':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/firewall/{interface}/enable:
post:
summary: Enable firewall
deprecated: false
description: ''
tags:
- Servers/Network/Firewall
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
- name: interface
in: path
description: primary or secondary.
required: true
example: primary
schema:
type: string
- name: sync
in: query
description: >-
Synchronise and apply the defined rules. true|false Defaults to
false.
required: false
example: 'true'
schema:
type: boolean
responses:
'200':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/firewall/{interface}:
get:
summary: Retrieve firewall
deprecated: false
description: ''
tags:
- Servers/Network/Firewall
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
- name: interface
in: path
description: primary or secondary.
required: true
example: primary
schema:
type: string
- name: sync
in: query
description: >-
Synchronise and apply the defined rules. true|false Defaults to
false.
required: false
example: 'true'
schema:
type: boolean
responses:
'200':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
example: |-
{
"data": {
"enabled": true,
"rules": []
}
}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/firewall/{interface}/rules:
post:
summary: Apply firewall rulesets
deprecated: false
description: ''
tags:
- Servers/Network/Firewall
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
- name: interface
in: path
description: primary or secondary.
required: true
example: primary
schema:
type: string
- name: sync
in: query
description: >-
Synchronise and apply the defined rules. true|false Defaults to
false.
required: false
example: 'true'
schema:
type: boolean
requestBody:
content:
application/json:
schema:
type: object
properties:
rulesets:
type: array
items:
type: integer
description: >-
An array of ruleset IDs. All existing rules will be flushed
and the new rules applied. An empty array will flush all
rules.
required:
- rulesets
example:
rulesets:
- 1
- 2
- 5
responses:
'201':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/traffic/blocks:
post:
summary: Add a traffic block to a server
deprecated: false
description: ''
tags:
- Servers/Network/Traffic
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
month:
type: integer
description: >-
The numeric month as returned by the GET request
(available).
amount:
type: integer
description: An amount of traffic in GB.
required:
- month
- amount
example:
month: 2
amount: 100
responses:
'201':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
get:
summary: Retrieve a servers traffic blocks
deprecated: false
description: ''
tags:
- Servers/Network/Traffic
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
month:
type: integer
description: >-
The numeric month as returned by the GET request
(available).
amount:
type: integer
description: An amount of traffic in GB.
required:
- month
- amount
example: ''
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
assigned:
- id: 2
current: false
month: 2
traffic: 100
start: '2025-02-20 00:00:00'
end: '2025-03-19 23:59:59'
added: '2025-01-20T15:08:15.000000Z'
available:
total: 25
current:
month: 1
start: '2025-01-20 00:00:00'
end: '2025-02-19 23:59:59'
months:
'1':
month: 1
start: '2025-01-20 00:00:00'
end: '2025-02-19 23:59:59'
'2':
month: 2
start: '2025-02-20 00:00:00'
end: '2025-03-19 23:59:59'
'3':
month: 3
start: '2025-03-20 00:00:00'
end: '2025-04-19 23:59:59'
'4':
month: 4
start: '2025-04-20 00:00:00'
end: '2025-05-19 23:59:59'
'5':
month: 5
start: '2025-05-20 00:00:00'
end: '2025-06-19 23:59:59'
'6':
month: 6
start: '2025-06-20 00:00:00'
end: '2025-07-19 23:59:59'
'7':
month: 7
start: '2025-07-20 00:00:00'
end: '2025-08-19 23:59:59'
'8':
month: 8
start: '2025-08-20 00:00:00'
end: '2025-09-19 23:59:59'
'9':
month: 9
start: '2025-09-20 00:00:00'
end: '2025-10-19 23:59:59'
'10':
month: 10
start: '2025-10-20 00:00:00'
end: '2025-11-19 23:59:59'
'11':
month: 11
start: '2025-11-20 00:00:00'
end: '2025-12-19 23:59:59'
'12':
month: 12
start: '2025-12-20 00:00:00'
end: '2026-01-19 23:59:59'
'13':
month: 13
start: '2026-01-20 00:00:00'
end: '2026-02-19 23:59:59'
'14':
month: 14
start: '2026-02-20 00:00:00'
end: '2026-03-19 23:59:59'
'15':
month: 15
start: '2026-03-20 00:00:00'
end: '2026-04-19 23:59:59'
'16':
month: 16
start: '2026-04-20 00:00:00'
end: '2026-05-19 23:59:59'
'17':
month: 17
start: '2026-05-20 00:00:00'
end: '2026-06-19 23:59:59'
'18':
month: 18
start: '2026-06-20 00:00:00'
end: '2026-07-19 23:59:59'
'19':
month: 19
start: '2026-07-20 00:00:00'
end: '2026-08-19 23:59:59'
'20':
month: 20
start: '2026-08-20 00:00:00'
end: '2026-09-19 23:59:59'
'21':
month: 21
start: '2026-09-20 00:00:00'
end: '2026-10-19 23:59:59'
'22':
month: 22
start: '2026-10-20 00:00:00'
end: '2026-11-19 23:59:59'
'23':
month: 23
start: '2026-11-20 00:00:00'
end: '2026-12-19 23:59:59'
'24':
month: 24
start: '2026-12-20 00:00:00'
end: '2027-01-19 23:59:59'
'25':
month: 25
start: '2027-01-20 00:00:00'
end: '2027-02-19 23:59:59'
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/traffic/blocks/{blockId}:
delete:
summary: Remove a traffic block from a server
deprecated: false
description: ''
tags:
- Servers/Network/Traffic
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
- name: blockId
in: path
description: >-
ID of an assigned traffic block as returned by the GET request
(assigned).
required: true
example: '1'
schema:
type: string
requestBody:
content:
application/json:
schema:
type: object
properties:
month:
type: integer
description: >-
The numeric month as returned by the GET request
(available).
amount:
type: integer
description: An amount of traffic in GB.
required:
- month
- amount
example:
month: 2
amount: 100
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/modify/traffic:
put:
summary: Modify primary traffic allowance
deprecated: false
description: ''
tags:
- Servers/Network/Traffic
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
traffic:
type: string
description: Range of 0 - 999999999
required:
- traffic
example:
traffic: 1000
responses:
'201':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/networkWhitelist:
post:
summary: Add an address to the whitelist
deprecated: false
description: ''
tags:
- Servers/Network
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 9
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
interface:
type: string
description: Primary or secondary.
ip:
type: string
description: IPv4 or IPv6 address.
cidr:
type: integer
description: IPv4 or IPv6 CIDR.
required:
- interface
- ip
- cidr
example:
interface: primary
ip: 10.0.0.10
cidr: 32
responses:
'201':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
delete:
summary: Remove an address from the whitelist
deprecated: false
description: ''
tags:
- Servers/Network
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 9
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
interface:
type: string
description: Primary or secondary.
ip:
type: string
description: IPv4 or IPv6 address.
required:
- interface
- ip
example:
interface: primary
ip: 10.0.0.10
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/ipv4Qty:
post:
summary: Add a quantity of IPv4 addresses
deprecated: false
description: ''
tags:
- Servers/Network
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 9
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
interface:
type: string
description: Primary or secondary.
quantity:
type: integer
description: Number of IPv4 addresses.
required:
- interface
- quantity
example:
interface: primary
quantity: 2
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
- 192.168.4.36
- 192.168.4.37
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/ipv4:
post:
summary: Add an array of IPv4 addresses
deprecated: false
description: ''
tags:
- Servers/Network
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 9
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
ip:
type: array
items:
type: string
required:
- ip
example:
ip:
- 10.100.0.10
- 10.100.0.11
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
delete:
summary: Remove an array of IPv4 addresses
deprecated: false
description: ''
tags:
- Servers/Network
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 9
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
ip:
type: array
items:
type: string
description: Valid IPv4 addresses.
description: Valid IPv4 addresses.
required:
- ip
example:
ip:
- 10.100.0.10
- 10.100.0.11
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/power/boot:
post:
summary: Boot a server
deprecated: false
description: ''
tags:
- Servers/Power
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
queueId: 171
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/power/shutdown:
post:
summary: Shutdown a server
deprecated: false
description: ''
tags:
- Servers/Power
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
queueId: 171
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/power/restart:
post:
summary: Restart a server
deprecated: false
description: ''
tags:
- Servers/Power
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
queueId: 171
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/power/poweroff:
post:
summary: Poweroff a server
deprecated: false
description: ''
tags:
- Servers/Power
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
queueId: 171
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}:
get:
summary: Retrieve a server
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 1
schema:
type: integer
- name: remoteState
in: query
description: Return the remote state of the server.
required: false
example: 'false'
schema:
type: boolean
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
id: 69
ownerId: 1
hypervisorId: 6
arch: 1
name: Elliptical Way
selfService: 0
selfServiceSettings: []
hostname: null
commissionStatus: 3
uuid: b9fd9092-7200-4a24-96d4-76aedd664274
state: complete
migratable: true
timezone: _default
migrateLevel: 0
deleteLevel: 0
configLevel: 0
backupLevel: 0
elevated: false
elevateId: null
elevate: false
destroyable: true
rebuild: false
suspended: false
protected: false
buildFailed: false
primaryNetworkDhcp4: false
primaryNetworkDhcp6: false
built: '2025-01-15T15:00:49+00:00'
created: '2024-12-06T21:25:58+00:00'
updated: '2025-01-15T23:17:49+00:00'
traffic:
public:
countMethod: 1
currentPeriod:
start: '2025-01-06T00:00:00.000000Z'
end: '2025-02-05T23:59:59.999999Z'
limit: 20000
settings:
osTemplateInstall: true
osTemplateInstallId: 49
encryptedPassword: >-
eyJpdiI6IkNtT0ZmUEQ4Q2ZuNW5yUWVXZUcvWWc9PSIsInZhbHVlIjoibHJmMTNHZXpqV3lneFUrZEZ3eThSWEZVbVk5TDlBYTJQbXpPbFRvcmd0OD0iLCJtYWMiOiI1NTNhMGVmNzBlZWViZWI3NjkyMmYzYmM3NWFjMDY3ZTlmZmE4ZDE3NDI2YzliMjY0ODM4YzQzMDViMWY3MTI1IiwidGFnIjoiIn0=
backupPlan: null
uefi: false
uefiType: 0
cloudInit: true
cloudInitType: 1
config:
cloud.init:
on.network:
netplan_routes_v4: true
netplan_routes_v6: true
on.network.libvirtrouted:
netplan_routes_v4: true
netplan_routes_v6: true
on.all:
user.data:
runcmd:
- >-
DEBIAN_FRONTEND=noninteractive /usr/bin/apt-get
--option=Dpkg::Options::=--force-confold
--option=Dpkg::options::=--force-unsafe-io
--assume-yes --quiet update
- >-
DEBIAN_FRONTEND=noninteractive /usr/bin/apt-get
--option=Dpkg::Options::=--force-confold
--option=Dpkg::options::=--force-unsafe-io
--assume-yes --quiet install qemu-guest-agent
- /usr/bin/systemctl enable qemu-guest-agent
- /usr/bin/systemctl start qemu-guest-agent
- >-
DEBIAN_FRONTEND=noninteractive /usr/bin/apt-get
--option=Dpkg::Options::=--force-confold
--option=Dpkg::options::=--force-unsafe-io
--assume-yes --quiet dist-upgrade
on.password:
user.data:
runcmd:
- >-
/usr/bin/sed -i "s/#PermitRootLogin
prohibit-password/PermitRootLogin yes/g"
/etc/ssh/sshd_config
- >-
/usr/bin/sed -i "s/PasswordAuthentication
no/PasswordAuthentication yes/g"
/etc/ssh/sshd_config
- /usr/bin/systemctl restart sshd
on.sshkey:
user.data: []
userConfig: []
bootOrder:
- hd
- cdrom
tpmType: 0
networkBoot: false
bootMenu: 1
customISO: 1
securityDriver: 3
memBalloon:
model: 1
autoDeflate: 0
freePageReporting: 0
hyperv:
enabled: false
passthrough: false
relaxed: 0
vapic: 0
spinlocks: 0
vpindex: 0
runtime: 0
synic: 0
stimer: 0
reset: 0
vendorId: 0
frequencies: 0
reenlightenment: 0
tlbflush: 0
ipi: 0
evmcs: 0
vendorIdValue: KVM VM
spinlocksValue: 8191
clockEnabled: 0
extended:
cpuFlags:
topoext: '1'
svm: '1'
vmx: '1'
machineType: inherit
pciPorts: 16
resources:
memory: 1024
storage: 11
traffic: 20000
cpuCores: 2
cpu:
cores: 2
type: inherit
typeExact: host-model
shares: 1024
throttle: 0
topology:
enabled: false
sockets: 1
cores: 1
threads: 1
dies: 1
customXML:
domain:
xml: ''
enabled: false
os:
xml: ''
enabled: false
devices:
xml: ''
enabled: false
features:
xml: ''
enabled: false
clock:
xml: ''
enabled: false
cpuTune:
xml: ''
enabled: false
qemuCommandline: []
qemuAgent:
os:
screen: >-
iVBORw0KGgoAAAANSUhEUgAAAJYAAABTCAAAAABYT6E5AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QA/4ePzL8AAAAHdElNRQfpARESACl1ShbSAAAB0klEQVRo3u3VS2/TQBAA4NlZr9eP+N04DmmKqxZFBQRC6oX/wN9G4s6l0ENFKQQoSVw7deT4xaFpRTkgkNKIivksreWd9e5oVqsFIH+N/UmUrdrrz9//tMaMxK8rSaEgAICGGnAAuGpAv+sy8f3wUYnBttibW2Wz33X9qfayOJhVXvydx8nzYLDMjcfZTrZTdH1tlHXxQbWXx1PhGD23lYVymD7LDHt7st7SKWGlxSguWRvtvq70yWjqST8YnmilCxB9GzdD8zwcnZrClKGZIna81jzMpWE97OfKWH0DArj24shac7VYlJuJNy9qgd4ZDOczYaXmhcLNeXQKgyJBP80VN40mbmp1vixYkMu5lXU/gK1Vjc+PwVwY1dNj++Ndb+u/ga0eAAbXr1UA2E0XA3Z18m4N/3mW/0UkIu4Aoio6jAP05E3EtRGYcJABbjgn5dVRrTpJ6G0t+btIme1e5IbNB2VwVn8qpB4Xvfe6G791TjabFla5Y1iG7etfz3WXMVW1jGU7kBKeMDBs4H1w1c9qteFqMdaqDTZc1AtE1mDVqnUN2HC+NW5FC20/Kctmw0ndQ7fuZ0IIIYQQQgghhBBCCCGEEEIIIYQQQgghhNwTPwDlF4AYGPA7/gAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyNS0wMS0xN1QxODowMDo0MSswMDowMA+ZFQkAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjUtMDEtMTdUMTg6MDA6NDErMDA6MDB+xK21AAAAAElFTkSuQmCC
media:
isoMounted: false
isoType: local
isoName: ''
isoFilename: ''
isoUrl: ''
isoDownload: false
backupPlan:
id: null
name: null
vnc:
ip: 192.168.4.2
port: 5903
enabled: false
network:
interfaces:
- id: 69
order: 1
enabled: true
tag: 4618706442
name: ens3
type: public
driver: 1
processQueues: null
mac: 00:E7:FB:01:87:14
ipv4ToMac: null
ipv6ToMac: null
inTrafficCount: true
outTrafficCount: false
inAverage: 0
inPeak: 0
inBurst: 0
outAverage: 0
outPeak: 0
outBurst: 0
ipFilter: false
vlans: []
ipFilterType: null
portIsolated: false
ipv4_resolver_1: 1
ipv4_resolver_2: 2
ipv6_resolver_1: 1
ipv6_resolver_2: 2
networkProfile: 0
dhcpV4: 0
dhcpV6: 0
firewallEnabled: false
hypervisorNetwork: 6
isNat: false
nat: false
firewall: []
hypervisorConnectivity:
id: 6
type: simpleBridge
bridge: br0
mtu: null
primary: true
default: true
ipWhitelist: []
actions: []
ipv4:
- id: 33
order: 1
enabled: true
blockId: 1
address: 192.168.4.32
gateway: 192.168.4.1
netmask: 255.255.254.0
resolver1: 8.8.8.8
resolver2: 8.8.4.4
rdns: null
mac: null
- id: 36
order: 2
enabled: true
blockId: 1
address: 192.168.4.35
gateway: 192.168.4.1
netmask: 255.255.254.0
resolver1: 8.8.8.8
resolver2: 8.8.4.4
rdns: null
mac: null
ipv6:
- id: 502
block:
id: 5
name: V6 For BHV 1,3
order: 1
enabled: true
addresses: []
addressesDetailed: []
subnet: '2001:db8:abcd:12:2::'
cidr: 80
exhausted: false
gateway: 2001:db8:abcd:12::1
resolver1: 2001:4860:4860::8888
resolver2: 2001:4860:4860::8844
routeNet: false
- id: 505
block:
id: 5
name: V6 For BHV 1,3
order: 1
enabled: true
addresses: []
addressesDetailed: []
subnet: '2001:db8:abcd:12:5::'
cidr: 80
exhausted: false
gateway: 2001:db8:abcd:12::1
resolver1: 2001:4860:4860::8888
resolver2: 2001:4860:4860::8844
routeNet: false
- id: 506
block:
id: 5
name: V6 For BHV 1,3
order: 1
enabled: true
addresses: []
addressesDetailed: []
subnet: '2001:db8:abcd:12:6::'
cidr: 80
exhausted: false
gateway: 2001:db8:abcd:12::1
resolver1: 2001:4860:4860::8888
resolver2: 2001:4860:4860::8844
routeNet: false
- id: 507
block:
id: 5
name: V6 For BHV 1,3
order: 1
enabled: true
addresses: []
addressesDetailed: []
subnet: '2001:db8:abcd:12:7::'
cidr: 80
exhausted: false
gateway: 2001:db8:abcd:12::1
resolver1: 2001:4860:4860::8888
resolver2: 2001:4860:4860::8844
routeNet: false
- id: 508
block:
id: 5
name: V6 For BHV 1,3
order: 1
enabled: true
addresses: []
addressesDetailed: []
subnet: '2001:db8:abcd:12:8::'
cidr: 80
exhausted: false
gateway: 2001:db8:abcd:12::1
resolver1: 2001:4860:4860::8888
resolver2: 2001:4860:4860::8844
routeNet: false
- id: 509
block:
id: 5
name: V6 For BHV 1,3
order: 1
enabled: true
addresses: []
addressesDetailed: []
subnet: '2001:db8:abcd:12:9::'
cidr: 80
exhausted: false
gateway: 2001:db8:abcd:12::1
resolver1: 2001:4860:4860::8888
resolver2: 2001:4860:4860::8844
routeNet: false
secondaryInterfaces:
- id: 4
enabled: true
order: 1
tag: 3933491695
name: eth1
type: private
driver: 1
processQueues: null
mac: 00:F0:4A:C6:3F:08
ipv4ToMac: null
ipv6ToMac: null
inTrafficCount: true
outTrafficCount: false
inAverage: 0
inPeak: 0
inBurst: 0
outAverage: 0
outPeak: 0
outBurst: 0
ipFilter: true
vlans: []
ipFilterType: 4-6
portIsolated: false
ipv4_resolver_1: 1
ipv4_resolver_2: 2
ipv6_resolver_1: 1
ipv6_resolver_2: 2
networkProfile: 0
dhcpV4: 0
dhcpV6: 0
firewallEnabled: false
hypervisorNetwork: 6
isNat: false
nat: false
firewall: []
hypervisorConnectivity:
id: 6
type: simpleBridge
bridge: br0
mtu: null
primary: true
default: true
ipWhitelist: []
actions: []
ipv4:
- id: 34
order: 1
enabled: true
address: 192.168.4.33
gateway: 192.168.4.1
netmask: 255.255.254.0
resolver1: 8.8.8.8
resolver2: 8.8.4.4
rdns: null
mac: null
- id: 35
order: 2
enabled: true
address: 192.168.4.34
gateway: 192.168.4.1
netmask: 255.255.254.0
resolver1: 8.8.8.8
resolver2: 8.8.4.4
rdns: null
mac: null
ipv6:
- id: 503
block:
id: 5
name: V6 For BHV 1,3
order: 1
enabled: true
addresses: []
addressesDetailed: []
subnet: '2001:db8:abcd:12:3::'
cidr: 80
exhausted: false
gateway: 2001:db8:abcd:12::1
resolver1: 2001:4860:4860::8888
resolver2: 2001:4860:4860::8844
routeNet: false
- id: 504
block:
id: 5
name: V6 For BHV 1,3
order: 1
enabled: true
addresses: []
addressesDetailed: []
subnet: '2001:db8:abcd:12:4::'
cidr: 80
exhausted: false
gateway: 2001:db8:abcd:12::1
resolver1: 2001:4860:4860::8888
resolver2: 2001:4860:4860::8844
routeNet: false
storage:
- _id: 80
id: 1
cache: null
bus: null
capacity: 11
drive: a
datastoreDiskId: null
filesystem: null
iops:
read: null
write: null
bytes:
read: null
write: null
type: qcow2
profile: 1
status: 3
enabled: true
primary: true
created: '2024-12-06T21:25:58+00:00'
updated: '2025-01-07T22:26:16+00:00'
datastore: []
name: b9fd9092-7200-4a24-96d4-76aedd664274_1
filename: b9fd9092-7200-4a24-96d4-76aedd664274_1.img
hypervisorStorageId: null
local: true
locationType: mountpoint
path: /home/vf-data/disk
hypervisorAssets: []
hypervisor:
id: 6
ip: 192.168.4.2
hostname: null
port: 8892
maintenance: false
groupId: 2
group:
name: Test
icon: null
timezone: Europe/London
forceIPv6: false
vncListenType: 1
displayName: null
cpuSet: null
nfType: 4
backupStorageType: 2
defaultDiskType: inherit
defaultDiskCacheType: inherit
defaultCPU: inherit
defaultMachineType: inherit
created: '2024-03-30T09:53:38+00:00'
updated: '2024-12-06T21:25:54+00:00'
name: BHV 1
dataDir: /home/vf-data
resources:
servers:
units: '#'
max: 0
allocated: 5
free: -5
percent: null
memory:
units: MB
max: 29419
allocated: 7168
free: 22251
percent: 24.4
cpuCores:
units: '#'
max: 128
allocated: 6
free: 122
percent: 4.7
localStorage:
enabled: 1
name: Local (Default mountpoint)
storageType: 1
units: GB
max: 1000
allocated: 141
free: 859
percent: 14.1
otherStorage: []
owner:
id: 1
admin: true
extRelationId: null
name: Jon Doe
email: jon@doe.com
timezone: Europe/London
suspended: false
twoFactorAuth: false
created: '2024-03-12T22:22:09+00:00'
updated: '2025-01-15T11:01:18+00:00'
sshKeys:
- id: 1
ownerId: 1
type: OpenSSH
name: Test Key
public: >-
ssh-rsa
AAAAB3NzaC1yc2EAAAADAQABAAACAQC+JdL4fWELBWGAknSu0PwVpDDOlORxy9z7eVnZphZXBzYLMnux+ZogVLns6+O6NDE8JmWvP9RIg3SIga7RDOkW9UCdLzRu0jF2ALL7CK1huo1Ih0PDM9ZbFDy2Fd7a4DTvUX6923fQyW0PWRtyL11R4c9NUqzejKp5kW8vHfPQjzwb1hGIKvkSYkI0Auq4JJhlvjjnoK7Z8t5mpDrVfNTrVqevPgsW5Xwnq8R+02XywrY+Q/wnpxDs4Ujb2aA61A0x5J0xcZQpTQHoJNj77J3VmPI7Ry7Q8hPbTSLGZbN+gODr0lOaL5TdbvM3bnus5JvoqgRoszzPcTiNMZAe3v9UM8hiXise54b8rsc2M9MQ4olPu7TrROZbcw+9q4m6cV+dfVU/NRFkf27YRa4oZNKehHsMiupDyoISgSl4qSB8YXAWsX03oC/gzpB2YJIqEL1Y/SmKYEhgr0cplkvGZy6C/Q9cJHyHlMPtEBPexgcjXC9QrDZ4n2cmde3TuSRMctawcat7Nuq08C8fGHaGHr8iAeage3o/ODVOt0rhBu69PknzQeVBdlwK3+p1dH6PnMzNNBhWyNZT/NqB2eS6K8lYpOQ47byXPwYsRLvStUjpZRdikOT7D31T5g8FwOThQ+6WX+xfMD7CSLsSKCn/FhlinbVbG2IhCLH3B30Akw5bUw==
enabled: true
created: '2024-03-13T20:28:32+00:00'
sharedUsers: []
tasks:
active: false
lastOn: '2025-01-15 15:00:49'
actions:
pending: []
remoteState: false
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
delete:
summary: Delete a server
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 9
schema:
type: integer
- name: delay
in: query
description: >-
How many minutes the system should wait before deleting the server.
(0-43800)
required: false
example: 5
schema:
type: integer
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/backups/plan/{planId}:
put:
summary: Add, remove or modify a backup plan
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 9
schema:
type: integer
- name: planId
in: path
description: >-
A valid backup plan ID as shown in VirtFusion. A value of 0 (zero)
will remove the plan.
required: true
example: 0
schema:
type: integer
responses:
'201':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/build:
post:
summary: Build a server
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 9
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
operatingSystemId:
type: integer
description: A valid operating system template ID.
name:
type: string
description: Server name.
hostname:
type: string
description: Server Hostname.
sshKeys:
type: array
items:
type: integer
description: An array of SSH keys.
vnc:
type: boolean
description: Enable/disable.
ipv6:
type: boolean
description: Enable/disable.
email:
type: boolean
description: Enable/disable.
swap:
type: number
description: Values of 256, 512, 768, 1, 1.5, 2, 3, 4, 5,6 8
required:
- operatingSystemId
example:
operatingSystemId: 1
name: server 1
hostname: server1.domain.com
sshKeys:
- 1
- 2
- 3
- 4
vnc: false
ipv6: false
swap: 512
email: true
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
id: 9
ownerId: 3
hypervisorId: 6
arch: 1
name: server 1
selfService: 0
selfServiceSettings: []
hostname: server1.domain.com
commissionStatus: 1
uuid: 5de5a89b-b707-41bf-a051-7af1a4e67795
state: queued
migratable: true
timezone: _default
migrateLevel: 0
deleteLevel: 0
configLevel: 1
backupLevel: 0
elevated: false
elevateId: null
elevate: false
destroyable: true
rebuild: false
suspended: false
protected: false
buildFailed: false
primaryNetworkDhcp4: false
primaryNetworkDhcp6: false
built: '2024-11-29T19:32:17+00:00'
created: '2024-04-11T17:22:19+00:00'
updated: '2025-01-20T13:32:44+00:00'
traffic:
public:
countMethod: 1
currentPeriod:
start: '2025-01-11T00:00:00.000000Z'
end: '2025-02-10T23:59:59.999999Z'
limit: 200
settings:
osTemplateInstall: true
osTemplateInstallId: 1
encryptedPassword: >-
eyJpdiI6IjVsdWVBMzNNWnVXZzlYMjhlTUMzSXc9PSIsInZhbHVlIjoiT2E3SDNmVTVCOW1GK1RCd0h6YjZwZnIva1ZHbU9rQU1VL1hsQSthcUVRYz0iLCJtYWMiOiIzMzdmNjkxOTcwMjkxYmM2ZmNlMjgyMzdkMTQzMDY2OWY1ZTBlYjExYzA1MjdjMzZmMTU1ZTVlMGFiMWY2ZmJlIiwidGFnIjoiIn0=
backupPlan: null
uefi: false
uefiType: 0
cloudInit: true
cloudInitType: 1
config:
cloud.init:
on.all:
user.data:
runcmd:
- >-
DEBIAN_FRONTEND=noninteractive /usr/bin/apt-get
--option=Dpkg::Options::=--force-confold
--option=Dpkg::options::=--force-unsafe-io
--assume-yes --quiet update
- >-
DEBIAN_FRONTEND=noninteractive /usr/bin/apt-get
--option=Dpkg::Options::=--force-confold
--option=Dpkg::options::=--force-unsafe-io
--assume-yes --quiet dist-upgrade
on.password:
user.data: []
on.sshkey:
user.data: []
on.allpre:
user.data: []
on.allpost:
user.data: []
on.network: []
on.network.libvirtrouted: []
userConfig: []
bootOrder:
- hd
- cdrom
tpmType: 0
networkBoot: false
bootMenu: 1
customISO: 1
securityDriver: 3
memBalloon:
model: 1
autoDeflate: 0
freePageReporting: 0
hyperv:
enabled: false
passthrough: false
relaxed: 0
vapic: 0
spinlocks: 0
vpindex: 0
runtime: 0
synic: 0
stimer: 0
reset: 0
vendorId: 0
frequencies: 0
reenlightenment: 0
tlbflush: 0
ipi: 0
evmcs: 0
vendorIdValue: KVM VM
spinlocksValue: 8191
clockEnabled: 0
extended:
cpuFlags:
topoext: '1'
svm: '1'
vmx: '1'
machineType: inherit
pciPorts: 16
resources:
memory: 2048
storage: 10
traffic: 200
cpuCores: 1
decryptedPassword: uv1dmfUUaENhNpbrGUwD
cpu:
cores: 1
type: inherit
typeExact: host-model
shares: 1024
throttle: 0
topology:
enabled: false
sockets: 1
cores: 1
threads: 1
dies: 1
customXML:
domain:
xml: ''
enabled: false
os:
xml: ''
enabled: false
devices:
xml: ''
enabled: false
features:
xml: ''
enabled: false
clock:
xml: ''
enabled: false
cpuTune:
xml: ''
enabled: false
qemuCommandline: []
qemuAgent:
os:
screen: >-
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
media:
isoMounted: false
isoType: local
isoName: ''
isoFilename: ''
isoUrl: ''
isoDownload: false
backupPlan:
id: null
name: null
vnc:
ip: 192.168.4.2
port: 5901
enabled: false
network:
interfaces:
- id: 9
order: 1
enabled: true
tag: 4238114467
name: eth0
type: public
driver: 1
processQueues: null
mac: 00:C3:BA:23:37:B3
ipv4ToMac: null
ipv6ToMac: null
inTrafficCount: true
outTrafficCount: false
inAverage: 0
inPeak: 0
inBurst: 0
outAverage: 0
outPeak: 0
outBurst: 0
ipFilter: true
vlans: []
ipFilterType: '4'
portIsolated: false
ipv4_resolver_1: 1
ipv4_resolver_2: 2
ipv6_resolver_1: 1
ipv6_resolver_2: 2
networkProfile: 0
dhcpV4: 0
dhcpV6: 0
firewallEnabled: false
hypervisorNetwork: 6
isNat: false
nat: false
firewall: []
hypervisorConnectivity:
id: 6
type: simpleBridge
bridge: br0
mtu: null
primary: true
default: true
ipWhitelist:
- id: 1
type: 4
ip: 100.100.100.100
mask: 32
- id: 2
type: 4
ip: 10.0.0.10
mask: 32
actions: []
ipv4:
- id: 22
order: 1
enabled: true
blockId: 1
address: 192.168.4.21
gateway: 192.168.4.1
netmask: 255.255.254.0
resolver1: 8.8.8.8
resolver2: 8.8.4.4
rdns: null
mac: null
- id: 37
order: 2
enabled: true
blockId: 1
address: 192.168.4.36
gateway: 192.168.4.1
netmask: 255.255.254.0
resolver1: 8.8.8.8
resolver2: 8.8.4.4
rdns: null
mac: null
- id: 38
order: 3
enabled: true
blockId: 1
address: 192.168.4.37
gateway: 192.168.4.1
netmask: 255.255.254.0
resolver1: 8.8.8.8
resolver2: 8.8.4.4
rdns: null
mac: null
ipv6: []
secondaryInterfaces: []
storage:
- _id: 11
id: 1
cache: null
bus: null
capacity: 10
drive: a
datastoreDiskId: null
filesystem: null
iops:
read: null
write: null
bytes:
read: null
write: null
type: qcow2
profile: 0
status: 3
enabled: true
primary: true
created: '2024-04-11T17:22:19+00:00'
updated: '2024-04-11T17:22:19+00:00'
datastore: []
name: 5de5a89b-b707-41bf-a051-7af1a4e67795_1
filename: 5de5a89b-b707-41bf-a051-7af1a4e67795_1.img
hypervisorStorageId: null
local: true
locationType: mountpoint
path: /home/vf-data/disk
hypervisorAssets: []
hypervisor:
id: 6
ip: 192.168.4.2
hostname: null
port: 8892
maintenance: false
groupId: 2
group:
name: Test
icon: null
timezone: Europe/London
forceIPv6: false
vncListenType: 1
displayName: null
cpuSet: null
nfType: 4
backupStorageType: 2
defaultDiskType: inherit
defaultDiskCacheType: inherit
defaultCPU: inherit
defaultMachineType: inherit
created: '2024-03-30T09:53:38+00:00'
updated: '2024-12-06T21:25:54+00:00'
name: BHV 1
dataDir: /home/vf-data
resources:
servers:
units: '#'
max: 0
allocated: 5
free: -5
percent: null
memory:
units: MB
max: 29419
allocated: 7168
free: 22251
percent: 24.4
cpuCores:
units: '#'
max: 128
allocated: 6
free: 122
percent: 4.7
localStorage:
enabled: 1
name: Local (Default mountpoint)
storageType: 1
units: GB
max: 1000
allocated: 141
free: 859
percent: 14.1
otherStorage: []
owner:
id: 3
admin: false
extRelationId: 1
name: jon Doe
email: jon@doe.com
timezone: Europe/London
suspended: false
twoFactorAuth: false
created: '2025-01-20T12:48:20+00:00'
updated: '2025-01-20T13:00:38+00:00'
sshKeys: []
sharedUsers: []
tasks:
active: true
lastOn: '2024-11-29 19:32:17'
actions:
pending: []
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/package/{packageId}:
put:
summary: Change a server package
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 9
schema:
type: integer
- name: packageId
in: path
description: A valid package ID as shown in VirtFusion.
required: true
example: 1
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
backupPlan:
type: boolean
cpu:
type: boolean
memory:
type: boolean
primaryDiskReadIOPS:
type: boolean
primaryDiskReadThroughput:
type: boolean
primaryDiskSize:
type: boolean
primaryDiskWriteIOPS:
type: boolean
primaryDiskWriteThroughput:
type: boolean
primaryNetworkInboundSpeed:
type: boolean
primaryNetworkOutboundSpeed:
type: boolean
primaryNetworkTraffic:
type: boolean
example:
backupPlan: true
cpu: true
memory: true
primaryDiskReadIOPS: false
primaryDiskReadThroughput: false
primaryDiskSize: true
primaryDiskWriteIOPS: true
primaryDiskWriteThroughput: true
primaryNetworkInboundSpeed: true
primaryNetworkOutboundSpeed: true
primaryNetworkTraffic: true
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
info:
- CPU cores not updated. It matches the current value
- >-
primary disk not updated. It either matches or is lower than
the current value
- traffic not updated. It matches the current value
- >-
primary network speed inbound not updated. It matches the
current value
- >-
primary network speed outbound not updated. It matches the
current value
- write IOPS not updated. It matches the current value
- write bytes/sec not updated. It matches the current value
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers:
post:
summary: Create a server
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: dryRun
in: query
description: >-
Test to see if a server can be created without actual creation.
true|false Defaults to false.
required: false
example: 'false'
schema:
type: boolean
requestBody:
content:
application/json:
schema:
type: object
properties:
packageId:
type: integer
description: A valid package ID.
userId:
type: integer
description: A valid user ID.
hypervisorId:
type: integer
description: A valid hypervisor group ID.
ipv4:
type: integer
description: Number of IPv4 addresses.
storage:
type: integer
description: Number of GB primary storage.
traffic:
type: integer
description: Number of GB traffic (0=unlimited).
memory:
type: integer
description: Number of MB memory.
cpuCores:
type: integer
description: Number of CPU cores.
networkSpeedInbound:
type: integer
description: Inbound network speed (kB/s).
networkSpeedOutbound:
type: integer
description: Outbound network speed (kB/s).
storageProfile:
type: integer
description: Storage profile ID.
networkProfile:
type: integer
description: Network profile ID.
firewallRulesets:
type: array
items:
type: integer
description: >-
Array of firewall rulesets. This will override package
settings. A value of -1 will force no rulesets to be
applied.
hypervisorAssetGroups:
type: array
items:
type: integer
description: >-
Array of hypervisor asset groups. This will override package
settings. A value of -1 will force no groups to be applied.
additionalStorage1Enable:
type: boolean
description: Enable/disable additional storage 1.
additionalStorage2Enable:
type: boolean
description: Enable/disable additional storage 2.
additionalStorage1Profile:
type: integer
description: Additional storage 1 profile ID.
additionalStorage2Profile:
type: integer
description: Additional storage 2 profile ID.
additionalStorage1Capacity:
type: integer
description: Number of GB additional storage 1 capacity.
additionalStorage2Capacity:
type: integer
description: Number of GB additional storage 2 capacity.
required:
- packageId
- userId
- hypervisorId
example:
packageId: 1
userId: 1
hypervisorId: 1
ipv4: 1
storage: 20
traffic: 20
memory: 512
cpuCores: 5
networkSpeedInbound: 200
networkSpeedOutbound: 400
storageProfile: 1
networkProfile: 1
firewallRulesets:
- 1
- 2
hypervisorAssetGroups:
- 3
- 4
additionalStorage1Enable: true
additionalStorage2Enable: false
additionalStorage1Profile: 1
additionalStorage2Profile: 2
additionalStorage1Capacity: 10
additionalStorage2Capacity: 20
responses:
'201':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
id: 70
ownerId: 1
hypervisorId: 14
arch: 1
name: ''
selfService: 0
selfServiceSettings: []
hostname: null
commissionStatus: 0
uuid: ab68e20a-211f-4b90-99f1-8ee9068c81de
state: allocated
migratable: true
timezone: _default
migrateLevel: 0
deleteLevel: 0
configLevel: 0
backupLevel: 0
elevated: false
elevateId: null
elevate: false
destroyable: true
rebuild: false
suspended: false
protected: false
buildFailed: false
primaryNetworkDhcp4: false
primaryNetworkDhcp6: false
built: null
created: '2025-01-20T14:00:47+00:00'
updated: '2025-01-20T14:00:47+00:00'
traffic:
public:
countMethod: 1
currentPeriod:
start: '2025-01-20T00:00:00.000000Z'
end: '2025-02-19T23:59:59.999999Z'
limit: 20
settings:
osTemplateInstall: true
osTemplateInstallId: 0
encryptedPassword: >-
eyJpdiI6IkF5L05USXR3OGRNMm80NVFpMXhaVnc9PSIsInZhbHVlIjoiZ0JtclcxSFhoeEdEOGJPa1J6cTVteTllOTh5YU1xM3ViUGphSS9qUTFPMD0iLCJtYWMiOiI3MWFmYzhkY2Y4ZTkxNmNjZWFhZDgzMjZlMjIwZGFhYTg2YTU2OThmYzdjN2MwYzZjNzZhNDBmZTE2MDY4MTc5IiwidGFnIjoiIn0=
backupPlan: null
uefi: false
uefiType: 0
cloudInit: true
cloudInitType: 1
config: []
userConfig: []
bootOrder:
- hd
- cdrom
tpmType: 0
networkBoot: false
bootMenu: 1
customISO: 1
securityDriver: 3
memBalloon:
model: 1
autoDeflate: 0
freePageReporting: 0
hyperv:
enabled: false
passthrough: false
relaxed: 0
vapic: 0
spinlocks: 0
vpindex: 0
runtime: 0
synic: 0
stimer: 0
reset: 0
vendorId: 0
frequencies: 0
reenlightenment: 0
tlbflush: 0
ipi: 0
evmcs: 0
vendorIdValue: WIN KVM
spinlocksValue: 8191
clockEnabled: 0
extended:
cpuFlags:
topoext: '1'
svm: '1'
vmx: '1'
machineType: inherit
pciPorts: 16
resources:
memory: 512
storage: 20
traffic: 20
cpuCores: 5
cpu:
cores: 5
type: inherit
typeExact: host-model
shares: 1024
throttle: 0
topology:
enabled: false
sockets: 1
cores: 5
threads: 1
dies: 1
customXML:
domain:
xml: ''
enabled: false
os:
xml: ''
enabled: false
devices:
xml: ''
enabled: false
features:
xml: ''
enabled: false
clock:
xml: ''
enabled: false
cpuTune:
xml: ''
enabled: false
qemuCommandline: []
qemuAgent:
os:
screen: >-
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UPvQ+TVr1rhVq1alv6JrF52j48RM7IpCL/bqGo961KOyy8i3sikf5E9dV0HHyIfrr79+tq1zeklX17AyoIuojKisWPDznS9Do6Ojmc0rV650Dz/8sJ3GsiIC1KArAutfdvfdd3d//etf3b///W+3bNky96tf/cr985//dMuXL3fvfve70z86/3itz5gxw33pS19yt912W/r79a9/7S688EJ33333uauvvtq94Q1vyJ/i3vrWt6bxOubee+918+fPbztmt912y+J/8pOftMUtWLDAXXfddel5F1xwgfvFL36R3gxk88knn5zeVNpOSDYmYuNf/vKXNA3Zd/jhh+cv2bb9tre9LbNXeer022abbdrO9TduuOGGtc6VMElglL/vfOc7btNNN/VPSVkUpSeBe+ihh9zNN9/svvrVr7Zx6cXe5z//+W02vf3tb29L3zYuuuii7DiVhw984APZ9llnnZUe1ku6T3/607Pzlb8XvOAFlpR77GMfm/KwfP/rX//Kbvg6SDZa3N/+9rfsPFaqI4BAV8c2vfIHP/hBd+6557oddtjBDQ+345bAnXrqqcl3P9q/zLTddts5/QEccMABac3UN1E1QYmRzvn+97/vVKspCqppffazn12r5mjHPuEJT7BVd8ghh7ilS5e6LbfcMttnK6rBHXHEEc7EwPZP1EY9PaiWrp/VBO2adSxVY1y4cKG79NJL3ZOe9KSuTJDdc+bMcW9+85vTm+bGG2/c1Xn+Qddff7275557sl2ve93rsnVb0ZOMb9M//vEPi0qXvg/bIjps3H333U61Xws777yzrbo99tgjW9eK8unH++u6wRKqJ9CuGNWn16gUnv3sZ7vFixdnwqxHcNWk1XTgh9e+9rXuuc99brpLgisxnDt3bnaIanuqPetc/3F07733Tmvg2YG5Ff1BLVq0KLd37c33vOc9mZDrkflPf/qT+8Mf/tD2+L/nnns6PQko9NPGta0p3qPmiEsuuaTw9/Of/9zdcsstxSfm9oq9xPiaa65pa1KYNWuWKxJJna4as9LWTfOKK65oa0pR09NLX/rSXCouZTeevaq5W3jOc56T1mBtW0vdOCyo7HzjG9+wzdJlN5zkXwu77LKLra4l0IpQTd+Cf+xvf/tb282yQgIIdIVwP/GJT2TCJ5F9+ctfnjY7PO5xj3Ovec1r2lL+6Ec/mm6/6U1v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
media:
isoMounted: false
isoType: local
isoName: ''
isoFilename: ''
isoUrl: ''
isoDownload: false
backupPlan:
id: null
name: null
vnc:
ip: 192.168.30.6
port: 5904
enabled: false
network:
interfaces:
- id: 70
order: 1
enabled: true
tag: 6927490480
name: eth0
type: public
driver: null
processQueues: null
mac: 00:BA:76:AB:DF:4E
ipv4ToMac: null
ipv6ToMac: null
inTrafficCount: true
outTrafficCount: false
inAverage: 200
inPeak: 0
inBurst: 0
outAverage: 400
outPeak: 0
outBurst: 0
ipFilter: true
vlans: []
ipFilterType: '4'
portIsolated: false
ipv4_resolver_1: 1
ipv4_resolver_2: 2
ipv6_resolver_1: 1
ipv6_resolver_2: 2
networkProfile: 0
dhcpV4: 0
dhcpV6: 0
firewallEnabled: false
hypervisorNetwork: 14
isNat: false
nat: false
firewall: []
hypervisorConnectivity:
id: 14
type: simpleBridge
bridge: br0
mtu: null
primary: true
default: true
ipWhitelist: []
actions: []
ipv4:
- id: 520
order: 1
enabled: true
blockId: 3
address: 192.168.30.207
gateway: 192.168.30.1
netmask: 255.255.255.0
resolver1: 8.8.8.8
resolver2: 8.8.4.4
rdns: null
mac: null
ipv6: []
secondaryInterfaces: []
storage:
- _id: 81
id: 1
cache: null
bus: null
capacity: 20
drive: a
datastoreDiskId: null
filesystem: null
iops:
read: null
write: null
bytes:
read: null
write: null
type: qcow2
profile: 1
status: 3
enabled: true
primary: true
created: '2025-01-20T14:00:47+00:00'
updated: '2025-01-20T14:00:47+00:00'
datastore: []
name: ab68e20a-211f-4b90-99f1-8ee9068c81de_1
filename: ab68e20a-211f-4b90-99f1-8ee9068c81de_1.img
hypervisorStorageId: null
local: true
locationType: mountpoint
path: /home/vf-data/disk
- _id: 82
id: 2
cache: null
bus: null
capacity: 10
drive: b
datastoreDiskId: null
filesystem: null
iops:
read: null
write: null
bytes:
read: null
write: null
type: qcow2
profile: 0
status: 1
enabled: false
primary: false
created: '2025-01-20T14:00:47+00:00'
updated: '2025-01-20T14:00:47+00:00'
datastore: []
name: ab68e20a-211f-4b90-99f1-8ee9068c81de_2
filename: ab68e20a-211f-4b90-99f1-8ee9068c81de_2.img
hypervisorStorageId: null
local: true
locationType: mountpoint
path: /home/vf-data/disk
hypervisorAssets: []
hypervisor:
id: 14
ip: 192.168.30.6
hostname: null
port: 8892
maintenance: false
groupId: 1
group:
name: Default
icon: null
timezone: Europe/London
forceIPv6: false
vncListenType: 1
displayName: null
cpuSet: null
nfType: 4
backupStorageType: 2
defaultDiskType: inherit
defaultDiskCacheType: inherit
defaultCPU: inherit
defaultMachineType: inherit
created: '2024-05-14T11:19:04+00:00'
updated: '2024-06-28T21:22:01+00:00'
name: Ceph Hypervisor 2
dataDir: /home/vf-data
resources:
servers:
units: '#'
max: 0
allocated: 4
free: -4
percent: null
memory:
units: MB
max: 24000
allocated: 3584
free: 20416
percent: 14.9
cpuCores:
units: '#'
max: 64
allocated: 8
free: 56
percent: 12.5
localStorage:
enabled: 1
name: Local (Default mountpoint)
storageType: 1
units: GB
max: 1000
allocated: 40
free: 960
percent: 4
otherStorage:
- id: 2
name: Ceph RBD
enabled: 0
path: null
units: GB
storageType: 2
isDatastore: true
max: 10000
allocated: 10
free: 9990
percent: 0.1
- id: 3
name: Ceph EC
enabled: 0
path: null
units: GB
storageType: 2
isDatastore: true
max: 13333333
allocated: 10
free: 13333323
percent: 0
owner:
id: 1
admin: true
extRelationId: null
name: Jon Doe
email: jon@doe.com
timezone: Europe/London
suspended: false
twoFactorAuth: false
created: '2024-03-12T22:22:09+00:00'
updated: '2025-01-15T11:01:18+00:00'
sshKeys: []
sharedUsers: []
tasks:
active: false
lastOn: null
actions:
pending:
- id: 19
action: Create HDD (sdb)
requires:
- boot
- restart
- shutdown
- poweroff
collected: false
complete: false
failed: false
payload:
disk:
id: 82
disk_storage_id: null
created: '2025-01-20T14:00:47+00:00'
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
'422':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
errors:
- Invalid or disabled firewall ruleset
headers: {}
security:
- bearer: []
get:
summary: Retrieve servers
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: type
in: query
description: simple or full. Defaults to simple.
required: false
example: simple
schema:
type: string
- name: results
in: query
description: >-
Number of results to return. Range between 1 and 200. Defaults to
20.
required: false
example: 20
schema:
type: integer
- name: hypervisorId
in: query
description: >-
Filter by hypervisor ID. Specify multiple with
hypervisorId[]=1&hypervisorId[]=2 etc...
required: false
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
current_page: 1
data:
- id: 5
uuid: 1fb4b391-b360-40e7-8fe1-5b024c7508ac
name: Avaricious Trade
commissioned: 3
owner: 1
hypervisorId: 7
suspended: false
protected: false
updated: '2024-04-02T10:15:10+00:00'
created: '2024-03-30T14:41:27+00:00'
- id: 8
uuid: 82c37680-bf8f-4712-854f-31428933703f
name: PDNS
commissioned: 3
owner: 1
hypervisorId: 3
suspended: false
protected: false
updated: '2024-04-13T22:02:04+00:00'
created: '2024-04-09T11:33:43+00:00'
- id: 9
uuid: 5de5a89b-b707-41bf-a051-7af1a4e67795
name: server 1
commissioned: 2
owner: 3
hypervisorId: 6
suspended: false
protected: false
updated: '2025-01-20T14:13:50+00:00'
created: '2024-04-11T17:22:19+00:00'
- id: 10
uuid: 71178184-7554-406f-80b8-0c1d7ffcfd49
name: Respectful Exit
commissioned: 3
owner: 1
hypervisorId: 6
suspended: false
protected: false
updated: '2024-05-13T08:16:00+00:00'
created: '2024-04-23T11:50:58+00:00'
- id: 11
uuid: ffed8ddb-c758-41ff-8380-abb1377dfb38
name: Ubuntu Test
commissioned: 0
owner: 1
hypervisorId: 7
suspended: false
protected: false
updated: '2024-05-02T18:33:20+00:00'
created: '2024-04-25T20:18:57+00:00'
- id: 19
uuid: c77ce40f-0226-43ca-b000-c9b7fe143dc7
name: Metallic National
commissioned: 3
owner: 1
hypervisorId: 2
suspended: false
protected: false
updated: '2024-05-02T18:34:27+00:00'
created: '2024-05-02T10:36:37+00:00'
- id: 20
uuid: 785aaddd-b08b-448b-9486-baf29cd3c0f8
name: Rubbery Daughter
commissioned: 3
owner: 1
hypervisorId: 7
suspended: false
protected: false
updated: '2024-10-07T21:32:34+00:00'
created: '2024-05-03T10:05:41+00:00'
- id: 22
uuid: 5a7e3d49-0fdf-4cfa-bb14-864f3ca0e79a
name: Frightening Clock
commissioned: 3
owner: 1
hypervisorId: 7
suspended: false
protected: false
updated: '2024-06-08T08:30:15+00:00'
created: '2024-05-03T10:35:36+00:00'
- id: 23
uuid: b1f6efb6-22a1-4d0a-b043-17d0ccfce4b2
name: Backup Test
commissioned: 3
owner: 1
hypervisorId: 6
suspended: false
protected: false
updated: '2024-05-14T15:29:37+00:00'
created: '2024-05-04T07:30:10+00:00'
- id: 26
uuid: 5c681c72-6828-4fa3-8011-ced2502384e6
name: Ceph Test 1
commissioned: 3
owner: 1
hypervisorId: 13
suspended: false
protected: false
updated: '2024-05-14T11:42:08+00:00'
created: '2024-05-14T10:57:56+00:00'
- id: 27
uuid: 8cb75e06-caae-47f5-9bf2-3ea1d341d10e
name: OVS BHV 6
commissioned: 3
owner: 1
hypervisorId: 11
suspended: false
protected: false
updated: '2024-05-17T13:25:10+00:00'
created: '2024-05-16T16:56:12+00:00'
- id: 28
uuid: 3a63170a-2350-422d-8cfb-449ed6940414
name: OVS BHV 7
commissioned: 3
owner: 1
hypervisorId: 12
suspended: false
protected: false
updated: '2024-05-17T13:25:04+00:00'
created: '2024-05-16T18:13:44+00:00'
- id: 29
uuid: f24aebac-016c-4139-afcf-5dbfeda54fc8
name: OVS BHV 1
commissioned: 3
owner: 1
hypervisorId: 6
suspended: false
protected: false
updated: '2024-05-17T13:25:00+00:00'
created: '2024-05-17T11:25:13+00:00'
- id: 30
uuid: 67486d4d-d974-45c3-a680-980bc84635d8
name: Test 10
commissioned: 3
owner: 1
hypervisorId: 1
suspended: false
protected: false
updated: '2024-06-07T16:41:45+00:00'
created: '2024-06-07T12:03:00+00:00'
- id: 36
uuid: a3df9e3c-893e-4f42-ad90-cf34df155589
name: Frail Text
commissioned: 3
owner: 1
hypervisorId: 13
suspended: false
protected: false
updated: '2024-06-28T21:25:57+00:00'
created: '2024-06-28T13:39:55+00:00'
- id: 37
uuid: a3b2e9f8-9b5c-44a3-bcb6-bbadf9bd83e2
name: Stark Brown
commissioned: 3
owner: 1
hypervisorId: 13
suspended: false
protected: false
updated: '2024-08-23T20:15:25+00:00'
created: '2024-06-28T21:36:23+00:00'
- id: 38
uuid: 8c6f63d1-ec53-4e1a-a52f-d50f03b05c70
name: ''
commissioned: 0
owner: 1
hypervisorId: 14
suspended: false
protected: false
updated: '2024-08-23T20:17:42+00:00'
created: '2024-08-23T20:17:42+00:00'
- id: 39
uuid: 539bff72-f6cd-4260-96f1-b7523fd890c5
name: Thorny Impression
commissioned: 3
owner: 1
hypervisorId: 14
suspended: false
protected: false
updated: '2024-08-23T20:20:32+00:00'
created: '2024-08-23T20:18:39+00:00'
- id: 40
uuid: ce445459-c716-4f88-a7c6-a0ffd29eb9b2
name: Present Charge
commissioned: 2
owner: 1
hypervisorId: 14
suspended: false
protected: false
updated: '2024-08-23T20:57:22+00:00'
created: '2024-08-23T20:56:04+00:00'
- id: 41
uuid: 6fce272f-c6ea-45bd-bf24-d4d357d9a788
name: CP Test
commissioned: 3
owner: 1
hypervisorId: 13
suspended: false
protected: false
updated: '2024-08-27T11:10:48+00:00'
created: '2024-08-27T11:09:54+00:00'
first_page_url: https://192.168.3.11/api/v1/servers?page=1
from: 1
last_page: 2
last_page_url: https://192.168.3.11/api/v1/servers?page=2
links:
- url: null
label: '&laquo; Previous'
active: false
- url: https://192.168.3.11/api/v1/servers?page=1
label: '1'
active: true
- url: https://192.168.3.11/api/v1/servers?page=2
label: '2'
active: false
- url: https://192.168.3.11/api/v1/servers?page=2
label: Next &raquo;
active: false
next_page_url: https://192.168.3.11/api/v1/servers?page=2
path: https://192.168.3.11/api/v1/servers
per_page: 20
prev_page_url: null
to: 20
total: 27
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/modify/name:
put:
summary: Modify name
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The new name of the server.
required:
- name
example:
name: Server 1
responses:
'201':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/resetPassword:
post:
summary: Reset a server password
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
user:
type: string
description: Either root or Administrator.
sendMail:
type: boolean
description: >-
Optional (default true) Email the password to the user.
(true|false).
required:
- user
example:
user: root
sendMail: true
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
queueId: 176
expectedPassword: l1LMzm2JGhWYdjjn8JkC
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/user/{userId}:
get:
summary: Retrieve a users servers
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: userId
in: path
description: A valid user ID as shown in VirtFusion.
required: true
example: 3
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
- id: 9
ownerId: 3
hypervisorId: 6
name: server 1
hostname: server1.domain.com
commissionStatus: 2
uuid: 5de5a89b-b707-41bf-a051-7af1a4e67795
state: failed
rebuild: false
suspended: false
protected: false
buildFailed: false
backup_level: 0
backup_plan: null
os:
screen: >-
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
server_info:
show: false
icon: null
name: null
label: null
vnc:
expose_details: true
ip: 192.168.4.2
hostname: null
port: 5901
enabled: 0
resources:
memory: 2048
storage: 10
traffic: 200
cpuCores: 1
cpu_model: null
network:
interfaces:
- order: 1
enabled: true
tag: 4238114467
name: eth0
mac: 00:C3:BA:23:37:B3
inAverage: 0
inPeak: 0
inBurst: 0
outAverage: 0
outPeak: 0
outBurst: 0
isNat: false
ipv4:
- order: 1
enabled: true
address: 192.168.4.21
gateway: 192.168.4.1
netmask: 255.255.254.0
resolver1: 8.8.8.8
resolver2: 8.8.4.4
- order: 2
enabled: true
address: 192.168.4.36
gateway: 192.168.4.1
netmask: 255.255.254.0
resolver1: 8.8.8.8
resolver2: 8.8.4.4
- order: 3
enabled: true
address: 192.168.4.37
gateway: 192.168.4.1
netmask: 255.255.254.0
resolver1: 8.8.8.8
resolver2: 8.8.4.4
ipv6: []
config:
uefi: false
bootOrder:
- hd
- cdrom
media:
isoMounted: false
isoName: ''
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/templates:
get:
summary: Retrieve OS templates available to a server
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
- name: Debian
description: >-
Debian GNU/Linux, is a Linux distribution composed of free
and open-source software, developed by the
community-supported Debian Project.
icon: debian_logo.png
templates:
- id: 8
name: Debian
version: 11 (Bullseye)
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using Advanced Package
Tool (APT), the main command-line package manager for
Debian.
icon: debian_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 46
name: Debian
version: 12 (Bookworm)
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using Advanced Package
Tool (APT), the main command-line package manager for
Debian.
icon: debian_logo.png
eol: false
eol_date: '2024-04-23 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 56
name: Debian
version: 12 (Bookworm)
variant: Test
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using Advanced Package
Tool (APT), the main command-line package manager for
Debian.
icon: debian_logo.png
eol: false
eol_date: '2024-04-23 00:00:00'
eol_warning: false
deploy_type: 1
vnc: true
type: linux
id: 1
- name: CentOS
description: >-
The CentOS Linux distribution is a stable, predictable,
manageable and reproducible platform derived from the
sources of Red Hat Enterprise Linux (RHEL).
icon: centos_logo.png
templates:
- id: 1
name: CentOS
version: '7'
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using Yum, the main
command-line package manager for CentOS.
icon: centos_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 2
name: CentOS Stream
version: '9'
variant: Minimal
arch: 1
description: >-
Base installation with limited packages. New packages
are easily installed using DNF (yum), the main
command-line package manager for CentOS.
icon: centos_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
id: 2
- name: Rocky Linux
description: >-
Rocky Linux is a community enterprise operating system
designed to be 100% bug-for-bug compatible with America's
top enterprise Linux distribution now that its downstream
partner has shifted direction. It is under intensive
development by the community. Rocky Linux is led by
Gregory Kurtzer, founder of the CentOS project.
icon: rocky_linux_logo.png
templates:
- id: 7
name: Rocky Linux
version: '8'
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using DNF (yum), the
main command-line package manager for Rocky Linux.
icon: rocky_linux_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 13
name: Rocky Linux
version: '9'
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using DNF (yum), the
main command-line package manager for Rocky Linux.
icon: rocky_linux_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
id: 3
- name: AlmaLinux
description: >-
AlmaLinux OS is an open-source, community-driven project
that intends provide and alternative to the CentOS Stable
release. AlmaLinux is an OS that is 1:1 binary compatible
with RHEL® 8 and a global collaborative of the developer
community, industry, academia and research which build
upon this technology to empower humanity.
icon: almalinux_logo.png
templates:
- id: 6
name: AlmaLinux
version: '8'
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using DNF (yum), the
main command-line package manager for AlmaLinux.
icon: almalinux_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 12
name: ARM -> AlmaLinux
version: '9'
variant: Latest
arch: 1
description: >-
Latest version with base packages. New packages are
easily installed using DNF (yum), the main
command-line package manager for AlmaLinux.
icon: almalinux_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
id: 4
- name: Ubuntu
description: >-
The most popular server Linux in the cloud and data
centre, you can rely on Ubuntu Server and its five years
of guaranteed free upgrades.
icon: ubuntu_logo.png
templates:
- id: 3
name: Ubuntu Server
version: 20.04 LTS (Focal Fossa)
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using Advanced Package
Tool (APT), the main command-line package manager for
Ubuntu.
icon: ubuntu_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 4
name: Ubuntu Server
version: 18.04 LTS (Bionic Beaver)
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using Advanced Package
Tool (APT), the main command-line package manager for
Ubuntu.
icon: ubuntu_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 9
name: Ubuntu Server
version: 22.04 LTS (Jammy Jellyfish)
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using Advanced Package
Tool (APT), the main command-line package manager for
Ubuntu.
icon: ubuntu_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 49
name: Ubuntu Server
version: 24.04 LTS (Noble Numbat)
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using Advanced Package
Tool (APT), the main command-line package manager for
Ubuntu.
icon: ubuntu_logo.png
eol: false
eol_date: '2024-04-25 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
id: 5
- name: Fedora
description: >-
Fedora Server is a powerful, flexible operating system
that includes the best and latest datacenter technologies.
It puts you in control of all your infrastructure and
services.
icon: fedora_logo.png
templates:
- id: 11
name: Fedora
version: '37'
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using DNF (yum), the
main command-line package manager for Fedora.
icon: fedora_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 14
name: Fedora
version: '38'
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using DNF (yum), the
main command-line package manager for Fedora.
icon: fedora_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 15
name: Fedora
version: '39'
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using DNF (yum), the
main command-line package manager for Fedora.
icon: fedora_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 59
name: Fedora
version: '41'
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using DNF (yum), the
main command-line package manager for Fedora.
icon: fedora_logo.png
eol: false
eol_date: '2024-12-18 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
id: 6
- name: FreeBSD
description: >-
FreeBSD is an operating system used to power modern
servers, desktops, and embedded platforms. A large
community has continually developed it for more than
thirty years. Its advanced networking, security, and
storage features have made FreeBSD the platform of choice
for many of the busiest web sites and most pervasive
embedded networking and storage devices.
icon: freebsd_logo.png
templates:
- id: 52
name: FreeBSD
version: '13.3'
variant: Minimal
arch: 1
description: Minimal installation with limited packages.
icon: freebsd_logo.png
eol: false
eol_date: '2024-05-15 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: unix
- id: 53
name: FreeBSD
version: '14.0'
variant: Minimal
arch: 1
description: Minimal installation with limited packages.
icon: freebsd_logo.png
eol: false
eol_date: '2024-05-15 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: unix
- id: 55
name: FreeBSD
version: '14.2'
variant: Minimal
arch: 1
description: Minimal installation with limited packages.
icon: freebsd_logo.png
eol: false
eol_date: '2024-10-20 00:00:00'
eol_warning: false
deploy_type: 1
vnc: true
type: unix
- id: 58
name: FreeBSD
version: '13.2'
variant: Minimal
arch: 1
description: Minimal installation with limited packages.
icon: freebsd_logo.png
eol: false
eol_date: '2024-12-10 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: unix
id: 7
- name: Other
description: ''
icon: linux_logo.png
templates:
- id: 5
name: openSUSE
version: Leap 15
variant: Minimal
arch: 1
description: >-
openSUSE is a project that serves to promote the use
of free and open-source software.<br><br>Minimal
installation with limited packages. New packages are
easily installed using Zypper, the main command-line
package manager for openSUSE.
icon: opensuse_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
id: 0
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/suspend:
post:
summary: Suspend a server
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/modify/cpuThrottle:
put:
summary: Throttle a servers CPU
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
- name: sync
in: query
description: >-
Synchronise and apply the defined percentage. true|false Defaults to
false.
required: false
example: 'true'
schema:
type: boolean
requestBody:
content:
application/json:
schema:
type: object
properties:
percent:
type: integer
description: The percentage the CPU should be throttled (0-99).
required:
- percent
example:
percent: 50
responses:
'201':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/traffic:
get:
summary: Retrieve a servers traffic statistics
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
monthly:
- month: 2
start: '2025-01-06 00:00:00'
end: '2025-02-05 23:59:59'
rx: 1847110337
tx: 1270421
total: 1848380758
limit: 20000
blocks:
- id: 2
traffic: 100
- month: 1
start: '2024-12-06 00:00:00'
end: '2025-01-05 23:59:59'
rx: 5650592916
tx: 42336801
total: 5692929717
limit: 20000
blocks: []
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/unsuspend:
post:
summary: Unsuspend a server
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/vnc:
post:
summary: Enable or disable VNC
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
action:
type: string
enum:
- enable
- disable
required:
- action
example:
action: enable
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
vnc:
ip: 192.168.4.2
hostname: null
port: 5903
password: ZNYonJeU
wss:
token: 69316231-d34a-4d36-b754-ffd3253df96d
url: /vnc/?token=69316231-d34a-4d36-b754-ffd3253df96d
enabled: false
queueId: null
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
get:
summary: Retrive VNC details
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
vnc:
ip: 192.168.4.2
hostname: null
port: 5903
password: ZNYonJeU
wss:
token: 69316231-d34a-4d36-b754-ffd3253df96d
url: /vnc/?token=69316231-d34a-4d36-b754-ffd3253df96d
enabled: false
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/owner/{newOwnerId}:
put:
summary: Change owner
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 9
schema:
type: integer
- name: newOwnerId
in: path
description: A vailid user ID as shown in VirtFusion.
required: true
schema:
type: integer
responses:
'201':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/modify/memory:
put:
summary: Modify memory
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
memory:
type: integer
description: The new memory value in MB.
minimum: 256
example: 1024
required:
- memory
example:
memory: 1024
responses:
'201':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/modify/cpuCores:
put:
summary: Modify CPU cores
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
cores:
type: integer
description: The new core value.
minimum: 1
maximum: 600
example: 4
required:
- cores
example:
cores: 4
responses:
'201':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/servers/{serverId}/customXML:
post:
summary: Set custom XML
deprecated: false
description: ''
tags:
- Servers
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 69
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
domain:
type: string
os:
type: string
devices:
type: string
features:
type: string
clock:
type: string
cpuTune:
type: string
domainEnabled:
type: boolean
osEnabled:
type: boolean
devicesEnabled:
type: boolean
featuresEnabled:
type: boolean
clockEnabled:
type: boolean
cpuTuneEnabled:
type: boolean
example:
domain: <xml/>
os: <xml/>
devices: <xml/>
features: <xml/>
clock: <xml/>
cpuTune: <xml/>
domainEnabled: true
osEnabled: true
devicesEnabled: true
featuresEnabled: true
clockEnabled: true
cpuTuneEnabled: true
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example: ''
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/compute/hypervisors:
get:
summary: Retrieve hypervisors
deprecated: false
description: ''
tags:
- Hypervisors
parameters:
- name: results
in: query
description: >-
Number of results to return. Range between 1 and 200. Defaults to
20.
required: false
example: 20
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
current_page: 1
data:
- id: 1
commissioned: 3
ip: 192.168.4.10
ipAlt: null
hostname: null
port: 8892
sshPort: 22
name: PHV 1 (RED)
maintenance: false
enabled: true
nfType: 4
group:
id: 1
name: Default
description: Default hypervisor group
default: true
enabled: true
distributionType: 5
created: '2024-03-12T22:21:32+00:00'
updated: '2024-04-12T20:56:04+00:00'
encryptedToken: >-
eyJpdiI6Ik1Ua29ZSGp0QThxWVZhellzL2VTU3c9PSIsInZhbHVlIjoiNzc1eGdMMzFPUFpFZVpIbytzMDc1NzRsUHRJVnFTWFpKWS9WamJIaVJVMVZkSFZjZVM1YVB3bnlQeGt4eEhVamhrWGF4SnNqQVFES010Y3owUmJneTR4a05oRkp1R08xVXI1eHcvQ3NsbW5qU0dpUWhZbnFUMWYrTHM5L2NoZmhUQm9nRnV4b2Y0dENGLy9vanVDMnkwTG1mNXBYM1JVcE5TNWRCSGkvZS9qVEFsSWx5WXdXOU1wajIwam1DV1d4aUNXMUNGMThFNXI5THM4VWFmYnRFNkx3VHFaV3o3M0VVaEZXSHo0TVdKc0xSemJYVExUWEVlZHM0ZVNoUkk0ZEI2QnAySlVESVU2R0JDcWJMeG9YRUhIM0Vad2w2VHNGcFQ3R1BkbU1TbzU3V2JzbEJFNlUvSW90eGxNZkdqRjVmMGx6TTRIWEttYVA0Ti9JQkEwQURrWTRPL2k4VFJsNjhFTHh3UW1wSGMzUkxibEtDeDdlK2tOekQxVkh0bzhsWXY1RkxxaWRkSFBEQlNvM1l2akxqNitickp1TzR0ekhTbmdVSG5VUE5tMGh1WFJuejhscFpSS2dLcE1ZaS9NUlRKdnNUS0wzYWlDYjB1MVJhcmk4OEJoZURNQ3JROE5WcTZTdzV0Si9UeDhwMTFLK3lZV0NDdzB5b2NBZFhsM0hYMDJPMHlXS1g1MmxhNWdrOTRTSDJHbWNvODNuOUswMHJpYTVBL0YwRW9BVndsMllIdW95ZjBhZXdLUTRSR0xBelBVekViTCtKaG8wSGxPR1NOWmNSaXpxQ1hBUVdsdE9HMUhtc2YrRU14WkhOaUVVeWhXRlB2amtRRXkxZjY0cm85ekxVYWE1QU5zdlJDK2N6YmZrNHNOWk4xSTZXbUhxYklLTmgraTZFWHM9IiwibWFjIjoiOTY2ZmJkNzJkNzZmNmZmYTQzM2U4NDQzMDdhYTAzOWZhNTM0M2I1MDQyYWUwYzQ1ZGIyZTRlOGEwM2M0MTRhYiIsInRhZyI6IiJ9
maxServers: 0
maxCpu: 4
maxMemory: 6004
networks:
- id: 1
type: simpleBridge
bridge: br0
primary: true
default: true
created: '2024-03-12T22:37:15+00:00'
updated: '2024-03-12T22:37:40+00:00'
storage: []
created: '2024-03-12T22:37:15+00:00'
updated: '2024-05-10T11:27:52+00:00'
- id: 2
commissioned: 3
ip: 192.168.4.9
ipAlt: null
hostname: null
port: 8892
sshPort: 22
name: PHV 2 (BLUE)
maintenance: false
enabled: true
nfType: 4
group:
id: 1
name: Default
description: Default hypervisor group
default: true
enabled: true
distributionType: 5
created: '2024-03-12T22:21:32+00:00'
updated: '2024-04-12T20:56:04+00:00'
encryptedToken: >-
eyJpdiI6IjgyR2FZZmJwalVDYUxBR2hMdXdTNmc9PSIsInZhbHVlIjoiSFA1Tm44VzdZMUdZSXNZSTNUdmF5dGo5WjIrZEJlU04xQlVIOEZnUzc3dFZRY0ltc3pLdTZ2SFdkUXlQWUF5UEVaZUE3dXVKQXV6ajZvUTZiY0lBQmlnVllvRDZMSDBYK0ZMV0d5dzRTZlYwaDFRcllsNEdGaTljQnpnbEg5Umt6SmdBZ3ZQL0RneTZEUHhKanFGZU9hSWtvR29lYVlLdzk5NTJNZE1hbExSaWtuMkE4cTVaSGxSbWlJZ3pHejhFWnFxbEltNUcrSXVIdE4rQW9ET2R0M0MrK0RHOXNhOFFuVEw1R2k4eEpDNmZiNWJPVS9NL2xrVk40eG93NzQxaTRFN0pBR0FEL2JTclIvd2xWM3JkbnltZGhrc0xkUzV0SGtKNVoyU2JFY2M0S3dyVXEzS256b1ZHOVRvSWlmNm9OT0d6TktEWUduaVBHT2VHaFpqakU2SjFhU2lqTUZPeVdRN3dWSjhnakVQYkFiVmpCK05ja3BVU3FxakNjUUEzRHl3WUZweFJuQ0FBVkR2eTcxLzVVR2ZPNHU2bDJGRTJ6bVkrZ201akZXT0JIeHByK2VQVmMwUEJ5aDM0TWI0RmViakprM0phVXRVMFUvU1Y5M0FCRTBORm1aNWtGUklRbW51Y010NWIzUE02Vno3SkU2MVk4WTUwRy9QUndTZEgwWmRiLzhiV0w1c0ZsNkRMZkNycUlabWQrQ0F5cnYxamgxcWZjNjk3NXlMZHNMdnZqZkhKdG1sY2VLVmFPUTI3OTJ4UVdGLzF4SE83Y0N5dEhNNUhSQWhoZ29uUXMvR3dGeHVUMlRjc3dYZkVrYVVUMWZVQjhZOVRBT1RXYk84bFpqbGZ5RGQ2Rncvb2lQbVh0djBnSHUwSWJKbnAzQmQrL1VIK1JOK2N4NE09IiwibWFjIjoiNGUyNTIxYTIyNDBjZmRiYmEzNmQ5NTc4MGZmMTU4ZjgwN2Q2OTQzYzFhYTgxODVmYzkyMmU3YWNiOGRmNWZjZSIsInRhZyI6IiJ9
maxServers: 0
maxCpu: 28
maxMemory: 10000
networks:
- id: 2
type: simpleBridge
bridge: br0
primary: true
default: true
created: '2024-03-16T19:31:43+00:00'
updated: '2024-03-16T19:32:46+00:00'
storage: []
created: '2024-03-16T19:31:43+00:00'
updated: '2024-04-26T16:41:51+00:00'
- id: 3
commissioned: 3
ip: 192.168.4.12
ipAlt: null
hostname: null
port: 8892
sshPort: 22
name: BHV 9
maintenance: false
enabled: true
nfType: 4
group:
id: 1
name: Default
description: Default hypervisor group
default: true
enabled: true
distributionType: 5
created: '2024-03-12T22:21:32+00:00'
updated: '2024-04-12T20:56:04+00:00'
encryptedToken: >-
eyJpdiI6IlZ6MFN4dnlvQm9DTXNsaDM3YWg1aUE9PSIsInZhbHVlIjoiamlrbEhzRlY5d0RRaUxMYkZIUEV2UHh5eVJVMHEwOGQ2QkVIS0tydW82Um15bGFPVHJQbmUzMDMvbGxyZkEyR0MwT1JUR3ZNaDUvZWE5UFYwOExOU2xKNDhUa2g5VnNqQ2NoamptNnp3dmY0VVhzSXEwTEsxWDRwMDdtMyttdmp2UVRHOFJsb3Q3VkpKWEw0N3JmelAxNWZGWTVRQ1lCWHFpM3N5anFnaDNlcVFWazV6ci9Fem9xQTYrYXpNeUw0a3Jobm85aFRweCsxQVNoOWJrVktveWczYm5CL3VyNVhqWHlFbEpRYUtINzhwMCtEN3N4aEEwdTQ0YzdSbVhqQk9BTDVkN3F0aDFHWngwQU1iNDJKT1BRT25LYjZacklPM1llL2hQRWJab1l5QVdTQUtiVkZXcXROZC9xOWxLdzROTUprRkUxWkNjY2l3TnIzYXk5YiswNkhIQTlKejI3YXhPc2xXRklETmtYRkNNWlIzT1RHZkZTVGMvY1lra2JaemNQcW8vUEFLbEROS3dJQkorSVNUeTJESzZtV2tUV0Q0Nk5QVWRvUnJUbWhkVFlwZmphNXZXanFUTi9SbnVacTJXUzhYZW8zby95RG9jVWJDT25UMHU3dVZSN1UrS3RxRFhlM3diYkhxL1g3OXZIdmwzUzhCZmpjN3ZpMkhlRlNSMmNPMzduektWRGpYOFQ2UktIQjdnaEVoZy95MmZYK0c1dTZOemZ0VXpxbHpneVlndkp0anNuN2Y4bXlScXhoWFQrai9yL2wrWWhLNGlGWGVhc09iSEQrRzYrOThCY1czUTdnd0pOTFdSZ05uNUU5QUZPVmtHOENBRDljOFN1UjBteUdacmZYZWdtM2RodXg4dEx5cExGZVZ0TTNrQTVVTFlTZU0vZ28xLzA9IiwibWFjIjoiNzdmZTc5MDI2NjY3OTc2NzhmMjJiMWY3ZGNjNGI4YmNkZTNiNzE0MmNlODdkYzNlNzIxNDU5NmVlMjJmODNhYSIsInRhZyI6IiJ9
maxServers: 0
maxCpu: 64
maxMemory: 27913
networks:
- id: 3
type: simpleBridge
bridge: br0
primary: true
default: true
created: '2024-03-29T20:10:22+00:00'
updated: '2024-04-09T11:32:14+00:00'
storage: []
created: '2024-03-29T20:10:22+00:00'
updated: '2024-04-16T10:44:21+00:00'
- id: 4
commissioned: 3
ip: 192.168.4.11
ipAlt: null
hostname: null
port: 8892
sshPort: 22
name: BHV 8
maintenance: false
enabled: true
nfType: 4
group:
id: 1
name: Default
description: Default hypervisor group
default: true
enabled: true
distributionType: 5
created: '2024-03-12T22:21:32+00:00'
updated: '2024-04-12T20:56:04+00:00'
encryptedToken: >-
eyJpdiI6ImpjS3JqNWhlOHl6Rm5RUk80WkRVQkE9PSIsInZhbHVlIjoiUXNSVEhXMWhJM2hrZ2gza3hBVGtQUjJMenp4bThNL2d0ajYyUGNTQ2s2TjMxZEZ3ZVJVYzQxbUhjSXZMd2greWY5MEl3ajFLK3RrL1BpSzdZbCtzRkpObisvNktxanpZZzBORFpHRUdnN2t3cmN2YXJBbnhQbWRkQ0FUVkozQTVwanlYZHJxVlF2Y3VBOWVBb21FdytUT3Z0cUdrMTU0V3YxM0w1VUh2NER4VkpESngvK0kwNmp6eHFVSDloSWxEd2t4aHV4UnM2c1kyRFRjTDJ5TXJ0dFZPRjZNL3YxKzFpODlzRHFtak5PRm1pVDFBdHJwNGhqNEZiV05Fd1c2OWlkeWxuTWdUT1Z1STE4MjFIMnBoaDA1WWhmSitFMFdnZGdqZ0lZSlBzODd5Y3hDVzNCYWFwSHlHV1hDU0lXZDJKS3RsYWN4VU9EUmJqeTM3Vy9RSXFKTGxkRnZlMnhjWm5mekRrd0VZVjEzeVFhMDFGazJKbXNOVTdCUzdTcW9PbzFsdkEzZE9nK0k4dW5ndXB6OTJDbUFWZk5hU1JveExMSGFzMnNsQzFUSzRDSHVaQkkvR2JseFFwT1BDTWcvZjlqaU5IdDJPMnRTRjJrVmxuYjJzeDRBT2NTNjl5V2hVc3c3UC9ucG11UFozZjErOFovcXVZQlJHSkt0RWJrcVFvY2NyMDdDZ0JFOE5SVklJa0loSVIvSStwVWh6b0twV1NLT0tOaXF3N1EvQkJUTmhYRit3eFR2VGxMc3NMSDVSUWtyMlZCck43ZkFYVXMrVEpoVXhHSVJlN2pMOENnL1R4SzVIeHkrWkVWKzlhRmN5RWdmK1IzaGpJZ0VtbUMvTzJvRnI2TW93RmpyNXlITXB3TGpteGZ6NmZpUEh4NlNVMytsd0hsS0kxRDA9IiwibWFjIjoiNWFkMTQ4YmQ1MGJjMTE3N2QzN2JhOGJkOTM1NzBlNjIzYjFkM2UyMjkxYjI3OWJmMTkxMmVmYjcxNzEwZTNkNCIsInRhZyI6IiJ9
maxServers: 0
maxCpu: 16
maxMemory: 27913
networks:
- id: 4
type: macVTap
bridge: eth0
primary: true
default: true
created: '2024-03-29T20:10:42+00:00'
updated: '2024-03-29T20:10:42+00:00'
storage: []
created: '2024-03-29T20:10:42+00:00'
updated: '2024-04-16T10:44:21+00:00'
- id: 6
commissioned: 3
ip: 192.168.4.2
ipAlt: 123.123.123.121
hostname: null
port: 8892
sshPort: 22
name: BHV 1
maintenance: false
enabled: true
nfType: 4
group:
id: 2
name: Test
description: null
default: false
enabled: true
distributionType: 13
created: '2024-10-08T13:23:28+00:00'
updated: '2024-10-08T13:23:42+00:00'
encryptedToken: >-
eyJpdiI6ImQ0M1hybkc5bDJaQ2IrakJFUGZ0MEE9PSIsInZhbHVlIjoiNW1ETjRDeGMxZDlDOWx3M1ZmRkFBZG84dGRwbEZVRVlwc0JJT202UXhHekJ0cS9wNWpIUjJiUzJhaG0ySCs4aHpLakF2RnNJTjVPZ09hN0ttcEg4bkJrdjRqd2pxNHlPcTBaNnBDZ2VwTllUNzNnRTdBUlVHM245VDVhWkxhYkZ5MnRmQXZJMjZkQWxkV3BmbVdZNWt0clR2UlNGTEZES0kzaksyd2xmZFJITlRRMU0yUkp2WkNRU0lYUlRkWWF3NWxxY1cyUFo1WFByczZIak4wMnl4VmdSbUs0b0RjVWNacmZmcDM1VTgyWlo1OGYydnBXVGNOdHZIRXA3YnNIZFIzTXJiUmorcVExc216R3VyeTQ0U2JTeDZZbzlBcHN2MFNyczlNZGZPM1M5K2FuUVQrNVc1UHVuTEZUSC8yMi9FWHVOYUphblNPVnZsQ2RhVGdrSE5zczlyTEF6QTM5cTBrci8yRy9DM204NWJxOUZBZjdhTmRFZnc1UWcwVUM1L3dveGpvb2tleEd2eVF0amlSN2VRYzdlS3kzQUtMRVk2WkFma25aVjN5OWRURDZFN3JnWU5UVDRkTjRWc0Rib1JIdXAwSlZQTVViWHJTNlIrbFBvb1M0MHVOOEU4VGlBdGZ4dVI0V1BwS3dnempYSC94bmRXdHdET2FEUGZHVXptNzFQQjM3UnRwbWtSQW1wY2xscGxTTmRvZzJpQ0pEWXdoYWRGTk03aytWbGJyVUh3ZGliVWN1NGVEM1lRNjFVV3oxYkNOL0NJUFUycVlQQ212S0NsYitIK2p5QkxwdUk2bk4vL0l6QktraCtqR2lnYkYzNU1IazBPVG42RGlCVkVBV2JKcGI4My9lNDl4N29vQUNJempjaGtlQU1tVWlHZDBDUFkwVU1lTmM9IiwibWFjIjoiMTk1MWEwNGQyYzdiOGM5ZTQ4NDBjZWI2N2JjYTJjYmFhNThhOGUyMDE1MTdiZDdmN2E2YjE4MjZmZjk1OTcxYiIsInRhZyI6IiJ9
maxServers: 0
maxCpu: 128
maxMemory: 29419
networks:
- id: 6
type: simpleBridge
bridge: br0
primary: true
default: true
created: '2024-03-30T09:53:38+00:00'
updated: '2025-01-15T13:31:56+00:00'
- id: 17
type: lvBridgeOVS
bridge: bhv1
primary: false
default: false
created: '2024-05-17T11:25:57+00:00'
updated: '2024-05-17T11:25:57+00:00'
storage: []
created: '2024-03-30T09:53:38+00:00'
updated: '2024-12-06T21:25:54+00:00'
first_page_url: >-
https://192.168.3.11/api/v1/compute/hypervisors?results=5&page=1
from: 1
last_page: 3
last_page_url: >-
https://192.168.3.11/api/v1/compute/hypervisors?results=5&page=3
links:
- url: null
label: '&laquo; Previous'
active: false
- url: >-
https://192.168.3.11/api/v1/compute/hypervisors?results=5&page=1
label: '1'
active: true
- url: >-
https://192.168.3.11/api/v1/compute/hypervisors?results=5&page=2
label: '2'
active: false
- url: >-
https://192.168.3.11/api/v1/compute/hypervisors?results=5&page=3
label: '3'
active: false
- url: >-
https://192.168.3.11/api/v1/compute/hypervisors?results=5&page=2
label: Next &raquo;
active: false
next_page_url: >-
https://192.168.3.11/api/v1/compute/hypervisors?results=5&page=2
path: https://192.168.3.11/api/v1/compute/hypervisors
per_page: 5
prev_page_url: null
to: 5
total: 14
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/compute/hypervisors/{hypervisorId}:
get:
summary: Retrive a Hypervisor
deprecated: false
description: ''
tags:
- Hypervisors
parameters:
- name: hypervisorId
in: path
description: A valid hypervisor ID as shown in VirtFusion.
required: true
example: 1
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
id: 1
commissioned: 3
ip: 192.168.4.10
ipAlt: null
hostname: null
port: 8892
sshPort: 22
name: PHV 1 (RED)
maintenance: false
enabled: true
nfType: 4
group:
id: 1
name: Default
description: Default hypervisor group
default: true
enabled: true
distributionType: 5
created: '2024-03-12T22:21:32+00:00'
updated: '2024-04-12T20:56:04+00:00'
encryptedToken: >-
eyJpdiI6Ik1Ua29ZSGp0QThxWVZhellzL2VTU3c9PSIsInZhbHVlIjoiNzc1eGdMMzFPUFpFZVpIbytzMDc1NzRsUHRJVnFTWFpKWS9WamJIaVJVMVZkSFZjZVM1YVB3bnlQeGt4eEhVamhrWGF4SnNqQVFES010Y3owUmJneTR4a05oRkp1R08xVXI1eHcvQ3NsbW5qU0dpUWhZbnFUMWYrTHM5L2NoZmhUQm9nRnV4b2Y0dENGLy9vanVDMnkwTG1mNXBYM1JVcE5TNWRCSGkvZS9qVEFsSWx5WXdXOU1wajIwam1DV1d4aUNXMUNGMThFNXI5THM4VWFmYnRFNkx3VHFaV3o3M0VVaEZXSHo0TVdKc0xSemJYVExUWEVlZHM0ZVNoUkk0ZEI2QnAySlVESVU2R0JDcWJMeG9YRUhIM0Vad2w2VHNGcFQ3R1BkbU1TbzU3V2JzbEJFNlUvSW90eGxNZkdqRjVmMGx6TTRIWEttYVA0Ti9JQkEwQURrWTRPL2k4VFJsNjhFTHh3UW1wSGMzUkxibEtDeDdlK2tOekQxVkh0bzhsWXY1RkxxaWRkSFBEQlNvM1l2akxqNitickp1TzR0ekhTbmdVSG5VUE5tMGh1WFJuejhscFpSS2dLcE1ZaS9NUlRKdnNUS0wzYWlDYjB1MVJhcmk4OEJoZURNQ3JROE5WcTZTdzV0Si9UeDhwMTFLK3lZV0NDdzB5b2NBZFhsM0hYMDJPMHlXS1g1MmxhNWdrOTRTSDJHbWNvODNuOUswMHJpYTVBL0YwRW9BVndsMllIdW95ZjBhZXdLUTRSR0xBelBVekViTCtKaG8wSGxPR1NOWmNSaXpxQ1hBUVdsdE9HMUhtc2YrRU14WkhOaUVVeWhXRlB2amtRRXkxZjY0cm85ekxVYWE1QU5zdlJDK2N6YmZrNHNOWk4xSTZXbUhxYklLTmgraTZFWHM9IiwibWFjIjoiOTY2ZmJkNzJkNzZmNmZmYTQzM2U4NDQzMDdhYTAzOWZhNTM0M2I1MDQyYWUwYzQ1ZGIyZTRlOGEwM2M0MTRhYiIsInRhZyI6IiJ9
maxServers: 0
maxCpu: 4
maxMemory: 6004
created: '2024-03-12T22:37:15+00:00'
updated: '2024-05-10T11:27:52+00:00'
networks:
- id: 1
type: simpleBridge
bridge: br0
primary: true
default: true
created: '2024-03-12T22:37:15+00:00'
updated: '2024-03-12T22:37:40+00:00'
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/connectivity/ipblocks/{blockId}/ipv4:
post:
summary: Add an IPv4 range to an IP block
deprecated: false
description: ''
tags:
- IP Blocks
parameters:
- name: blockId
in: path
description: A valid IPv4 block ID as shown in VirtFusion.
required: true
example: 1
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
type:
type: string
description: Must be set to range.
start:
type: string
description: Start of IPv4 range.
end:
type: string
description: End of IPv4 range.
required:
- type
- start
- end
example:
type: range
start: 192.168.1.2
end: 192.168.1.10
responses:
'204':
description: ''
content:
text/css:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/connectivity/ipblocks:
get:
summary: Retrieve IP blocks
deprecated: false
description: ''
tags:
- IP Blocks
parameters:
- name: results
in: query
description: >-
Number of results to return. Range between 1 and 200. Defaults to
20.
required: false
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
current_page: 1
data:
- id: 1
type: 4
name: 192.168.4.0/23
ipv4:
gateway: 192.168.4.1
netmask: 255.255.254.0
resolvers:
primary: 8.8.8.8
secondary: 8.8.4.4
total: 521
usedTotal: 21
freeTotal: 500
ipv6:
gateway: null
resolvers:
primary: null
secondary: null
subnet: null
from: 48
to: 64
restricted: []
total: 0
generatedTotal: 0
usedTotal: 0
freeTotal: 0
freeGenerated: 0
blacklistedTotal: 0
rdnsType: 0
rdnsZoneId: null
networkProfile: 0
routeBlock: null
dhcp: 1
enabled: true
created: '2024-03-12T22:40:23+00:00'
updated: '2024-12-06T21:53:15+00:00'
- id: 2
type: 6
name: PDNS TEST
ipv4:
gateway: null
netmask: null
resolvers:
primary: null
secondary: null
total: 0
usedTotal: 0
freeTotal: 0
ipv6:
gateway: 2a03:3a61:a1::1
resolvers:
primary: 2001:4860:4860::8888
secondary: 2001:4860:4860::8844
subnet: '2a03:3a61:a1::'
from: 48
to: 64
restricted: []
total: 65535
generatedTotal: 300
usedTotal: 0
freeTotal: 65535
freeGenerated: 300
blacklistedTotal: 0
rdnsType: 2
rdnsZoneId: 1
networkProfile: 0
routeBlock: null
dhcp: 1
enabled: true
created: '2024-04-26T11:41:41+00:00'
updated: '2024-12-31T10:23:33+00:00'
- id: 3
type: 4
name: 192.168.30.200-240
ipv4:
gateway: 192.168.30.1
netmask: 255.255.255.0
resolvers:
primary: 8.8.8.8
secondary: 8.8.4.4
total: 41
usedTotal: 8
freeTotal: 33
ipv6:
gateway: null
resolvers:
primary: null
secondary: null
subnet: null
from: 48
to: 64
restricted: []
total: 0
generatedTotal: 0
usedTotal: 0
freeTotal: 0
freeGenerated: 0
blacklistedTotal: 0
rdnsType: 0
rdnsZoneId: null
networkProfile: 0
routeBlock: null
dhcp: 1
enabled: true
created: '2024-05-14T10:43:52+00:00'
updated: '2024-05-14T10:44:25+00:00'
- id: 4
type: 4
name: 10.1.1.0/24
ipv4:
gateway: null
netmask: 255.255.255.255
resolvers:
primary: 8.8.8.8
secondary: 8.8.4.4
total: 0
usedTotal: 0
freeTotal: 0
ipv6:
gateway: null
resolvers:
primary: null
secondary: null
subnet: null
from: 48
to: 64
restricted: []
total: 0
generatedTotal: 0
usedTotal: 0
freeTotal: 0
freeGenerated: 0
blacklistedTotal: 0
rdnsType: 0
rdnsZoneId: null
networkProfile: 0
routeBlock: null
dhcp: 1
enabled: true
created: '2024-05-16T18:11:03+00:00'
updated: '2024-05-17T13:22:04+00:00'
- id: 5
type: 6
name: V6 For BHV 1,3
ipv4:
gateway: null
netmask: null
resolvers:
primary: null
secondary: null
total: 0
usedTotal: 0
freeTotal: 0
ipv6:
gateway: 2001:db8:abcd:12::1
resolvers:
primary: 2001:4860:4860::8888
secondary: 2001:4860:4860::8844
subnet: '2001:db8:abcd:12::'
from: 64
to: 80
restricted: []
total: 65535
generatedTotal: 1100
usedTotal: 9
freeTotal: 65526
freeGenerated: 1091
blacklistedTotal: 0
rdnsType: 0
rdnsZoneId: null
networkProfile: 0
routeBlock: null
dhcp: 1
enabled: true
created: '2024-09-19T17:23:05+00:00'
updated: '2024-12-06T21:23:55+00:00'
first_page_url: https://192.168.3.11/api/v1/connectivity/ipblocks?page=1
from: 1
last_page: 1
last_page_url: https://192.168.3.11/api/v1/connectivity/ipblocks?page=1
links:
- url: null
label: '&laquo; Previous'
active: false
- url: https://192.168.3.11/api/v1/connectivity/ipblocks?page=1
label: '1'
active: true
- url: null
label: Next &raquo;
active: false
next_page_url: null
path: https://192.168.3.11/api/v1/connectivity/ipblocks
per_page: 20
prev_page_url: null
to: 5
total: 5
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/connectivity/ipblocks/{blockId}:
get:
summary: Retrieve an IP block
deprecated: false
description: ''
tags:
- IP Blocks
parameters:
- name: blockId
in: path
description: A valid IP block ID as shown in VirtFusion.
required: true
example: 1
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
id: 1
type: 4
name: 192.168.4.0/23
ipv4:
gateway: 192.168.4.1
netmask: 255.255.254.0
resolvers:
primary: 8.8.8.8
secondary: 8.8.4.4
total: 521
usedTotal: 21
freeTotal: 500
ipv6:
gateway: null
resolvers:
primary: null
secondary: null
subnet: null
from: 48
to: 64
restricted: []
total: 0
generatedTotal: 0
usedTotal: 0
freeTotal: 0
freeGenerated: 0
blacklistedTotal: 0
rdnsType: 0
rdnsZoneId: null
networkProfile: 0
routeBlock: null
dhcp: 1
enabled: true
created: '2024-03-12T22:40:23+00:00'
updated: '2024-12-06T21:53:15+00:00'
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/backups/server/{serverId}:
get:
summary: Retrieve a server backups
deprecated: false
description: ''
tags:
- Backups
parameters:
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 1
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
- id: 42
serverId: 202
storage:
id: 5
name: Backup Server 1
enabled: true
deleting: false
restoring: false
progress: false
complete: true
deleteAfter: null
created: '2022-03-03T20:25:01+00:00'
updated: '2022-03-03T20:26:01+00:00'
- id: 49
serverId: 202
storage:
id: 5
name: Backup Server 1
enabled: true
deleting: false
restoring: false
progress: false
complete: true
deleteAfter: null
created: '2022-03-04T20:25:01+00:00'
updated: '2022-03-04T20:26:01+00:00'
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/dns/services/{serviceId}:
get:
summary: Retrieve a DNS service
deprecated: false
description: ''
tags:
- DNS
parameters:
- name: serviceId
in: path
description: A valid DNS service ID as shown in VirtFusion.
required: true
example: '1'
schema:
type: string
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
id: 4
type: 1
name: ClouDNS
username: '456754'
url: https://api.cloudns.net
ip: null
port: 443
password: >-
eyJpdiI6IjVUOU11S09KNmFtNnlqLzRzR0FYd1E9PSIsInZhbHVlIjoiS01SNjdhbEt1TzFVMHM0Nk1lY2Z0bnl5cUJJUDlxeUF0VXdtTTUwWW41QT0iLCJtYWMiOiI4NTBlNzFhNzJmNTkwMTA1ODQ0MjU4OTUzNjM0MzAxN2QwYzY5OTdiMTgzNDg3ZGFjMmU5NjE0Y2E3YTE1NWVjIiwidGFnIjoiIn0=
config: {}
subAccount: false
capabilities: 1
enabled: true
created: '2022-02-11T11:55:49+00:00'
updated: '2022-02-14T22:45:43+00:00'
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/media/iso/{isoId}:
get:
summary: Retrieve an ISO
deprecated: false
description: ''
tags:
- Media
parameters:
- name: isoId
in: path
description: A valid ISO ID as shown in VirtFusion.
required: true
example: '1'
schema:
type: string
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
id: 1
name: Deb Arch
description: null
arch: 2
url: >-
https://cdimage.debian.org/debian-cd/current/arm64/iso-cd/debian-12.5.0-arm64-netinst.iso
filename: deb-arc
enabled: true
config: '[]'
global: true
download: true
users: []
created: '2024-03-13T09:34:54+00:00'
updated: '2024-04-01T20:34:05+00:00'
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/media/templates/fromServerPackageSpec/{serverPackageId}:
get:
summary: Retrieve operating system templates that are available for a package
deprecated: false
description: ''
tags:
- Media
parameters:
- name: serverPackageId
in: path
description: A valid server package ID as shown in VirtFusion.
required: true
example: 1
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
- name: Debian
description: >-
Debian GNU/Linux, is a Linux distribution composed of free
and open-source software, developed by the
community-supported Debian Project.
icon: debian_logo.png
templates:
- id: 8
name: Debian
version: 11 (Bullseye)
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using Advanced Package
Tool (APT), the main command-line package manager for
Debian.
icon: debian_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 44
name: Debian
version: 12 (Bookworm)
variant: null
arch: 2
description: >-
Minimal installation with limited packages. New
packages are easily installed using Advanced Package
Tool (APT), the main command-line package manager for
Debian.
icon: debian_logo.png
eol: false
eol_date: '2024-04-02 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 46
name: Debian
version: 12 (Bookworm)
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using Advanced Package
Tool (APT), the main command-line package manager for
Debian.
icon: debian_logo.png
eol: false
eol_date: '2024-04-23 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 56
name: Debian
version: 12 (Bookworm)
variant: Test
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using Advanced Package
Tool (APT), the main command-line package manager for
Debian.
icon: debian_logo.png
eol: false
eol_date: '2024-04-23 00:00:00'
eol_warning: false
deploy_type: 1
vnc: true
type: linux
id: 1
- name: CentOS
description: >-
The CentOS Linux distribution is a stable, predictable,
manageable and reproducible platform derived from the
sources of Red Hat Enterprise Linux (RHEL).
icon: centos_logo.png
templates:
- id: 1
name: CentOS
version: '7'
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using Yum, the main
command-line package manager for CentOS.
icon: centos_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 2
name: CentOS Stream
version: '9'
variant: Minimal
arch: 1
description: >-
Base installation with limited packages. New packages
are easily installed using DNF (yum), the main
command-line package manager for CentOS.
icon: centos_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
id: 2
- name: Rocky Linux
description: >-
Rocky Linux is a community enterprise operating system
designed to be 100% bug-for-bug compatible with America's
top enterprise Linux distribution now that its downstream
partner has shifted direction. It is under intensive
development by the community. Rocky Linux is led by
Gregory Kurtzer, founder of the CentOS project.
icon: rocky_linux_logo.png
templates:
- id: 7
name: Rocky Linux
version: '8'
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using DNF (yum), the
main command-line package manager for Rocky Linux.
icon: rocky_linux_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 13
name: Rocky Linux
version: '9'
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using DNF (yum), the
main command-line package manager for Rocky Linux.
icon: rocky_linux_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 40
name: Rocky Linux
version: '9'
variant: ''
arch: 2
description: >-
Minimal installation with limited packages. New
packages are easily installed using DNF (yum), the
main command-line package manager for Rocky Linux.
icon: rocky_linux_logo.png
eol: false
eol_date: '2024-03-28 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
id: 3
- name: AlmaLinux
description: >-
AlmaLinux OS is an open-source, community-driven project
that intends provide and alternative to the CentOS Stable
release. AlmaLinux is an OS that is 1:1 binary compatible
with RHEL® 8 and a global collaborative of the developer
community, industry, academia and research which build
upon this technology to empower humanity.
icon: almalinux_logo.png
templates:
- id: 6
name: AlmaLinux
version: '8'
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using DNF (yum), the
main command-line package manager for AlmaLinux.
icon: almalinux_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 12
name: ARM -> AlmaLinux
version: '9'
variant: Latest
arch: 1
description: >-
Latest version with base packages. New packages are
easily installed using DNF (yum), the main
command-line package manager for AlmaLinux.
icon: almalinux_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 39
name: AlmaLinux
version: '9'
variant: null
arch: 2
description: >-
Minimal installation with limited packages. New
packages are easily installed using DNF (yum), the
main command-line package manager for AlmaLinux.
icon: almalinux_logo.png
eol: false
eol_date: '2024-03-28 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
id: 4
- name: Ubuntu
description: >-
The most popular server Linux in the cloud and data
centre, you can rely on Ubuntu Server and its five years
of guaranteed free upgrades.
icon: ubuntu_logo.png
templates:
- id: 3
name: Ubuntu Server
version: 20.04 LTS (Focal Fossa)
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using Advanced Package
Tool (APT), the main command-line package manager for
Ubuntu.
icon: ubuntu_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 4
name: Ubuntu Server
version: 18.04 LTS (Bionic Beaver)
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using Advanced Package
Tool (APT), the main command-line package manager for
Ubuntu.
icon: ubuntu_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 9
name: Ubuntu Server
version: 22.04 LTS (Jammy Jellyfish)
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using Advanced Package
Tool (APT), the main command-line package manager for
Ubuntu.
icon: ubuntu_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 41
name: Ubuntu
version: 22.04 LTS (Jammy Jellyfish)
variant: ''
arch: 2
description: >-
Minimal installation with limited packages. New
packages are easily installed using Advanced Package
Tool (APT), the main command-line package manager for
Ubuntu.
icon: ubuntu_logo.png
eol: false
eol_date: '2024-03-28 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 49
name: Ubuntu Server
version: 24.04 LTS (Noble Numbat)
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using Advanced Package
Tool (APT), the main command-line package manager for
Ubuntu.
icon: ubuntu_logo.png
eol: false
eol_date: '2024-04-25 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 51
name: Ubuntu
version: 24.04 LTS (Noble Numbat)
variant: null
arch: 2
description: >-
Minimal installation with limited packages. New
packages are easily installed using Advanced Package
Tool (APT), the main command-line package manager for
Ubuntu.
icon: ubuntu_logo.png
eol: false
eol_date: '2024-05-02 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
id: 5
- name: Fedora
description: >-
Fedora Server is a powerful, flexible operating system
that includes the best and latest datacenter technologies.
It puts you in control of all your infrastructure and
services.
icon: fedora_logo.png
templates:
- id: 11
name: Fedora
version: '37'
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using DNF (yum), the
main command-line package manager for Fedora.
icon: fedora_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 14
name: Fedora
version: '38'
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using DNF (yum), the
main command-line package manager for Fedora.
icon: fedora_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 15
name: Fedora
version: '39'
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using DNF (yum), the
main command-line package manager for Fedora.
icon: fedora_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 59
name: Fedora
version: '41'
variant: Minimal
arch: 1
description: >-
Minimal installation with limited packages. New
packages are easily installed using DNF (yum), the
main command-line package manager for Fedora.
icon: fedora_logo.png
eol: false
eol_date: '2024-12-18 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
id: 6
- name: FreeBSD
description: >-
FreeBSD is an operating system used to power modern
servers, desktops, and embedded platforms. A large
community has continually developed it for more than
thirty years. Its advanced networking, security, and
storage features have made FreeBSD the platform of choice
for many of the busiest web sites and most pervasive
embedded networking and storage devices.
icon: freebsd_logo.png
templates:
- id: 52
name: FreeBSD
version: '13.3'
variant: Minimal
arch: 1
description: Minimal installation with limited packages.
icon: freebsd_logo.png
eol: false
eol_date: '2024-05-15 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: unix
- id: 53
name: FreeBSD
version: '14.0'
variant: Minimal
arch: 1
description: Minimal installation with limited packages.
icon: freebsd_logo.png
eol: false
eol_date: '2024-05-15 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: unix
- id: 55
name: FreeBSD
version: '14.2'
variant: Minimal
arch: 1
description: Minimal installation with limited packages.
icon: freebsd_logo.png
eol: false
eol_date: '2024-10-20 00:00:00'
eol_warning: false
deploy_type: 1
vnc: true
type: unix
- id: 58
name: FreeBSD
version: '13.2'
variant: Minimal
arch: 1
description: Minimal installation with limited packages.
icon: freebsd_logo.png
eol: false
eol_date: '2024-12-10 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: unix
id: 7
- name: Other
description: ''
icon: linux_logo.png
templates:
- id: 5
name: openSUSE
version: Leap 15
variant: Minimal
arch: 1
description: >-
openSUSE is a project that serves to promote the use
of free and open-source software.<br><br>Minimal
installation with limited packages. New packages are
easily installed using Zypper, the main command-line
package manager for openSUSE.
icon: opensuse_logo.png
eol: false
eol_date: '2024-03-12 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
- id: 36
name: openSUSE
version: Leap 15.6
variant: ''
arch: 2
description: >-
openSUSE is a project that serves to promote the use
of free and open-source software.<br><br>Minimal
installation with limited packages. New packages are
easily installed using Zypper, the main command-line
package manager for openSUSE.
icon: opensuse_logo.png
eol: false
eol_date: '2024-03-14 00:00:00'
eol_warning: false
deploy_type: 1
vnc: false
type: linux
id: 0
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/packages:
get:
summary: Retrieve packages
deprecated: false
description: ''
tags:
- Packages
parameters: []
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
- id: 1
name: Test
description: null
enabled: true
memory: 1024
primaryStorage: 10
traffic: 200
cpuCores: 1
primaryNetworkSpeedIn: 0
primaryNetworkSpeedOut: 0
primaryDiskType: inherit
backupPlanId: 0
primaryStorageReadBytesSec: null
primaryStorageWriteBytesSec: null
primaryStorageReadIopsSec: null
primaryStorageWriteIopsSec: null
primaryStorageProfile: 1
primaryNetworkProfile: 0
created: '2024-03-12T22:41:31.000000Z'
- id: 2
name: Test Only
description: null
enabled: true
memory: 1024
primaryStorage: 10
traffic: 200
cpuCores: 1
primaryNetworkSpeedIn: 0
primaryNetworkSpeedOut: 0
primaryDiskType: inherit
backupPlanId: 0
primaryStorageReadBytesSec: null
primaryStorageWriteBytesSec: null
primaryStorageReadIopsSec: null
primaryStorageWriteIopsSec: null
primaryStorageProfile: 0
primaryNetworkProfile: 0
created: '2024-06-28T12:36:16.000000Z'
- id: 3
name: BASIC
description: null
enabled: true
memory: 1024
primaryStorage: 10
traffic: 20000
cpuCores: 2
primaryNetworkSpeedIn: 0
primaryNetworkSpeedOut: 0
primaryDiskType: inherit
backupPlanId: 0
primaryStorageReadBytesSec: null
primaryStorageWriteBytesSec: null
primaryStorageReadIopsSec: null
primaryStorageWriteIopsSec: null
primaryStorageProfile: 1
primaryNetworkProfile: 0
created: '2024-10-12T15:54:54.000000Z'
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/packages/{packageId}:
get:
summary: Retrieve a packge
deprecated: false
description: ''
tags:
- Packages
parameters:
- name: packageId
in: path
description: A valid package ID as shown in VirtFusion.
required: true
example: 1
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
id: 1
name: Test
description: null
enabled: true
memory: 1024
primaryStorage: 10
traffic: 200
cpuCores: 1
primaryNetworkSpeedIn: 0
primaryNetworkSpeedOut: 0
primaryDiskType: inherit
backupPlanId: 0
primaryStorageReadBytesSec: null
primaryStorageWriteBytesSec: null
primaryStorageReadIopsSec: null
primaryStorageWriteIopsSec: null
primaryStorageProfile: 1
primaryNetworkProfile: 0
created: '2024-03-12T22:41:31.000000Z'
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/queue/{queueId}:
get:
summary: Retrieve a queue item
deprecated: false
description: ''
tags:
- Queue & Tasks
parameters:
- name: queueId
in: path
description: A valid queue ID as shown in VirtFusion.
required: true
example: 158
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
id: 158
jobId: '852'
job: App\Jobs\Server\KVM\Build
hypervisorId: 6
serverId: 69
action: build_server
queue: default
started: '2025-01-15T15:00:26+00:00'
updated: '2025-01-15T15:00:49+00:00'
finished: '2025-01-15T15:00:49+00:00'
failed: false
progress: 100
errors:
exception:
stringable: false
errors: []
type: null
trace: null
message: null
primaryActions:
- type: server.get.status
dataType: object
data:
success: true
version: '{{VERSION}}'
setOpts:
failOnVersionCheck: true
failOnDisasterRecovery: true
createDirStructure: true
writeXMLConfiguration: false
failOnCustomXML: false
failOnPriorityXML: false
failOnElevateXML: true
actions:
createDirStructure:
requested: true
output: server directory structure set. No action required
msg: null
success: true
statusTree:
disasterRecoveryActive: false
customXML: false
priorityXML: false
elevateXML: false
created: '2025-01-15T15:00:26+00:00'
updated: '2025-01-15T15:00:26+00:00'
- type: server.config.dhcp
dataType: object
data:
system:
success: true
commandline: []
data: []
created: '2025-01-15T15:00:26+00:00'
updated: '2025-01-15T15:00:26+00:00'
- type: server.os.template.exists
dataType: object
data:
success: false
remote:
info:
url: >-
https://cloud-images.ubuntu.com/noble/current/noble-server-cloudimg-amd64.img
content_type: application/octet-stream
http_code: 200
header_size: 255
request_size: 176
filetime: -1
ssl_verify_result: 20
redirect_count: 0
total_time: 0.070349
namelookup_time: 0.016706
connect_time: 0.03088
pretransfer_time: 0.054076
size_upload: 0
size_download: 0
speed_download: 0
speed_upload: 0
download_content_length: 609856512
upload_content_length: 0
starttransfer_time: 0.070305
redirect_time: 0
redirect_url: ''
primary_ip: 185.125.190.37
certinfo: []
primary_port: 443
local_ip: 192.168.4.2
local_port: 34728
http_version: 2
protocol: 2
ssl_verifyresult: 0
scheme: HTTPS
appconnect_time_us: 54015
connect_time_us: 30880
namelookup_time_us: 16706
pretransfer_time_us: 54076
redirect_time_us: 0
starttransfer_time_us: 70305
total_time_us: 70349
effective_method: HEAD
exitCode: 0
error: null
completed: true
created: '2025-01-15T15:00:27+00:00'
updated: '2025-01-15T15:00:27+00:00'
- type: server.os.template.download
dataType: object
data:
system:
success: true
errors: []
commandline: []
data:
- sourceUrl: >-
https://cloud-images.ubuntu.com/noble/current/noble-server-cloudimg-amd64.img
sourceDecompress: ''
destinationPath: >-
/home/vf-data/os/template/ubuntu-noble-server-cloudimg-amd64-2024-04-25.qcow2
exitCode: null
pid: null
finished: false
error: null
errorOutput: null
success: 0
updated: 1736953227
created: '2025-01-15T15:00:27+00:00'
updated: '2025-01-15T15:00:27+00:00'
- type: server.os.template.download.check
dataType: object
data:
success: true
filesize: 609856512
remote: |-
{
"sourceUrl": "https:\/\/cloud-images.ubuntu.com\/noble\/current\/noble-server-cloudimg-amd64.img",
"sourceDecompress": "",
"destinationPath": "\/home\/vf-data\/os\/template\/ubuntu-noble-server-cloudimg-amd64-2024-04-25.qcow2",
"exitCode": 0,
"pid": 387093,
"finished": true,
"error": null,
"errorOutput": null,
"success": true,
"updated": 1736953235,
"decompressOutput": null
}
created: '2025-01-15T15:00:35+00:00'
updated: '2025-01-15T15:00:35+00:00'
- type: server.create.ci
dataType: object
data:
network:
version: 2
ethernets:
ens3:
match:
macaddress: 00:e7:fb:01:87:14
addresses:
- 192.168.4.32/23
- 192.168.4.35/23
gateway4: 192.168.4.1
nameservers:
addresses:
- 8.8.8.8
- 8.8.4.4
routes:
- to: 192.168.4.1
via: 0.0.0.0
scope: link
ens4:
match:
macaddress: 00:f0:4a:c6:3f:08
addresses:
- 192.168.4.33/23
- 192.168.4.34/23
gateway4: 192.168.4.1
nameservers:
addresses:
- 8.8.8.8
- 8.8.4.4
user:
timezone: Europe/London
ssh_pwauth: false
users:
- name: root
ssh-authorized-keys:
- >-
ssh-rsa
AAAAB3NzaC1yc2EAAAADAQABAAACAQC+JdL4fWELBWGAknSu0PwVpDDOlORxy9z7eVnZphZXBzYLMnux+ZogVLns6+O6NDE8JmWvP9RIg3SIga7RDOkW9UCdLzRu0jF2ALL7CK1huo1Ih0PDM9ZbFDy2Fd7a4DTvUX6923fQyW0PWRtyL11R4c9NUqzejKp5kW8vHfPQjzwb1hGIKvkSYkI0Auq4JJhlvjjnoK7Z8t5mpDrVfNTrVqevPgsW5Xwnq8R+02XywrY+Q/wnpxDs3Wjb2aA61A0x5J0xcZQpTQHoJNj77J3VmPI7Ry7Q8hPbTSLGZbN+gODr0lOaL5TdbvM3bnus5JvoqgRoszzPcTiNMZAe3v9UM8hiXise54b8rsc2M9MQ4olPu7TrROZbcw+9q4m6cV+dfVU/NRFkf27YRa4oZNKehHsMiupDyoISgSl4qSB8YXAWsX03oC/gzpB2YJIqEL1Y/SmKYEhgr0cplkvGZy6C/Q9cJHyHlMPtEBPexgcjXC9QrVK4n2cmde3TuSRMctawcat7Nuq08C8fGHaGHr8iAeage3o/ODVOt0rhBu69PknzQeVBdlwK3+p1dH6PnMzNNBhWyNZT/NqB2eS6K8lYpOQ47byXPwYsRLvStUjpZRdikOT7D31T5g8FwOThQ+6WX+xfMD7CSLsSKCn/FhlinbVbG2IhCLH3B30Akw5bUw==
hashed_passwd: ''
lock_passwd: true
runcmd:
- >-
DEBIAN_FRONTEND=noninteractive /usr/bin/apt-get
--option=Dpkg::Options::=--force-confold
--option=Dpkg::options::=--force-unsafe-io
--assume-yes --quiet update
- >-
DEBIAN_FRONTEND=noninteractive /usr/bin/apt-get
--option=Dpkg::Options::=--force-confold
--option=Dpkg::options::=--force-unsafe-io
--assume-yes --quiet install qemu-guest-agent
- /usr/bin/systemctl enable qemu-guest-agent
- /usr/bin/systemctl start qemu-guest-agent
- >-
DEBIAN_FRONTEND=noninteractive /usr/bin/apt-get
--option=Dpkg::Options::=--force-confold
--option=Dpkg::options::=--force-unsafe-io
--assume-yes --quiet dist-upgrade
meta:
instance-id: b9fd9092-7200-4a24-96d4-76aedd664274
local-hostname: elliptical-way
created: '2025-01-15T15:00:35+00:00'
updated: '2025-01-15T15:00:35+00:00'
- type: server.disk.create.os
dataType: object
data:
system:
success: true
commandline:
- result:
success: true
exitOnZero: false
command: >-
'virsh' 'destroy'
'b9fd9092-7200-4a24-96d4-76aedd664274'
exit_code: 1
pid: 387131
started: 1736953235.403454
env:
PATH: >-
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
timeout: 180
output: ''
error: >-
error: failed to get domain
'b9fd9092-7200-4a24-96d4-76aedd664274'
- command: >-
qemu-img info
'/home/vf-data/os/template/ubuntu-noble-server-cloudimg-amd64-2024-04-25.qcow2'
| grep -v grep | grep -w "file format:" | awk '{
print $3 }'
exit_code: 0
output: qcow2
error: ''
- command: >-
'cloud-localds'
'/home/vf-data/server/b9fd9092-7200-4a24-96d4-76aedd664274/cloud-drive.img'
'--network-config=/home/vf-data/server/b9fd9092-7200-4a24-96d4-76aedd664274/network-config-v2.yaml'
'/home/vf-data/server/b9fd9092-7200-4a24-96d4-76aedd664274/user-data.yaml'
'/home/vf-data/server/b9fd9092-7200-4a24-96d4-76aedd664274/meta-data.yaml'
exit_code: 0
output: ''
error: ''
data:
success: true
forkData:
status: true
errors: []
commandline: []
output:
- sourcePath: >-
/home/vf-data/os/template/ubuntu-noble-server-cloudimg-amd64-2024-04-25.qcow2
destinationPath: >-
/home/vf-data/disk/b9fd9092-7200-4a24-96d4-76aedd664274_1.img
convertProcess:
- qemu-img
- convert
- '-f'
- qcow2
- '-O'
- qcow2
- >-
/home/vf-data/os/template/ubuntu-noble-server-cloudimg-amd64-2024-04-25.qcow2
- >-
/home/vf-data/disk/b9fd9092-7200-4a24-96d4-76aedd664274_1.img
resizeProcess:
- qemu-img
- resize
- '-f'
- qcow2
- >-
/home/vf-data/disk/b9fd9092-7200-4a24-96d4-76aedd664274_1.img
- 11G
resizeProcessPid: null
convertProcessPid: null
finished: false
convertProcessOutput: null
resizeProcessOutput: null
convertProcessExitCode: null
resizeProcessExitCode: null
convertProcessError: null
resizeProcessError: null
error: null
success: false
updated: 1736953238
abort: false
error: null
errorException: null
created: '2025-01-15T15:00:38+00:00'
updated: '2025-01-15T15:00:38+00:00'
- type: server.os.install.check
dataType: object
data:
success: true
sourceFilesize: 609856512
destinationFilesize: 1832517808
remote:
sourcePath: >-
/home/vf-data/os/template/ubuntu-noble-server-cloudimg-amd64-2024-04-25.qcow2
destinationPath: >-
/home/vf-data/disk/b9fd9092-7200-4a24-96d4-76aedd664274_1.img
convertProcess:
- qemu-img
- convert
- '-f'
- qcow2
- '-O'
- qcow2
- >-
/home/vf-data/os/template/ubuntu-noble-server-cloudimg-amd64-2024-04-25.qcow2
- >-
/home/vf-data/disk/b9fd9092-7200-4a24-96d4-76aedd664274_1.img
resizeProcess:
- qemu-img
- resize
- '-f'
- qcow2
- >-
/home/vf-data/disk/b9fd9092-7200-4a24-96d4-76aedd664274_1.img
- 11G
resizeProcessPid: 387270
convertProcessPid: 387168
finished: true
convertProcessOutput: ''
resizeProcessOutput: |
Image resized.
convertProcessExitCode: 0
resizeProcessExitCode: 0
convertProcessError: null
resizeProcessError: null
error: null
success: true
updated: 1736953244
created: '2025-01-15T15:00:44+00:00'
updated: '2025-01-15T15:00:44+00:00'
- type: server.vnc.disable
dataType: object
data:
system:
success: true
commandline:
- command: '''/usr/sbin/ufw'' ''deny'' ''5903'''
exit_code: 0
output: |-
Skipping adding existing rule
Skipping adding existing rule (v6)
error: ''
data: []
created: '2025-01-15T15:00:45+00:00'
updated: '2025-01-15T15:00:45+00:00'
- type: server.boot
dataType: object
data:
system:
success: true
errors: []
commandline:
- success: true
exitOnZero: false
command: >-
'virsh' '-q' 'domstate'
'b9fd9092-7200-4a24-96d4-76aedd664274'
exit_code: 1
pid: 387301
started: 1736953245.165795
env:
PATH: >-
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
timeout: 60
output: ''
error: >-
error: failed to get domain
'b9fd9092-7200-4a24-96d4-76aedd664274'
- success: true
exitOnZero: true
command: >-
'virsh' 'create'
'/home/vf-data/server/b9fd9092-7200-4a24-96d4-76aedd664274/server.xml'
exit_code: 0
pid: 387303
started: 1736953245.190122
env:
PATH: >-
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
timeout: 360
output: >-
Domain 'b9fd9092-7200-4a24-96d4-76aedd664274'
created from
/home/vf-data/server/b9fd9092-7200-4a24-96d4-76aedd664274/server.xml
error: ''
- result:
success: true
exitOnZero: true
command: >-
'virsh' 'attach-disk'
'b9fd9092-7200-4a24-96d4-76aedd664274'
'/home/vf-data/server/b9fd9092-7200-4a24-96d4-76aedd664274/cloud-drive.img'
'sdx' '--mode' 'readonly'
exit_code: 0
pid: 387457
started: 1736953246.67152
env:
PATH: >-
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
timeout: 60
output: Disk attached successfully
error: ''
data:
- - filter_list: null
filter_apply: null
filter_apply_success: true
filter_apply_error: false
filter_apply_error_trace: false
filter_apply_cli: null
filter_apply_code: null
tmp_filter_1: >-
/home/vf-data/server/b9fd9092-7200-4a24-96d4-76aedd664274/networkFilter-3933491695.xml
tmp_filter_2: >-
/home/vf-data/server/b9fd9092-7200-4a24-96d4-76aedd664274/networkFilter-3933491695.xml-tmp
sha1: bd9ce80d8372e025e5de8757ec63c042986a48fa
sha1_last: bd9ce80d8372e025e5de8757ec63c042986a48fa
native:
primary: []
secondary:
sha1: 801b6632cbb50f2c8c6dd15037ba9c9d4e03cf50
sha1_last: 801b6632cbb50f2c8c6dd15037ba9c9d4e03cf50
created: '2025-01-15T15:00:46+00:00'
updated: '2025-01-15T15:00:46+00:00'
- type: server.config.statistics
dataType: object
data: []
created: '2025-01-15T15:00:48+00:00'
updated: '2025-01-15T15:00:48+00:00'
subActions: []
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/ssh_keys:
post:
summary: Add an SSH key to a user account
deprecated: false
description: ''
tags:
- SSH Keys
parameters: []
requestBody:
content:
application/json:
schema:
type: object
properties:
userId:
type: integer
name:
type: string
publicKey:
type: string
required:
- userId
- name
- publicKey
example:
userId: 1
name: Key 1
publicKey: >-
ssh-rsa
AAAAB3NzaC1yc2EAAAADAQABAAABAQDF6O4Evybdywpi6PImTE5aJ75+5OpJKyd2QR2LSl0bVxhZjQOqN/4msCp/UjUpFDSeC1SQXeKQb4o7OZ7bUC8k2JbNxnArsYSGi/XhqczKOX/uYOMA/V8gb1e+uishQSzjYrneC0PufFYwNGStjYf0QXCsgQcYLsHbjV2g9j0FhVYxj5endy7Z1K1RMP7IzF5lh3KgtbqKhdJ8XK1fqXCcPHxEuAzjq7G2W+I9xOs8GqftxYGS4XAiOe7YLKfWM00dUdYMJ81R8lZFj5UzP0MOT9qxPNBNiB0MEQX8hc0+2nQdaQYkg8mbCJQxhT9Cr0rXyYdbaNnYWIJql3SVgigJ
responses:
'201':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
id: 2
name: Key 1
type: OpenSSH
createdAt: '2025-01-20T12:16:23.000000Z'
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/ssh_keys/{keyId}:
delete:
summary: Delete an SSH key from a user
deprecated: false
description: ''
tags:
- SSH Keys
parameters:
- name: keyId
in: path
description: A valid SSH key ID as shown in VirtFusion.
required: true
example: 2
schema:
type: integer
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
get:
summary: Retrieve an SSH key
deprecated: false
description: ''
tags:
- SSH Keys
parameters:
- name: keyId
in: path
description: A valid SSH key ID as shown in VirtFusion.
required: true
example: 1
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
id: 1
name: MY SSH Key
publicKey: >-
ssh-rsa
AAAAB3NzaC1yc2EAAAADAQABAAACAQC+JdL4fWELBWGAknSu0PwVpDDOlORxy9z7eVnZphZXBzYLMnux+ZogVLns6+O6NDE8JmWvP9RIg3SIga7RDOkW9UCdLzRu0jF2ALL7CK1huo1Ih0PDM9ZbFDy2Fd7a4DTvUX6923fQyW0PWRtyL11R4c9NUqzejKp5kW8vHfPQjzwb1hGIKvkSYkI0Auq4JJhlvjjnoK7Z8t5mpDrVfNTrVqevPgsW5Xwnq8R+02XywrY+Q/wnpxDs4Ujb2aA61A0x5J0xcZQpTQHoJNj77J3VmPI7Ry7Q8hPbTSLGZbN+gODr0lOaL5TdbvM3bnus5JvoqgRoszzPcTiAQZAe3v9UM8hiXise54b8rsc2M9MQ4olPu7TrROZbcw+9q4m6cV+dfVU/NRFkf27YRa4oZNKehHsMiupDyoISgSl4qSB8YXAWsX03oC/gzpB2YJIqEL1Y/SmKYEhgr0cplkvGZy6C/Q9cJHyHlMPtEBPexgcjXC9QrVK4n2cmde3TuSRMctawcat7Nuq08C8fGHaGHr8iAeage3o/ODVOt0rhBu69PknzQeVBdlwK3+p1dH6PnMzNNBhWyNZT/NqB2eS6K8lYpOQ47byXPwYsRLvStUjpZRdikOT7D31T5g8FwOThQ+6WX+xfMD7CSLsSKCn/FhlinbVbG2IhCLH3B30Akw5bUw==
type: OpenSSH
enabled: true
created: '2024-03-13T20:28:32+00:00'
updated: '2024-03-13T20:28:32+00:00'
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/ssh_keys/user/{userId}:
get:
summary: Retrieve a users SSH keys
deprecated: false
description: ''
tags:
- SSH Keys
parameters:
- name: userId
in: path
description: A valid user ID as shown in VirtFusion.
required: true
example: 1
schema:
type: integer
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
- id: 1
name: My SSH Key
publicKey: >-
ssh-rsa
AAAAB3NzaC1yc2EAAAADAQABAAACAQC+JdL4fWELBWGAknSu0PwVpDDOlORxy9z7eVnZphZXBzYLMnux+ZogVLns6+O6NDE8JmWvP9RIg3SIga7RDOkW9UCdLzRu0jF2ALL7CK1huo1Ih0PDM9ZbFDy2Fd7a4DTvUX6923fQyW0PWRtyL11R4c9NUqzejKp5kW8vHfPQjzwb1hGIKvkSYkI0Auq4JJhlvjjnoK7Z8t5mpDrVfNTrVqevPgsW5Xwnq8R+02XywrY+Q/wnpxDs4Ujb2aA61A0x5J0xcRTpTQHoJNj77J3VmPI7Ry7Q8hPbTSLGZbN+gODr0lOaL5TdbvM3bnus5JvoqgRoszzPcTiNMZAe3v9UM8hiXise54b8rsc2M9MQ4olPu7TrROZbcw+9q4m6cV+dfVU/NRFkf27YRa4oZNKehHsMiupDyoISgSl4qSB8YXAWsX03oC/gzpB2YJIqEL1Y/SmKYEhgr0cplkvGZy6C/Q9cJHyHlMPtEBPexgcjXC9QrVK4n2cmde3TuSRMctawcat7Nuq08C8fGHaGHr8iAeage3o/ODVOt0rhBu69PknzQeVBdlwK3+p1dH6PnMzNNBhWyNZT/NqB2eS6K8lYpOQ47byXPwYsRLvStUjpZRdikOT7D31T5g8FwOThQ+6WX+xfMD7CSLsSKCn/FhlinbVbG2IhCLH3B30Akw5bUw==
type: OpenSSH
enabled: true
created: '2024-03-13T20:28:32+00:00'
updated: '2024-03-13T20:28:32+00:00'
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/users/{extRelationId}/byExtRelation:
delete:
summary: Delete a user
deprecated: false
description: ''
tags:
- Users/External Rel ID & Rel Str
parameters:
- name: extRelationId
in: path
description: A valid external relational ID as shown in VirtFusion.
required: true
example: '1'
schema:
type: string
- name: relStr
in: query
description: ''
required: false
example: 'true'
schema:
type: boolean
default: false
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
put:
summary: Modify a user
deprecated: false
description: ''
tags:
- Users/External Rel ID & Rel Str
parameters:
- name: extRelationId
in: path
description: A valid external relational ID as shown in VirtFusion.
required: true
example: '1'
schema:
type: string
- name: relStr
in: query
description: ''
required: false
schema:
type: boolean
default: false
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Full name of the user.
email:
type: string
description: Email address of the user.
selfService:
type: integer
description: >-
default disabled) 0 = disabled, 1 = hourly, 2 = resource
packs, 3 = hourly & resource packs.
selfServiceHourlyCredit:
type: boolean
description: >-
Enable/disable credit balance billing for hourly self
service. (true|false).
selfServiceHourlyGroupProfiles:
type: array
items:
type: integer
description: >-
(default none) array of self service hourly group profile
ids.
selfServiceResourceGroupProfiles:
type: array
items:
type: integer
description: >-
(default none) array of self service resource group profile
ids.
selfServiceHourlyResourcePack:
type: integer
description: (default none) ID of an hourly self service resource pack.
enabled:
type: boolean
description: >-
(default false) Email the access credentials to the user.
(true|false).
example:
name: jon Doe
email: jon@doe.com
selfService: 3
selfServiceHourlyCredit: true
selfServiceHourlyGroupProfiles:
- 1
- 2
- 3
selfServiceResourceGroupProfiles:
- 4
- 5
- 6
selfServiceHourlyResourcePack: 1
enabled: true
responses:
'201':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
name: jon Doe
email: jon@doe.com
selfService: 3
enabled: true
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
get:
summary: Retrieve a user
deprecated: false
description: ''
tags:
- Users/External Rel ID & Rel Str
parameters:
- name: extRelationId
in: path
description: A valid external relational ID as shown in VirtFusion.
required: true
example: '1'
schema:
type: string
- name: relStr
in: query
description: ''
required: false
schema:
type: boolean
default: false
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
id: 3
admin: false
extRelationId: 1
selfService: 3
selfServiceHourlyGroupProfiles: []
selfServiceResourceGroupProfiles: []
selfServiceHourlyResourcePack: null
name: jon Doe
email: jon@doe.com
timezone: Europe/London
suspended: false
twoFactorAuth: false
created: '2025-01-20T12:48:20.000000Z'
updated: '2025-01-20T13:00:38.000000Z'
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/users/{extRelationId}/authenticationTokens:
post:
summary: Generate a set of login tokens
deprecated: false
description: ''
tags:
- Users/External Rel ID & Rel Str
parameters:
- name: extRelationId
in: path
description: A valid external relational ID as shown in VirtFusion.
required: true
example: '1'
schema:
type: string
- name: relStr
in: query
description: ''
required: false
schema:
type: boolean
default: false
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
authentication:
tokens:
'1': >-
zYpEXpWEeXR4LfogW3xIomIJS5YW8woOjo18h9st6Sh23ReeTEeQNI1RSQWXYv1AImtQzFm0CLrn6Ve8VtIP3MfDnoRWHxQ334UU
'2': >-
RGzuQDFt0KsWgPozaTZDpuXy3aSsbj6VHWbz4JrhGoj0ZOvaGHUcXM6WGeGuNgfTUPLcy0SYMNJWmI1idC8uR88ZSs00XRnEtbG9
endpoint: /token_authenticate
endpoint_complete: >-
/token_authenticate/?1=zYpEXpWEeXR4LfogW3xIomIJS5YW8woOjo18h9st6Sh23ReeTEeQNI1RSQWXYv1AImtQzFm0CLrn6Ve8VtIP3MfDnoRWHxQ334UU&2=RGzuQDFt0KsWgPozaTZDpuXy3aSsbj6VHWbz4JrhGoj0ZOvaGHUcXM6WGeGuNgfTUPLcy0SYMNJWmI1idC8uR88ZSs00XRnEtbG9
expiry:
ttl: 60
expires: '2025-01-20T12:49:52.170943Z'
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/users/{extRelationId}/serverAuthenticationTokens/{serverId}:
post:
summary: Generate a set of loging tokens using a server ID
deprecated: false
description: ''
tags:
- Users/External Rel ID & Rel Str
parameters:
- name: extRelationId
in: path
description: A valid external relational ID as shown in VirtFusion.
required: true
example: '1'
schema:
type: string
- name: serverId
in: path
description: A valid server ID as shown in VirtFusion.
required: true
example: 9
schema:
type: integer
- name: relStr
in: query
description: ''
required: false
schema:
type: boolean
default: false
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
authentication:
tokens:
'1': >-
oIGBk2qEYTXKMGbaDVbpRFqwQC57Rzl5zWKhwQkgDbRBeXSTH865Bvv0Fm8oY6b0xYpH22xbLAKarOAy28PnToxRu5InfmkIHmo0
'2': >-
WwiZ9XwqKM5jNGgCsCsUD4B6DDxAKeolJu3dBN7lsK1uGDVvElvfH77sDyukRIzTbbEI6fggKBXuSYRaYc5FqMab4L6PB0QcOxr9
endpoint: /token_authenticate
endpoint_complete: >-
/token_authenticate/?1=oIGBk2qEYTXKMGbaDVbpRFqwQC57Rzl5zWKhwQkgDbRBeXSTH865Bvv0Fm8oY6b0xYpH22xbLAKarOAy28PnToxRu5InfmkIHmo0&2=WwiZ9XwqKM5jNGgCsCsUD4B6DDxAKeolJu3dBN7lsK1uGDVvElvfH77sDyukRIzTbbEI6fggKBXuSYRaYc5FqMab4L6PB0QcOxr9
expiry:
ttl: 60
expires: '2025-01-20T12:52:59.761522Z'
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/users/{extRelationId}/byExtRelation/resetPassword:
post:
summary: Change a user passowrd
deprecated: false
description: ''
tags:
- Users/External Rel ID & Rel Str
parameters:
- name: extRelationId
in: path
description: A valid external relational ID as shown in VirtFusion.
required: true
example: '1'
schema:
type: string
- name: relStr
in: query
description: ''
required: false
schema:
type: boolean
default: false
responses:
'201':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
email: jon@doe.com
password: zD2VqFKO554tdfWKOmGhw
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/users:
post:
summary: Create a user
deprecated: false
description: ''
tags:
- Users
parameters: []
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Full name of the user.
email:
type: string
description: Email address of the user.
extRelationId:
type: integer
description: Relation ID.
relStr:
type: string
description: Relational string.
selfService:
type: integer
description: >-
(default disabled) 0 = disabled, 1 = hourly, 2 = resource
packs, 3 = hourly & resource packs.
selfServiceHourlyCredit:
type: boolean
description: ' Enable/disable credit balance billing for hourly self service. (true|false).'
selfServiceHourlyGroupProfiles:
type: array
items:
type: integer
description: >-
(default none) array of self service hourly group profile
ids.
selfServiceResourceGroupProfiles:
type: array
items:
type: integer
description: ' (default none) array of self service resource group profile ids.'
selfServiceHourlyResourcePack:
type: integer
description: ' (default none) ID of an hourly self service resource pack.'
sendMail:
type: boolean
description: >-
(default false) Email the access credentials to the user.
(true|false).
required:
- name
- email
example:
name: Jon Doe
email: jon@doe.com
extRelationId: 1
selfService: 3
selfServiceHourlyCredit: true
selfServiceHourlyGroupProfiles:
- 1
- 2
- 3
selfServiceResourceGroupProfiles:
- 4
- 5
- 6
selfServiceHourlyResourcePack: 1
sendMail: false
responses:
'201':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
id: 2
admin: false
extRelationId: 1
selfService: 3
selfServiceHourlyGroupProfiles: []
selfServiceResourceGroupProfiles: []
selfServiceHourlyResourcePack: null
name: Jon Doe
email: jon@doe.com
timezone: Europe/London
suspended: false
twoFactorAuth: false
created: '2025-01-20T12:41:28.000000Z'
updated: '2025-01-20T12:41:28.000000Z'
password: 0hPZSAmj8Tgq1noGoenxpxlC9xf1tc
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/selfService/credit/byUserExtRelationId/{extRelationId}:
post:
summary: Add credit to user
deprecated: false
description: ''
tags:
- Self Service/External Relational ID
parameters:
- name: extRelationId
in: path
description: A valid external relational ID as shown in VirtFusion.
required: true
schema:
type: string
- name: relStr
in: query
description: ''
required: false
example: 'true'
schema:
type: boolean
requestBody:
content:
application/json:
schema:
type: object
properties:
tokens:
type: number
description: A numeric token value.
reference_1:
type: integer
description: ' An optional reference number. Max 64-bit integer.'
reference_2:
type: string
description: An optional reference in string format. Max 1000 character.
required:
- tokens
example:
tokens: 100
reference_1: 400
reference_2: This is a string reference with a 1000 character limit.
responses:
'201':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
id: 2
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/selfService/hourlyGroupProfile/byUserExtRelationId/{extRelationId}:
post:
summary: Add an hourly group profile to a user
deprecated: false
description: ''
tags:
- Self Service/External Relational ID
parameters:
- name: extRelationId
in: path
description: A valid external relational ID as shown in VirtFusion.
required: true
example: '1'
schema:
type: string
- name: relStr
in: query
description: ''
required: false
example: 'true'
schema:
type: boolean
requestBody:
content:
application/json:
schema:
type: object
properties:
profileId:
type: integer
description: ID of an hourly group profile.
required:
- profileId
example:
profileId: 1
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/selfService/resourceGroupProfile/byUserExtRelationId/{extRelationId}:
post:
summary: Add a resource group profile to a user
deprecated: false
description: ''
tags:
- Self Service/External Relational ID
parameters:
- name: extRelationId
in: path
description: A valid external relational ID as shown in VirtFusion.
required: true
example: '1'
schema:
type: string
- name: relStr
in: query
description: ''
required: false
example: 'true'
schema:
type: boolean
requestBody:
content:
application/json:
schema:
type: object
properties:
profileId:
type: integer
description: ID a resource group profile.
required:
- profileId
example:
profileId: 1
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/selfService/resourcePack/byUserExtRelationId/{extRelationId}:
post:
summary: Add a resource pack to a user
deprecated: false
description: ''
tags:
- Self Service/External Relational ID
parameters:
- name: extRelationId
in: path
description: A valid external relational ID as shown in VirtFusion.
required: true
example: '1'
schema:
type: string
- name: relStr
in: query
description: ''
required: false
example: 'true'
schema:
type: boolean
requestBody:
content:
application/json:
schema:
type: object
properties:
packId:
type: integer
description: ID of a resource pack.
enabled:
type: boolean
description: Enable the pack. true|false defaults too true.
required:
- packId
- enabled
example:
packId: 1
enabled: true
responses:
'201':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
id: 17
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/selfService/hourlyStats/byUserExtRelationId/{extRelationId}:
get:
summary: Retrieve hourly statistics
deprecated: false
description: ''
tags:
- Self Service/External Relational ID
parameters:
- name: extRelationId
in: path
description: A valid external relational ID as shown in VirtFusion.
required: true
example: '1'
schema:
type: string
- name: period[]
in: query
description: 'Example: period[]=YYYY-MM-DD&period[]=YYYY-MM-D'
required: false
example: YYYY-MM-DD
schema:
type: string
- name: range
in: query
description: range=m
required: false
example: m
schema:
type: string
- name: relStr
in: query
description: ''
required: false
example: 'true'
schema:
type: boolean
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
periodId: 0
period: January 2025
previousPeriod: December 2024
nextPeriod: February 2025
monthlyTotal:
hours: 0
value: '0.00'
tokens: false
servers: 0
credit:
value: 0
currency:
code: ''
prefix: ''
suffix: ''
value: 0
currentValue: 0
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/selfService/access/byUserExtRelationId/{extRelationId}:
put:
summary: Modify user access
deprecated: false
description: ''
tags:
- Self Service/External Relational ID
parameters:
- name: extRelationId
in: path
description: A valid external relational ID as shown in VirtFusion.
required: true
example: '1'
schema:
type: string
- name: relStr
in: query
description: ''
required: false
example: 'true'
schema:
type: boolean
requestBody:
content:
application/json:
schema:
type: object
properties:
syncToProfiles:
type: boolean
description: >-
true|false Default false. If true, the self service access
level will be set based on profiles.
required:
- syncToProfiles
example:
syncToProfiles: true
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/selfService/hourlyGroupProfile/{profileId}/byUserExtRelationId/{extRelationId}:
delete:
summary: Remove hourly group profile from a user
deprecated: false
description: ''
tags:
- Self Service/External Relational ID
parameters:
- name: profileId
in: path
description: ID of a hourly group profile.
required: true
example: 1
schema:
type: integer
- name: extRelationId
in: path
description: A valid external relational ID as shown in VirtFusion.
required: true
example: '1'
schema:
type: string
- name: relStr
in: query
description: ''
required: false
example: 'true'
schema:
type: boolean
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/selfService/resourceGroupProfile/{profileId}/byUserExtRelationId/{extRelationId}:
delete:
summary: Remove resource group from a user
deprecated: false
description: ''
tags:
- Self Service/External Relational ID
parameters:
- name: profileId
in: path
description: ID of a hourly group profile.
required: true
example: 1
schema:
type: integer
- name: extRelationId
in: path
description: A valid external relational ID as shown in VirtFusion.
required: true
example: '1'
schema:
type: string
- name: relStr
in: query
description: ''
required: false
example: 'true'
schema:
type: boolean
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/selfService/report/byUserExtRelationId/{extRelationId}:
get:
summary: Generate a report
deprecated: false
description: ''
tags:
- Self Service/External Relational ID
parameters:
- name: extRelationId
in: path
description: A valid external relational ID as shown in VirtFusion.
required: true
example: '1'
schema:
type: string
- name: period
in: query
description: >-
A single period in the range of 0-24 (0 being the currently defined
month in the self service settings | optional and will default to
the current month if not defined).
required: false
example: '0'
schema:
type: string
- name: currency
in: query
description: >-
A three letter currency code that is defined in the self service
settings. (optional and will default to the user defined currency if
not defined).
required: false
example: USD
schema:
type: string
- name: relStr
in: query
description: ''
required: false
example: 'true'
schema:
type: boolean
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
usage:
servers: []
serversTotal:
hours: false
value: false
tokens: false
hourConversionRate: false
monthlyTotal:
hours: false
value: false
tokens: false
addonsTotal:
hours: 0
value: 0
tokens: false
taxStatus: 3
success: false
history: '0'
breakdown: true
term: January 2025
previousTerm: December 2024
nextTerm: February 2025
period:
ymd: '2025-01-01'
start: '2025-01-01T00:00:00+00:00'
end: '2025-01-31T00:00:00+00:00'
showHourlyRate: false
showMonthlyRate: false
currency:
prefix: ''
suffix: ''
code: ''
currentValue: 0
value: 0
default:
prefix: ''
suffix: ''
code: ''
limits:
success: true
packs: []
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/selfService/hourlyResourcePack/byUserExtRelationId/{extRelationId}:
put:
summary: Set an hourly resource pack
deprecated: false
description: ''
tags:
- Self Service/External Relational ID
parameters:
- name: extRelationId
in: path
description: A valid external relational ID as shown in VirtFusion.
required: true
example: '1'
schema:
type: string
- name: relStr
in: query
description: ''
required: false
example: 'true'
schema:
type: boolean
requestBody:
content:
application/json:
schema:
type: object
properties:
packId:
type: integer
description: ID of an hourly resource pack.
required:
- packId
example:
packId: 1
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/selfService/usage/byUserExtRelationId/{extRelationId}:
get:
summary: Retrieve a users usage
deprecated: false
description: ''
tags:
- Self Service/External Relational ID
parameters:
- name: extRelationId
in: path
description: A valid external relational ID as shown in VirtFusion.
required: true
example: '1'
schema:
type: string
- name: period[]
in: query
description: Array of periods or a single period. (YYYY-MM-DD).
required: false
example: '2025-01-01'
schema:
type: string
- name: range
in: query
description: >-
Length of period. Defaults to 1 month. Possible values d = day, w =
week, 2w = 2 weeks, 3w = 3 weeks, m = month.
required: false
example: m
schema:
type: string
- name: relStr
in: query
description: ''
required: false
example: 'true'
schema:
type: boolean
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
user:
id: 3
relationalId: 1
currency: null
timezone: Europe/London
name: jon Doe
email: jon@doe.com
usageServers:
hours: 0
token: 0
tokenReal: 0
usageServersBillable:
hours: 0
token: 0
tokenReal: 0
usageAddons:
hours: 0
token: 0
tokenReal: 0
usageAddonsBillable:
hours: 0
token: 0
tokenReal: 0
periods:
- period: '2025-01-01'
range: month
start: '2025-01-01T00:00:00+00:00'
end: '2025-01-31T23:59:59+00:00'
timezone: UTC
currentPeriod: true
hoursInMonthPeriod: 744
monthToHourRate: 730
monthToHourRateType: 1
days: 31
hours: 744
minutes: 44640
seconds: 2678400
usageServers:
hours: 0
token: 0
tokenReal: 0
usageServersBillable:
hours: 0
token: 0
tokenReal: 0
usageAddons:
hours: 0
token: 0
tokenReal: 0
usageAddonsBillable:
hours: 0
token: 0
tokenReal: 0
servers: []
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/selfService/credit/{creditId}:
delete:
summary: Cancel credit that was applied to a user
deprecated: false
description: ''
tags:
- Self Service
parameters:
- name: creditId
in: path
description: A valid credit ID.
required: true
example: 1
schema:
type: integer
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/selfService/resourcePackServers/{packId}:
delete:
summary: Delete all servers attached to a pack ID
deprecated: false
description: ''
tags:
- Self Service
parameters:
- name: packId
in: path
description: ID of a resource pack.
required: true
example: 1
schema:
type: integer
- name: delay
in: query
description: The delay in minutes. Defaults to 30 (0 - 43800).
required: false
example: 30
schema:
type: integer
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/selfService/resourcePack/{packId}:
delete:
summary: Delete a user resource pack
deprecated: false
description: ''
tags:
- Self Service
parameters:
- name: packId
in: path
description: ID of a resource pack.
required: true
example: 1
schema:
type: integer
- name: disable
in: query
description: >-
Disable the pack if it can't be deleted. true|false Defaults to
false.
required: false
example: 'true'
schema:
type: boolean
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
get:
summary: Retrieve a user resource pack
deprecated: false
description: ''
tags:
- Self Service
parameters:
- name: packId
in: path
description: ID of a resource pack.
required: true
example: 1
schema:
type: integer
- name: withServers
in: query
description: include a list of assigned servers. true|false Defaults to false.
required: false
example: 'true'
schema:
type: boolean
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
type: pack
id: 18
pid: 9
label: null
name: Pack 2 · 2 / 4096 / 250
limits:
total_servers: 2
total_memory: 4096
total_storage: 200
total_cpu: 24
total_traffic: 1000000
max_memory: 4096
max_storage: 10
max_cpu: 8
max_traffic: 500000
used:
servers: 0
memory: 0
storage: 0
cpu: 0
traffic: 0
usage:
servers:
t: 2
u: 0
f: 2
p: 0
l: true
memory:
t: 4096
u: 0
f: 4096
p: 0
l: true
storage:
t: 200
u: 0
f: 200
p: 0
l: true
cpu:
t: 24
u: 0
p: 0
f: 24
l: true
traffic:
t: 1000000
u: 0
f: 1000000
p: 0
l: true
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
put:
summary: Modify user resource pack
deprecated: false
description: ''
tags:
- Self Service
parameters:
- name: packId
in: path
description: ID of a resource pack.
required: true
example: 1
schema:
type: integer
requestBody:
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
required:
- enabled
example:
enabled: true
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/selfService/currencies:
get:
summary: Retrieve currencies
deprecated: false
description: ''
tags:
- Self Service
parameters: []
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
properties: {}
example:
data:
- id: 11
code: USD
value: '0.0100000000'
prefix: $
suffix: null
default: true
enabled: true
- id: 12
code: GBP
value: '0.0200000000'
prefix: £
suffix: null
default: false
enabled: true
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/selfService/resourcePackServers/{packId}/suspend:
post:
summary: Suspend all servers assigned to a reosurce pack
deprecated: false
description: ''
tags:
- Self Service
parameters:
- name: packId
in: path
description: ID of a resource pack.
required: true
example: 1
schema:
type: integer
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
/selfService/resourcePackServers/{packId}/unsuspend:
post:
summary: Unsuspend all servers assigned to a reosurce pack
deprecated: false
description: ''
tags:
- Self Service
parameters:
- name: packId
in: path
description: ID of a resource pack.
required: true
example: 1
schema:
type: integer
responses:
'204':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
headers: {}
'401':
$ref: '#/components/responses/401'
description: ''
security:
- bearer: []
components:
schemas: {}
responses:
'401':
description: ''
content:
application/octet-stream:
schema:
type: object
properties: {}
examples:
'401':
summary: '401'
value: 401 Unauthorized
securitySchemes:
bearer:
type: http
scheme: bearer
servers:
- url: https://cp.domain.com/api/v1
description: Example URL
security:
- bearer: []