# Onidel Cloud API - [Authentication](https://developers.onidel.com/api-reference/authentication.md): How to create an API token and use it to authenticate with Onidel - [List OS Templates](https://developers.onidel.com/api-reference/os-template/list-os-templates.md): List prebuilt OS images available for installation. - [List Instance Types](https://developers.onidel.com/api-reference/instance-type/list-instance-types.md): List instance types available for provision - [Get VM Price](https://developers.onidel.com/api-reference/instance-price/get-vm-price.md): Get VM price based on the specified VM configuration parameters. - [List Teams](https://developers.onidel.com/api-reference/teams/list-teams.md): Retrieve all teams the user is a member of - [List ISOs](https://developers.onidel.com/api-reference/custom-iso/list-isos.md): List the team's custom ISOs along with available system ISOs. - [Create an ISO from a URL](https://developers.onidel.com/api-reference/custom-iso/create-an-iso-from-a-url.md): Register a custom ISO by URL. The file is downloaded asynchronously; poll the ISO's status (download percent) until it reaches 100. Subject to the per-team ISO count and maximum file size limits. - [Get an ISO by UUID](https://developers.onidel.com/api-reference/custom-iso/get-an-iso-by-uuid.md): Get a single ISO, including its download status. - [Delete an ISO](https://developers.onidel.com/api-reference/custom-iso/delete-an-iso.md): Delete a custom ISO. The ISO must not be attached to any non-terminated instance. - [List measured boot images](https://developers.onidel.com/api-reference/measured-boot-image/list-measured-boot-images.md): List the team's measured direct boot images (UKIs). - [Upload a measured boot image](https://developers.onidel.com/api-reference/measured-boot-image/upload-a-measured-boot-image.md): Upload a UKI (unified kernel image bundling kernel, initrd and cmdline) for SEV-SNP measured direct boot. Subject to the maximum file size limit. - [Delete a measured boot image](https://developers.onidel.com/api-reference/measured-boot-image/delete-a-measured-boot-image.md): Delete a measured boot image. It must not be attached to any instance. - [List SSH Keys](https://developers.onidel.com/api-reference/ssh-key/list-ssh-keys.md): Retrieve all SSH keys for a team - [Create a new SSH Key](https://developers.onidel.com/api-reference/ssh-key/create-a-new-ssh-key.md): Add a new SSH key to the team - [Get SSH Key by ID](https://developers.onidel.com/api-reference/ssh-key/get-ssh-key-by-id.md): Retrieve a specific SSH key by its UUID - [Update SSH Key](https://developers.onidel.com/api-reference/ssh-key/update-ssh-key.md): Update an existing SSH key - [Delete SSH Key](https://developers.onidel.com/api-reference/ssh-key/delete-ssh-key.md): Delete an SSH key - [List IP Lists](https://developers.onidel.com/api-reference/ip-list/list-ip-lists.md): Retrieve all IP lists for a team. The response also includes the team's limits: ip_list_limit (maximum lists) and ip_list_entry_limit (maximum entries per list). - [Create IP List](https://developers.onidel.com/api-reference/ip-list/create-ip-list.md): Create a new IP list. Limit per team is configurable. - [Get IP List by ID](https://developers.onidel.com/api-reference/ip-list/get-ip-list-by-id.md): Retrieve a specific IP list with all its entries - [Update IP List](https://developers.onidel.com/api-reference/ip-list/update-ip-list.md): Update an IP list's name or description - [Delete IP List](https://developers.onidel.com/api-reference/ip-list/delete-ip-list.md): Delete an IP list. All firewall rules referencing this list will also be removed. - [Add Entry to IP List](https://developers.onidel.com/api-reference/ip-list/add-entry-to-ip-list.md): Add an IP address or CIDR to an IP list. Type is auto-detected if not provided. Supports IPv4 and IPv6 addresses and CIDR ranges. The `/0` prefix is not allowed. - [Delete Entry from IP List](https://developers.onidel.com/api-reference/ip-list/delete-entry-from-ip-list.md): Remove an entry from an IP list - [List Firewall Groups](https://developers.onidel.com/api-reference/firewall/list-firewall-groups.md): Retrieve all firewall groups for a team - [Create Firewall Group](https://developers.onidel.com/api-reference/firewall/create-firewall-group.md): Create a new firewall group - [Get Firewall Group by ID](https://developers.onidel.com/api-reference/firewall/get-firewall-group-by-id.md): Retrieve a specific firewall group by its UUID - [Update Firewall Group](https://developers.onidel.com/api-reference/firewall/update-firewall-group.md): Update a firewall group's description - [Delete Firewall Group](https://developers.onidel.com/api-reference/firewall/delete-firewall-group.md): Delete a firewall group. Cannot delete if VMs are still attached. - [List Firewall Rules](https://developers.onidel.com/api-reference/firewall-rule/list-firewall-rules.md): Retrieve all rules in a firewall group - [Create Firewall Rule](https://developers.onidel.com/api-reference/firewall-rule/create-firewall-rule.md): Add a new rule to a firewall group. - [Get Firewall Rule by ID](https://developers.onidel.com/api-reference/firewall-rule/get-firewall-rule-by-id.md): Retrieve a specific firewall rule - [Update Firewall Rule](https://developers.onidel.com/api-reference/firewall-rule/update-firewall-rule.md): Update a firewall rule's description (max 255 characters) - [Delete Firewall Rule](https://developers.onidel.com/api-reference/firewall-rule/delete-firewall-rule.md): Delete a firewall rule from a group - [List VPCs](https://developers.onidel.com/api-reference/vpc/list-vpcs.md): Retrieve all VPCs for a team - [Create a new VPC](https://developers.onidel.com/api-reference/vpc/create-a-new-vpc.md): Create a new Virtual Private Cloud network - [Get VPC by ID](https://developers.onidel.com/api-reference/vpc/get-vpc-by-id.md): Retrieve a specific VPC by its UUID - [Update VPC](https://developers.onidel.com/api-reference/vpc/update-vpc.md): Update an existing VPC's name, description, or shared teams - [Delete VPC](https://developers.onidel.com/api-reference/vpc/delete-vpc.md): Delete a VPC (must not have any attached VMs) - [List reserved IPs](https://developers.onidel.com/api-reference/reserved-ips/list-reserved-ips.md): Get all reserved IPs for the authenticated user's team or specified team - [Create a new reserved IP](https://developers.onidel.com/api-reference/reserved-ips/create-a-new-reserved-ip.md): Allocate a new reserved IP address in the specified location - [Convert VM's primary IP to reserved IP](https://developers.onidel.com/api-reference/reserved-ips/convert-vms-primary-ip-to-reserved-ip.md): Convert an existing VM's primary public IP address into a reserved IP (floating IP) - [Get a specific reserved IP](https://developers.onidel.com/api-reference/reserved-ips/get-a-specific-reserved-ip.md): Retrieve details of a specific reserved IP by ID - [Update reserved IP (rename or attach/detach VM)](https://developers.onidel.com/api-reference/reserved-ips/update-reserved-ip-rename-or-attachdetach-vm.md): Update reserved IP properties - rename it or attach/detach it to/from a VM - [Delete a reserved IP](https://developers.onidel.com/api-reference/reserved-ips/delete-a-reserved-ip.md): Terminate a reserved IP and release it back to the pool. Will automatically detach from VM if attached. - [List VMs](https://developers.onidel.com/api-reference/virtual-machine/list-vms.md): List all VMs available to the user - [Provision a new VM](https://developers.onidel.com/api-reference/virtual-machine/provision-a-new-vm.md): Provision a new VM - [Get a VM by UUID](https://developers.onidel.com/api-reference/virtual-machine/get-a-vm-by-uuid.md): Gets a VM by its UUID - [Get all backups of the VM](https://developers.onidel.com/api-reference/virtual-machine/get-all-backups-of-the-vm.md): Get all backups of the VM - [Stop a VM](https://developers.onidel.com/api-reference/virtual-machine/stop-a-vm.md): Gracefully shut down the VM. - [Reboot a VM](https://developers.onidel.com/api-reference/virtual-machine/reboot-a-vm.md): Reboot the VM. - [Restore a VM from a snapshot](https://developers.onidel.com/api-reference/virtual-machine/restore-a-vm-from-a-snapshot.md): Restore a VM from a snapshot. - [Restore a VM from a backup](https://developers.onidel.com/api-reference/virtual-machine/restore-a-vm-from-a-backup.md): Restore a VM from a backup. - [Take a snapshot](https://developers.onidel.com/api-reference/virtual-machine/take-a-snapshot.md): Take a snapshot of the VM. - [Enable BGP](https://developers.onidel.com/api-reference/virtual-machine/enable-bgp.md): Enable BGP for the VM (requires an active BGP session in the location). - [Disable BGP](https://developers.onidel.com/api-reference/virtual-machine/disable-bgp.md): Disable BGP for the VM. - [Attach a measured boot image](https://developers.onidel.com/api-reference/virtual-machine/attach-a-measured-boot-image.md): Attach a measured boot image (UKI) to the VM and power-cycle to apply it. SEV-SNP must already be enabled. - [Detach the measured boot image](https://developers.onidel.com/api-reference/virtual-machine/detach-the-measured-boot-image.md): Clear the VM's measured boot image and power-cycle to apply. - [Update VM configuration](https://developers.onidel.com/api-reference/virtual-machine/update-vm-configuration.md): Update VM configuration - [Destroy the VM](https://developers.onidel.com/api-reference/virtual-machine/destroy-the-vm.md): Destroy the VM - [List reverse DNS (PTR) records](https://developers.onidel.com/api-reference/virtual-machine/list-reverse-dns-ptr-records.md): List the reverse DNS records configured for the VM's IP addresses. - [Set a reverse DNS (PTR) record](https://developers.onidel.com/api-reference/virtual-machine/set-a-reverse-dns-ptr-record.md): Set the reverse DNS record for one of the VM's IP addresses. The domain must already resolve (A/AAAA) to the IP being configured. - [Delete a reverse DNS (PTR) record](https://developers.onidel.com/api-reference/virtual-machine/delete-a-reverse-dns-ptr-record.md): Delete the reverse DNS record for one of the VM's IP addresses. - [Open a noVNC console session](https://developers.onidel.com/api-reference/virtual-machine/open-a-novnc-console-session.md): Creates a noVNC console session for the specified VM. Returns a URL to access the VM console via noVNC in a browser. The session token expires after 30 seconds if not used. - [List backups](https://developers.onidel.com/api-reference/backups/list-backups.md): List backups available to the user - [Generate backup download URL](https://developers.onidel.com/api-reference/backups/generate-backup-download-url.md): Generate backup download URL - [List snapshots](https://developers.onidel.com/api-reference/snapshots/list-snapshots.md): List snapshots available to the user - [Generate snapshot download URL](https://developers.onidel.com/api-reference/snapshots/generate-snapshot-download-url.md): Generate snapshot download URL - [Delete a snapshot](https://developers.onidel.com/api-reference/snapshots/delete-a-snapshot.md): Delete a snapshot - [List Startup Scripts](https://developers.onidel.com/api-reference/startup-script/list-startup-scripts.md): Retrieve all startup scripts for a team - [Create a new Startup Script](https://developers.onidel.com/api-reference/startup-script/create-a-new-startup-script.md): Add a new startup script to the team. Maximum 10 scripts per team. - [Get Startup Script by ID](https://developers.onidel.com/api-reference/startup-script/get-startup-script-by-id.md): Retrieve a specific startup script by its UUID, including content - [Update Startup Script](https://developers.onidel.com/api-reference/startup-script/update-startup-script.md): Update an existing startup script - [Delete Startup Script](https://developers.onidel.com/api-reference/startup-script/delete-startup-script.md): Delete a startup script - [List Object Storage Services](https://developers.onidel.com/api-reference/object-storage/list-object-storage-services.md): Retrieve all object storage services for the team - [Get Object Storage Service](https://developers.onidel.com/api-reference/object-storage/get-object-storage-service.md): Retrieve details of a specific object storage service - [Create a Bucket](https://developers.onidel.com/api-reference/object-storage/create-a-bucket.md): Create a new bucket in the object storage service - [Get Bucket Access Keys](https://developers.onidel.com/api-reference/object-storage/get-bucket-access-keys.md): Retrieve access keys for a specific bucket ## OpenAPI Specs - [openapi](/api-reference/openapi.yaml) ## Optional - [Knowledge Base](https://kb.onidel.com) - [Website](https://onidel.com) - [Control Panel](https://cloud.onidel.com)