Ludus 2 is in BETA. This API is subject to change until Ludus 2 is released.
Ludus API
Copy Page
Ludus API
Host Management
Retrieve the ludus version
GET
Retrieve the ludus license
GET
Diagnostics
GET
Ansible Management
Retrieve available Ansible roles and collections
GET
Install or Remove an Ansible role
POST
Install an Ansible role from local directory
PUT
Install an Ansible collection
POST
User Management
whoami
GET
Get Default Range ID
GET
Set Default Range ID
POST
List user details
GET
Add a user to the system
POST
Remove a user from the system
DELETE
Get proxmox creds for a user
GET
Set the Ludus and Proxmox creds for the user
POST
List all users
GET
Reset and retrieve the Ludus API key for a user
GET
Retrieve a WireGuard configuration file for a user
GET
Range Management
VM Management
Destroy VM
List range VMs, power state, and testing state
Delete a range from the database and proxmox host
Stop the range deployment ansible process
Stop and delete all range VMs
List all tags available to use with deploy
List summary information for all ranges
Retrieve range configuration
Update the range configuration
Retrieve an example range configuration
Deploy the range
Retrieve the latest range logs
Retrieve /etc/hosts file for the range
Retrieve a ssh config
Retrieve a zip file of RDP configs
Retrieve an ansible inventory
Create a new range
Assign a range to a user (admin only)
Revoke range access from a user (admin only)
List users with access to a range (admin only)
List ranges accessible to the user
Power State Management
Power on range VMs
Power off range VMs
Testing State Management
Snapshot and enter testing state
Revert and exit testing state
Allow a domain
Deny a domain
Update a VM or group
Anti-Sandbox Management
Enable anti-sandbox for a VM or multiple VMs (enterprise)
Install the custom QEMU/OMVF packages
Install the standard QEMU/OMVF packages
Template Management
Retrieve a list of VM templates
Build templates
Install an Ansible role from local directory
Delete a template
Kill packer processes for user
Retrieve the latest packer logs
Get the status of packer builds
Snapshot Management
Get all snapshots for a range
Take a snapshot of a VM or multiple VMs
Roll back to a snapshot of a VM or multiple VMs
Delete a snapshot from a VM or multiple VMs
KMS Management
Setup the KMS VM and install the KMS server
License Windows VMs using the KMS server
Group Management
Create a new group
List all groups
Delete a group
Add user to group
Remove user from group
Add range to group
Remove range from group
List group members
List group ranges
Migration
Migrate SQLite to PocketBase
Virtual Consoles
Get Console Websocket Ticket
Connect to VM Console WebSocket
Schemas
userID
rangeID
UserObject
UserAPIKeyObject
UserCredentialObject
RangeObject
VMObject
Domain
IP
AllowPayload
SnapshotInfo
ErrorInfo
SnapshotCreatePayload
LicenseDataObject
userID
Copy Page
Must be a unique 1-20 character alpha-numeric string.
Initials are commonly used.
"JD"