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: '« 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 » 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: '« 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 » 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: >- iVBORw0KGgoAAAANSUhEUgAAAJYAAABTCAAAAABYT6E5AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QA/4ePzL8AAAAHdElNRQfpARESACeS8jvVAAAI2klEQVRo3u2W+XMjxRXHX3fPfWhG1+i0ZMmXbK3t9dq7bFg2ARKgSFWSn5If8+/lx1xFhSpCQSWppVhYWKB2F+y1JV+yLI1kndbcnR98LBACJGxCUjWfH3r6eN39puf1dx7A/yboiy2EvsHiv+wY+vL2CP2jQ+irjP8TbpP5fiCJtm4BAEBclUURuzFxotnnBqkgZ3uQcCXncs75WAy5oHiKA1x8/NTd+mW8LN0+WIJl+UpdfJH91XSEZZfw8Kq4kpEzKRNeOq50JzMvNEupVCET1QXlWr8qzsbL6Yimt4Wft18YFyPVLUyfrlu43YOupbpGjFOxY6p/enjK+1uFiEvkhK4olLZygQ3RFiCRU9GV6bEfYYPMItUzquWC1QgOE+t4jIKnfVzoc+VllXnSJojBZ/0EkzkdAADiC5dzEKgVljxtp+B7u2j/jldf0YkQAMIIEAA6a6CzKuAvzkJftdjnrjWCy4P+v4PMiWogYJEiCiJKcpRhPRYvH0M8PyKEpAF7qgvxEqpET0uZdDw1kxitNmDej8/qs8XJdXupX+36PEuxgOcHPGb8dTNAJQcBEhnis/jK8SqT4qvl0TzKEOzT8myQcCp9lsELHYoUwOmILfqYQtFhPACJeFwgsMwvXkt0K9ulZqR+utB1pMLuTGv6D4WPQJzOR+SP5eHGvZHjxCIuX0nWb7mDZnKYzX/Argz6aE7e28jCas2ouavxMY7UZqXF41t75JjfnrlmR3aym1cb0380nln4iIoeqVTu+2TkBFOJibaoLh3EttYOBten94rd0SIF+28wx/3ojd1MjuWn6+oeuv5YxPqpiFZ+d1oKHP7Zjy0ibcfrVEhhuP5ZA0XNoQNCGmEX+R4JxH6kn6qxmk5NjAOB7BtDbT/IqZpeGzpKYGdc9zHNrW/bvE13ZpBSSzhil9PGNBiJXD8YBRm9obEI92MtzjoxtF7iOELqt5k3YbabOuwn27pBEWwCQBIAgOGRDgAgAgBAAqCogs6KZQbIVKpgQASMtB6bikhiVMMkDyAZBT4mFjQgaSEDEMsCaLiQTRvGVIZTzyJEOo8U+Un4ZwDw2R6QhMRZhRVnzkdljTurMQvjsmGMpffLD5eJyzXSZq6Rv3PjzUrWVKIdV+Pyo6XtOGcS+niZC47y629n2zOmJWfFzOl7cw9yGXmi3FvT4ny2EWTvFE90nLEblqEi20/sbXyw0L3y+gGsY5dr5FrZw/w7a03IZG38kfTcVqF+e0dqGW97r2xXYmKz/OlueeGw0oS/stfrpLiV9GVpemTiKvVVijYLrHrEcO12lulIzYEhD9yHk07U5IaPcde+54+YftTeNNSj/gFnW3Z7pr/XT7HKfcVvY3u4qb3Lb8aVelRMJd3+qUSd/BHLLgW+SmFzio02pAMqq76yz890XQFPbNJq00BwJG2ojExHGwnkpImnTwAAgJeqAHr5QlYIYITh24LZiw+EgMCliqW1Swu99Hl75tusSSpsOnZzKxZkYZBOpNg17Tj949rK6Lqf68C8khZvdmZJKlcYzbHRuDAmr4g8X4JYOYpzsmqgCf9M74dWWVZjyrr7/PECGlFIGLKsawiKXFJ4dnfNzfr+CBbUqHSrUZDXmlWa1LT+17tFmR/UjODALaamu9Tfv7IzdxeUnp3d5lb9rWDl0407tJrbXH0kiaksy9uvJfLuSoNGZu7rp1nZjR/+BfEeXH3u8YHgjTVlzmbm644xFxDekUfiZum+IEeda17wG7T8aKXuz916Q5aTuhawPTqiiAKiAAgoAKDz4vyJFAcoscVo8S4b2AwIjsNhSx2KE3kM8lgdE4It1uYDDMhFHpJtBp8ifiJ5GAU+9YHxo2NPcnxEJc/iLKMFPOvgpYnUO3KkgeBzNsypd0E61Xss79qCLXt4ggD5X6/y1WE5zgdLFIu5GTtHutySuSznkonsSTXpFA6Bd1wO4rE+F7ipTAdEfWITzBA78PJuQivac2U0vnZQMRnHdvURO8b6CKKJrU6r64goOfFdLJj7DMqK5uziTtUJlrkWXc1OJ4xxtf9MoqDNCgUxUTCfHVJ1dUEMKuxaC9YJUzrSyY031Qr6ZKpfYoXu1IYo1o14JhlP9gbpR+pLbcFn28lFNKX3Np0T5sUh7/SJnfXb7YXl+1or2S7G1j/J1yWLWeJUOf5Z6v1kqzwdkbaslvvCgHcHxMp57U5Ex+QnU3l1K78guGytqGtV245PbY+NuffVqSKmv66n7ICmGvaLlH+EskHSFCdyN3JKbBb8oZAKuBaM82MBbIc/YMvWjQf+gRH4kjQ5aeHbbsOX/CabICOX4U8UT28ntrM9xWTGgtouOorfD07EBCYr7Ye95+2OzVltMY57VBj0Zn1mxIwTAXInLkqM1ZOgVzLdQcniXS44LjdjJ5GRfmLHMd2DDAFIAoh8tJwvFNKz5zIL7IXeKsLFB4+IDNEh+STpi3MgKQAAYFwItwwAGs8DiOhc3aPcxZ8EACJnCh9/EkQKAIAhAyg8gHKpIjc/nt9+9RNWHOzM7pTt6WNEpWgPRE/yWS8/+T0kNrq8M44OVW8Ajmn3+GsTgkbABUjYTTbr0Z9+Jh0YvcXGWD1+QDfeXZzceIdwZIw/YF5uprenTVfNdyZC5LfqzU72w0b+Rh33JJQatDOb27klK7ASd9WpoPTnuPvqh6mD0m7hdRrAy0f4SOIGbwXdmsvdc997cHfHsGosexXYLcvtOX5KTrGMxwvbPSzh0cTxIeaZ4AvM5ogVSN+hVo2YAiPUvKG7Q+HEmwQO9bdPfQLM8MDBDBOYJu37+0ApZzZp/xB3BQ72rclol1Lqyfsnkw5Azez4Rx5nHvLHsXkK9uMnwgoAQM5SRrF0mUriRQm+E/9qDooxAACq9q6+NWXN3FlqKm6w++UlKVxI3Rf66T9rfKP1txwiP5sQ8bl6sl1gV8vikWh/+RW/n4wbqWOGgCW6rIOWrS1sf/clQ0JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQp4afwdRMMFLNhfN2wAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyNS0wMS0xN1QxODowMDozOSswMDowMDazUncAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjUtMDEtMTdUMTg6MDA6MzkrMDA6MDBH7urLAAAAAElFTkSuQmCC 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: '« 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 » 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.

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: os: devices: features: clock: cpuTune: 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: '« 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 » 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: '« Previous' active: false - url: https://192.168.3.11/api/v1/connectivity/ipblocks?page=1 label: '1' active: true - url: null label: Next » 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.

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.

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: []