Delete virtual machine

Moves an existing virtual machine to the trash.

DELETE
https://api.katapult.io/core/v1/virtual_machines/{virtual_machine}

If successful, this endpoint will return a 200 OK status.

Scopes

One of the following scopes are required to use this endpoint.

Arguments

The following arguments are supported for this endpoint.

Name Type Default Value

virtual_machine

VirtualMachine Lookup None

Potential Errors

The following errors may occur during this request.

Details HTTP status

object_in_trash

The object found is in the trash and therefore cannot be manipulated through the API. It should be restored in order to run this operation.

406 Not Acceptable

permission_denied

The authenticated identity is not permitted to perform this action

403 Forbidden

virtual_machine_not_found

No virtual machine was found matching any of the criteria provided in the arguments

404 Not Found

Returned Object

When the request is successful, you can expect an object matching the specification below to be returned.

{
    trash_object: TrashObject {
        id: String
        keep_until: Unix Timestamp
        object_id: String
        object_type: String
    }
    virtual_machine: VirtualMachine {
        id: String
        name: String
        hostname: String
        fqdn: String
        description: String?
        created_at: Unix Timestamp
        initial_root_password: String?
        state: VirtualMachineStateEnum
        zone: Zone {
            id: String
            name: String
            permalink: String?
            data_center: DataCenter {
                id: String
                name: String
                permalink: String
                country: Country {
                    id: String
                    name: String
                    iso_code2: String
                    iso_code3: String
                    time_zone: String?
                    eu: Boolean
                }
            }
        }
        organization: Organization {
            id: String
            name: String
            sub_domain: String
            infrastructure_domain: String
            created_at: Unix Timestamp
            activated_at: Unix Timestamp?
            suspended: Boolean
            managed: Boolean
            billing_name: String?
            address1: String?
            address2: String?
            address3: String?
            address4: String?
            postcode: String?
            vat_number: String?
            phone_number: String?
            currency: Currency {
                id: String
                name: String
                iso_code: String
                symbol: String
            }
            country: Country? {
                id: String
                name: String
                iso_code2: String
                iso_code3: String
                time_zone: String?
                eu: Boolean
            }
            country_state: CountryState? {
                id: String
                name: String
                code: String
                country: Country {
                    id: String
                    name: String
                    iso_code2: String
                    iso_code3: String
                    time_zone: String?
                    eu: Boolean
                }
            }
        }
        group: VirtualMachineGroup? {
            id: String
            name: String
            segregate: Boolean
            auto_segregate: Boolean
            created_at: Unix Timestamp
        }
        package: VirtualMachinePackage? {
            id: String
            name: String
            permalink: String
            cpu_cores: Integer
            ipv4_addresses: Integer
            memory_in_gb: Integer
            storage_in_gb: Integer
            monthly_bandwidth_allowance_in_gb: Integer?
            privacy: PrivacyTypesEnum
            icon: Attachment? {
                url: String
                file_name: String
                file_type: String
                file_size: Integer
                digest: String
                token: String
            }
            use_dedicated_cpus: Boolean
        }
        attached_iso: ISO? {
            id: String
            name: String
            operating_system: OperatingSystem? {
                id: String
                name: String
                badge: Attachment? {
                    url: String
                    file_name: String
                    file_type: String
                    file_size: Integer
                    digest: String
                    token: String
                }
            }
        }
        memory_in_gb: Integer?
        cpu_cores: Integer?
        use_dedicated_cpus: Boolean?
        gpu_type: GPUType? {
            id: String
            name: String
            manufacturer: String
            memory_in_gb: Integer
            memory_type: String
            permalink: String
        }
        gpus: [ VirtualMachineGPU {
            id: String?
            status: VirtualMachineGPUStatusEnum
            pending_action: VirtualMachineGPUPendingActionEnum?
            available: Boolean
            type: GPUType {
                id: String
                name: String
                manufacturer: String
                memory_in_gb: Integer
                memory_type: String
                permalink: String
            }
        } ]
        tags: [ Tag {
            id: String
            name: String
            color: TagColorsEnum
            created_at: Unix Timestamp
        } ]
        tag_names: [ String ]
        ip_addresses: [ IPAddress {
            id: String
            address: String
            reverse_dns: String
            vip: Boolean
            label: String?
            address_with_mask: String
            network: Network {
                id: String
                name: String
                permalink: String?
                data_center: DataCenter {
                    id: String
                    name: String
                    permalink: String
                    country: Country {
                        id: String
                        name: String
                        iso_code2: String
                        iso_code3: String
                        time_zone: String?
                        eu: Boolean
                    }
                }
            }
            allocation_id: String?
            allocation_type: String?
        } ]
    }
}