Download OpenAPI specification:Download
This API is used by Mammoth Cloud's 'mPanel' website, so you'll find everything you need here to automate your use of Mammoth Cloud or develop tools for others. You could even build your own version of 'mPanel' if you wanted!
We are working on a complete 'Getting Started' guide as well as this introductory section.
Warning: this specification is currently in active development. Until this warning is removed breaking changes are possible without the version changing. However, this API is relatively mature and we are actively developing a new website and other tools against this API so breaking changes should be rare at this point.
We currently have a CLI (command line interface) tool in development and are in the early stage of planning other tools.
We welcome all feedback from API users at the support email address above.
This is the list of Mammoth Cloud features that are not yet available through the API but are currently under active development. If you need an ETA on when these will be available please contact support.
This is the list of Mammoth Cloud features that are not yet available through the API and are not currently in active development. This list is in a rough order of priority. If you need an ETA or want to ask for increased priority on any of these please contact support, we are happy to hear any feedback on this.
This section will include links to tools to assist with consuming this API. We have a CLI tool and a GO library in active development, and are planning libraries for other languages.
This section will contain a link to our changelog once the developer preview period is complete.
required | object | ||||||||||||||||||||||
|
curl -X GET "https://api.mammoth.com.au/v2/account" \ -H "Authorization: Bearer ${APITOKEN}"
{- "account": {
- "email": "string",
- "email_verified": true,
- "two_factor_authentication_enabled": true,
- "status": "incomplete",
- "tax_code": {
- "name": "string",
- "type": "none",
- "fixed_percent": 0
}, - "configured_payment_methods": [
- "credit-card"
]
}
}
required | object | ||||||||
|
curl -X GET "https://api.mammoth.com.au/v2/customers/my/balance" \ -H "Authorization: Bearer ${APITOKEN}"
{- "balance": {
- "unbilled_total": 0,
- "available_credit": 0,
- "charges": [
- {
- "created": "2019-08-24T14:15:22Z",
- "description": "string",
- "total": 0,
- "ongoing": true
}
], - "generated_at": "2019-08-24T14:15:22Z"
}
}
invoice_id required | integer <int64> The ID of the invoice to fetch. |
required | object | ||||||||||||||||||||||||||||
|
curl -X GET "https://api.mammoth.com.au/v2/customers/my/invoices/${invoice_id}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "invoice": {
- "invoice_id": 0,
- "reference": "string",
- "invoice_number": "string",
- "amount": 0,
- "tax_code": {
- "name": "string",
- "type": "none",
- "fixed_percent": 0
}, - "tax": 0,
- "created": "2019-08-24T14:15:22Z",
- "date_due": "2019-08-24T14:15:22Z",
- "date_overdue": "2019-08-24T14:15:22Z",
- "paid": true,
- "refunded": true,
- "payment_failure_count": 0,
- "invoice_items": [
- {
- "name": "string",
- "amount": 0,
- "amount_includes_tax": true
}
], - "invoice_download_url": "string"
}
}
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (Invoice) |
curl -X GET "https://api.mammoth.com.au/v2/customers/my/invoices?page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "invoices": [
- {
- "invoice_id": 0,
- "reference": "string",
- "invoice_number": "string",
- "amount": 0,
- "tax_code": {
- "name": "string",
- "type": "none",
- "fixed_percent": 0
}, - "tax": 0,
- "created": "2019-08-24T14:15:22Z",
- "date_due": "2019-08-24T14:15:22Z",
- "date_overdue": "2019-08-24T14:15:22Z",
- "paid": true,
- "refunded": true,
- "payment_failure_count": 0,
- "invoice_items": [
- {
- "name": "string",
- "amount": 0,
- "amount_includes_tax": true
}
], - "invoice_download_url": "string"
}
]
}
Any invoices that are unpaid and have a failed payment attempt may block the ability to renew existing services or add new services.
required | Array of objects (Invoice) | ||||||||||||||||||||||||||||
Array
|
curl -X GET "https://api.mammoth.com.au/v2/customers/my/unpaid-payment-failed-invoices" \ -H "Authorization: Bearer ${APITOKEN}"
{- "invoices": [
- {
- "invoice_id": 0,
- "reference": "string",
- "invoice_number": "string",
- "amount": 0,
- "tax_code": {
- "name": "string",
- "type": "none",
- "fixed_percent": 0
}, - "tax": 0,
- "created": "2019-08-24T14:15:22Z",
- "date_due": "2019-08-24T14:15:22Z",
- "date_overdue": "2019-08-24T14:15:22Z",
- "paid": true,
- "refunded": true,
- "payment_failure_count": 0,
- "invoice_items": [
- {
- "name": "string",
- "amount": 0,
- "amount_includes_tax": true
}
], - "invoice_download_url": "string"
}
]
}
server_id required | integer <int64> The ID of the server to fetch. |
required | object | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
curl -X GET "https://api.mammoth.com.au/v2/servers/${server_id}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "server": {
- "id": 0,
- "name": "string",
- "memory": 0,
- "vcpus": 0,
- "disk": 0,
- "vpc_id": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "status": "new",
- "backup_ids": [
- 0
], - "features": [
- "string"
], - "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "image": {
- "id": 0,
- "name": "string",
- "type": "custom",
- "distribution": "string",
- "full_name": "string",
- "slug": "string",
- "public": true,
- "regions": [
- "string"
], - "created_at": "2019-08-24T14:15:22Z",
- "min_disk_size": 0,
- "size_gigabytes": 0,
- "description": "string",
- "status": "NEW",
- "error_message": "string",
- "min_memory_megabytes": 0,
- "distribution_surcharges": {
- "surcharge_base_cost": 0,
- "surcharge_per_memory_megabyte": 0,
- "surcharge_per_memory_max_megabytes": 0,
- "surcharge_per_vcpu": 0,
- "surcharge_min_vcpu": 0
}, - "distribution_info": {
- "image_id": 0,
- "password_recovery": "manual",
- "remote_access_user": "string",
- "features": [
- "ssh"
]
}, - "backup_info": {
- "type": "daily",
- "server_id": 0,
- "offsite": true,
- "locked": true,
- "iso": true,
- "backup_disks": [
- {
- "id": 0,
- "size_gigabytes": 0,
- "min_disk_size": 0,
- "description": "string"
}
]
}
}, - "size": {
- "slug": "string",
- "description": "string",
- "cpu_description": "string",
- "storage_description": "string",
- "size_type": {
- "slug": "string",
- "name": "string",
- "description": "string"
}, - "available": true,
- "regions": [
- "string"
], - "regions_out_of_stock": [
- "string"
], - "price_monthly": 0,
- "price_hourly": 0,
- "distribution_surcharge_credit_monthly": 0,
- "disk": 0,
- "memory": 0,
- "transfer": 0,
- "excess_transfer_cost_per_gigabyte": 0,
- "vcpus": 0,
- "vcpu_units": "string",
- "options": {
- "disk_min": 0,
- "disk_max": 0,
- "disk_cost_per_additional_gigabyte": 0,
- "restricted_disk_values": [
- 0
], - "memory_max": 0,
- "memory_cost_per_additional_megabyte": 0,
- "transfer_max": 0,
- "transfer_cost_per_additional_gigabyte": 0,
- "ipv4_addresses_max": 0,
- "ipv4_addresses_cost_per_address": 0,
- "discount_for_no_public_ipv4": 0,
- "daily_backups": 0,
- "weekly_backups": 0,
- "monthly_backups": 0,
- "backups_cost_per_backup_per_gigabyte": 0,
- "offsite_backups_cost_per_gigabyte": 0,
- "offsite_backup_frequency_cost": {
- "daily_per_gigabyte": 0,
- "weekly_per_gigabyte": 0,
- "monthly_per_gigabyte": 0
}
}
}, - "size_slug": "string",
- "selected_size_options": {
- "daily_backups": 0,
- "weekly_backups": 0,
- "monthly_backups": 0,
- "offsite_backups": true,
- "service_level_id": 0,
- "ipv4_addresses": 0,
- "memory": 0,
- "disk": 0,
- "transfer": 0
}, - "networks": {
- "v4": [
- {
- "ip_address": "string",
- "netmask": 5,
- "gateway": "string",
- "type": "private",
- "reverse_name": "string",
- "nat_target": "string"
}
], - "v6": [
- {
- "ip_address": "string",
- "netmask": 5,
- "gateway": "string",
- "type": "private",
- "reverse_name": "string",
- "nat_target": "string"
}
], - "port_blocking": true,
- "separate_private_network_interface": true,
- "source_and_destination_check": true,
- "recent_ddos": true,
- "ipv6_reverse_nameservers": [
- "string"
]
}, - "kernel": {
- "id": 0,
- "name": "string",
- "version": "string"
}, - "next_backup_window": {
- "start": "2019-08-24T14:15:22Z",
- "end": "2019-08-24T14:15:22Z"
}, - "disks": [
- {
- "id": 0,
- "size_gigabytes": 0,
- "description": "string",
- "primary": true
}
], - "backup_settings": {
- "backup_hour_of_day": 0,
- "backup_day_of_week": 0,
- "backup_day_of_month": 0,
- "offsite_backup_settings": {
- "use_custom_backup_location": true,
- "offsite_backup_location": "string",
- "manage_offsite_copies": true
}
}, - "cancelled_at": "2019-08-24T14:15:22Z",
- "failover_ips": [
- "string"
], - "host": {
- "display_name": "string",
- "uptime_ms": 0,
- "status_page": "string"
}, - "partner_id": 0,
- "password_change_supported": true,
- "permalink": "string",
- "attached_backup": {
- "id": 0,
- "disk_identifiers": [
- "string"
], - "attached_at": "2019-08-24T14:15:22Z",
- "attachment_expires": "2019-08-24T14:15:22Z"
}, - "advanced_features": {
- "processor_model": 0,
- "machine_type": "pc_i440fx_1point5",
- "video_device": "cirrus-logic",
- "enabled_advanced_features": [
- "emulated-hyperv"
]
}
}
}
server_id required | integer <int64> The ID of the server to be cancelled. |
reason | string [ 0 .. 250 ] characters The reason for cancelling the server. |
curl -X DELETE "https://api.mammoth.com.au/v2/servers/${server_id}?reason=${reason}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "type": "string",
- "title": "string",
- "status": 0,
- "detail": "string",
- "instance": "string",
- "property1": null,
- "property2": null
}
hostname | string Providing a hostname restricts the results to the server that has this hostname (case insensitive). If this parameter is provided at most 1 server will be returned. |
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (Server) |
curl -X GET "https://api.mammoth.com.au/v2/servers?hostname=${hostname}&page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "servers": [
- {
- "id": 0,
- "name": "string",
- "memory": 0,
- "vcpus": 0,
- "disk": 0,
- "vpc_id": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "status": "new",
- "backup_ids": [
- 0
], - "features": [
- "string"
], - "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "image": {
- "id": 0,
- "name": "string",
- "type": "custom",
- "distribution": "string",
- "full_name": "string",
- "slug": "string",
- "public": true,
- "regions": [
- "string"
], - "created_at": "2019-08-24T14:15:22Z",
- "min_disk_size": 0,
- "size_gigabytes": 0,
- "description": "string",
- "status": "NEW",
- "error_message": "string",
- "min_memory_megabytes": 0,
- "distribution_surcharges": {
- "surcharge_base_cost": 0,
- "surcharge_per_memory_megabyte": 0,
- "surcharge_per_memory_max_megabytes": 0,
- "surcharge_per_vcpu": 0,
- "surcharge_min_vcpu": 0
}, - "distribution_info": {
- "image_id": 0,
- "password_recovery": "manual",
- "remote_access_user": "string",
- "features": [
- "ssh"
]
}, - "backup_info": {
- "type": "daily",
- "server_id": 0,
- "offsite": true,
- "locked": true,
- "iso": true,
- "backup_disks": [
- {
- "id": 0,
- "size_gigabytes": 0,
- "min_disk_size": 0,
- "description": "string"
}
]
}
}, - "size": {
- "slug": "string",
- "description": "string",
- "cpu_description": "string",
- "storage_description": "string",
- "size_type": {
- "slug": "string",
- "name": "string",
- "description": "string"
}, - "available": true,
- "regions": [
- "string"
], - "regions_out_of_stock": [
- "string"
], - "price_monthly": 0,
- "price_hourly": 0,
- "distribution_surcharge_credit_monthly": 0,
- "disk": 0,
- "memory": 0,
- "transfer": 0,
- "excess_transfer_cost_per_gigabyte": 0,
- "vcpus": 0,
- "vcpu_units": "string",
- "options": {
- "disk_min": 0,
- "disk_max": 0,
- "disk_cost_per_additional_gigabyte": 0,
- "restricted_disk_values": [
- 0
], - "memory_max": 0,
- "memory_cost_per_additional_megabyte": 0,
- "transfer_max": 0,
- "transfer_cost_per_additional_gigabyte": 0,
- "ipv4_addresses_max": 0,
- "ipv4_addresses_cost_per_address": 0,
- "discount_for_no_public_ipv4": 0,
- "daily_backups": 0,
- "weekly_backups": 0,
- "monthly_backups": 0,
- "backups_cost_per_backup_per_gigabyte": 0,
- "offsite_backups_cost_per_gigabyte": 0,
- "offsite_backup_frequency_cost": {
- "daily_per_gigabyte": 0,
- "weekly_per_gigabyte": 0,
- "monthly_per_gigabyte": 0
}
}
}, - "size_slug": "string",
- "selected_size_options": {
- "daily_backups": 0,
- "weekly_backups": 0,
- "monthly_backups": 0,
- "offsite_backups": true,
- "service_level_id": 0,
- "ipv4_addresses": 0,
- "memory": 0,
- "disk": 0,
- "transfer": 0
}, - "networks": {
- "v4": [
- {
- "ip_address": "string",
- "netmask": 5,
- "gateway": "string",
- "type": "private",
- "reverse_name": "string",
- "nat_target": "string"
}
], - "v6": [
- {
- "ip_address": "string",
- "netmask": 5,
- "gateway": "string",
- "type": "private",
- "reverse_name": "string",
- "nat_target": "string"
}
], - "port_blocking": true,
- "separate_private_network_interface": true,
- "source_and_destination_check": true,
- "recent_ddos": true,
- "ipv6_reverse_nameservers": [
- "string"
]
}, - "kernel": {
- "id": 0,
- "name": "string",
- "version": "string"
}, - "next_backup_window": {
- "start": "2019-08-24T14:15:22Z",
- "end": "2019-08-24T14:15:22Z"
}, - "disks": [
- {
- "id": 0,
- "size_gigabytes": 0,
- "description": "string",
- "primary": true
}
], - "backup_settings": {
- "backup_hour_of_day": 0,
- "backup_day_of_week": 0,
- "backup_day_of_month": 0,
- "offsite_backup_settings": {
- "use_custom_backup_location": true,
- "offsite_backup_location": "string",
- "manage_offsite_copies": true
}
}, - "cancelled_at": "2019-08-24T14:15:22Z",
- "failover_ips": [
- "string"
], - "host": {
- "display_name": "string",
- "uptime_ms": 0,
- "status_page": "string"
}, - "partner_id": 0,
- "password_change_supported": true,
- "permalink": "string",
- "attached_backup": {
- "id": 0,
- "disk_identifiers": [
- "string"
], - "attached_at": "2019-08-24T14:15:22Z",
- "attachment_expires": "2019-08-24T14:15:22Z"
}, - "advanced_features": {
- "processor_model": 0,
- "machine_type": "pc_i440fx_1point5",
- "video_device": "cirrus-logic",
- "enabled_advanced_features": [
- "emulated-hyperv"
]
}
}
]
}
name | string or null The hostname of your server, such as vps01.yourcompany.com. If not provided, the server will be created with a random name. |
backups | boolean or null If true this will enable two daily backups for the server. Options.daily_backups will override this value if provided. Setting this to false has no effect. |
ipv6 | boolean or null If true this will enable IPv6 for this server. |
size required | string non-empty The slug of the selected size. |
required | integer or string The slug or id of the selected operating system. |
region required | string non-empty The slug of the selected region. |
vpc_id | integer or null <int64> Leave null to use default (public) network for the selected region. |
Array of integers or strings or null This may be either the SSH keys Ids or fingerprints. If this is null or not provided any SSH keys that have been marked as default will be deployed (if the operating system supports SSH keys). Submit an empty array to disable deployment of default keys. | |
payment_frequency | string or null Enum: "hourly" "single" "quarterly" "half-yearly" "yearly" This may be left null to accept the default payment frequency. |
object or null This may be left null to accept all of the defaults for the selected size. | |
Array of objects or null (License) The desired set of licenses. | |
user_data | string or null <= 65536 characters If provided this will be used to initialise the new server. This must be left null if the Image does not support UserData, see DistributionInfo.Features for more information. |
port_blocking | boolean or null Port blocking of outgoing connections for email, SSH and Remote Desktop (TCP ports 22, 25, and 3389) is enabled by default for all new servers. If this is false port blocking will be disabled. Disabling port blocking is only available to reviewed accounts. |
password | string or null If this is provided the default remote user account's password will be set to this value. If this is null a random password will be generated and emailed to the account email address. |
required | object |
required | object |
{- "name": "string",
- "backups": true,
- "ipv6": true,
- "size": "string",
- "image": 5,
- "region": "string",
- "vpc_id": 0,
- "ssh_keys": [
- 5
], - "payment_frequency": "hourly",
- "options": {
- "daily_backups": 14,
- "weekly_backups": 13,
- "monthly_backups": 12,
- "offsite_backups": true,
- "service_level_id": 0,
- "ipv4_addresses": 2147483647,
- "memory": 0,
- "disk": 0,
- "transfer": 0
}, - "licenses": [
- {
- "software_id": 0,
- "count": 0
}
], - "user_data": "string",
- "port_blocking": true,
- "password": "string"
}
{- "server": {
- "id": 0,
- "name": "string",
- "memory": 0,
- "vcpus": 0,
- "disk": 0,
- "vpc_id": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "status": "new",
- "backup_ids": [
- 0
], - "features": [
- "string"
], - "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "image": {
- "id": 0,
- "name": "string",
- "type": "custom",
- "distribution": "string",
- "full_name": "string",
- "slug": "string",
- "public": true,
- "regions": [
- "string"
], - "created_at": "2019-08-24T14:15:22Z",
- "min_disk_size": 0,
- "size_gigabytes": 0,
- "description": "string",
- "status": "NEW",
- "error_message": "string",
- "min_memory_megabytes": 0,
- "distribution_surcharges": {
- "surcharge_base_cost": 0,
- "surcharge_per_memory_megabyte": 0,
- "surcharge_per_memory_max_megabytes": 0,
- "surcharge_per_vcpu": 0,
- "surcharge_min_vcpu": 0
}, - "distribution_info": {
- "image_id": 0,
- "password_recovery": "manual",
- "remote_access_user": "string",
- "features": [
- "ssh"
]
}, - "backup_info": {
- "type": "daily",
- "server_id": 0,
- "offsite": true,
- "locked": true,
- "iso": true,
- "backup_disks": [
- {
- "id": 0,
- "size_gigabytes": 0,
- "min_disk_size": 0,
- "description": "string"
}
]
}
}, - "size": {
- "slug": "string",
- "description": "string",
- "cpu_description": "string",
- "storage_description": "string",
- "size_type": {
- "slug": "string",
- "name": "string",
- "description": "string"
}, - "available": true,
- "regions": [
- "string"
], - "regions_out_of_stock": [
- "string"
], - "price_monthly": 0,
- "price_hourly": 0,
- "distribution_surcharge_credit_monthly": 0,
- "disk": 0,
- "memory": 0,
- "transfer": 0,
- "excess_transfer_cost_per_gigabyte": 0,
- "vcpus": 0,
- "vcpu_units": "string",
- "options": {
- "disk_min": 0,
- "disk_max": 0,
- "disk_cost_per_additional_gigabyte": 0,
- "restricted_disk_values": [
- 0
], - "memory_max": 0,
- "memory_cost_per_additional_megabyte": 0,
- "transfer_max": 0,
- "transfer_cost_per_additional_gigabyte": 0,
- "ipv4_addresses_max": 0,
- "ipv4_addresses_cost_per_address": 0,
- "discount_for_no_public_ipv4": 0,
- "daily_backups": 0,
- "weekly_backups": 0,
- "monthly_backups": 0,
- "backups_cost_per_backup_per_gigabyte": 0,
- "offsite_backups_cost_per_gigabyte": 0,
- "offsite_backup_frequency_cost": {
- "daily_per_gigabyte": 0,
- "weekly_per_gigabyte": 0,
- "monthly_per_gigabyte": 0
}
}
}, - "size_slug": "string",
- "selected_size_options": {
- "daily_backups": 0,
- "weekly_backups": 0,
- "monthly_backups": 0,
- "offsite_backups": true,
- "service_level_id": 0,
- "ipv4_addresses": 0,
- "memory": 0,
- "disk": 0,
- "transfer": 0
}, - "networks": {
- "v4": [
- {
- "ip_address": "string",
- "netmask": 5,
- "gateway": "string",
- "type": "private",
- "reverse_name": "string",
- "nat_target": "string"
}
], - "v6": [
- {
- "ip_address": "string",
- "netmask": 5,
- "gateway": "string",
- "type": "private",
- "reverse_name": "string",
- "nat_target": "string"
}
], - "port_blocking": true,
- "separate_private_network_interface": true,
- "source_and_destination_check": true,
- "recent_ddos": true,
- "ipv6_reverse_nameservers": [
- "string"
]
}, - "kernel": {
- "id": 0,
- "name": "string",
- "version": "string"
}, - "next_backup_window": {
- "start": "2019-08-24T14:15:22Z",
- "end": "2019-08-24T14:15:22Z"
}, - "disks": [
- {
- "id": 0,
- "size_gigabytes": 0,
- "description": "string",
- "primary": true
}
], - "backup_settings": {
- "backup_hour_of_day": 0,
- "backup_day_of_week": 0,
- "backup_day_of_month": 0,
- "offsite_backup_settings": {
- "use_custom_backup_location": true,
- "offsite_backup_location": "string",
- "manage_offsite_copies": true
}
}, - "cancelled_at": "2019-08-24T14:15:22Z",
- "failover_ips": [
- "string"
], - "host": {
- "display_name": "string",
- "uptime_ms": 0,
- "status_page": "string"
}, - "partner_id": 0,
- "password_change_supported": true,
- "permalink": "string",
- "attached_backup": {
- "id": 0,
- "disk_identifiers": [
- "string"
], - "attached_at": "2019-08-24T14:15:22Z",
- "attachment_expires": "2019-08-24T14:15:22Z"
}, - "advanced_features": {
- "processor_model": 0,
- "machine_type": "pc_i440fx_1point5",
- "video_device": "cirrus-logic",
- "enabled_advanced_features": [
- "emulated-hyperv"
]
}
}, - "links": {
- "actions": [
- {
- "id": 0,
- "rel": "string",
- "href": "string"
}
]
}
}
server_id required | integer <int64> The ID of the server for which the action should be fetched. |
action_id required | integer <int64> The ID of the action to fetch. |
required | object | ||||||||||||||||||||||||||||||||||
|
curl -X GET "https://api.mammoth.com.au/v2/servers/${server_id}/actions/${action_id}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
server_id required | integer <int64> The ID of the server for which firewall rules should be listed. |
required | Array of objects (AdvancedFirewallRule) The advanced firewall rules for the selected server. Please note that the order of the rules is critical as the first matching rule is applied, and if no rules match the traffic is permitted. | ||||||||||||
Array
|
curl -X GET "https://api.mammoth.com.au/v2/servers/${server_id}/advanced_firewall_rules" \ -H "Authorization: Bearer ${APITOKEN}"
{- "firewall_rules": [
- {
- "source_addresses": [
- "string"
], - "destination_addresses": [
- "string"
], - "destination_ports": [
- "string"
], - "protocol": "all",
- "action": "drop",
- "description": "string"
}
]
}
server_id required | integer <int64> The ID of the server for which advanced features should be listed. |
required | object | ||||||
|
curl -X GET "https://api.mammoth.com.au/v2/servers/${server_id}/available_advanced_features" \ -H "Authorization: Bearer ${APITOKEN}"
{- "available_advanced_server_features": {
- "processor_models": [
- {
- "id": 0,
- "name": "string",
- "description": "string"
}
], - "machine_types": [
- "pc_i440fx_1point5"
], - "advanced_features": [
- "emulated-hyperv"
]
}
}
server_id required | integer <int64> The ID of the server for which backups should be listed. |
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (Image) |
curl -X GET "https://api.mammoth.com.au/v2/servers/${server_id}/backups?page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "backups": [
- {
- "id": 0,
- "name": "string",
- "type": "custom",
- "distribution": "string",
- "full_name": "string",
- "slug": "string",
- "public": true,
- "regions": [
- "string"
], - "created_at": "2019-08-24T14:15:22Z",
- "min_disk_size": 0,
- "size_gigabytes": 0,
- "description": "string",
- "status": "NEW",
- "error_message": "string",
- "min_memory_megabytes": 0,
- "distribution_surcharges": {
- "surcharge_base_cost": 0,
- "surcharge_per_memory_megabyte": 0,
- "surcharge_per_memory_max_megabytes": 0,
- "surcharge_per_vcpu": 0,
- "surcharge_min_vcpu": 0
}, - "distribution_info": {
- "image_id": 0,
- "password_recovery": "manual",
- "remote_access_user": "string",
- "features": [
- "ssh"
]
}, - "backup_info": {
- "type": "daily",
- "server_id": 0,
- "offsite": true,
- "locked": true,
- "iso": true,
- "backup_disks": [
- {
- "id": 0,
- "size_gigabytes": 0,
- "min_disk_size": 0,
- "description": "string"
}
]
}
}
]
}
server_id required | integer <int64> The ID of the server for which the backup is to be uploaded. |
backup_type | string or null Enum: "daily" "weekly" "monthly" "temporary" If replacement_strategy is anything other than 'specified', this must be provided. |
replacement_strategy required | string Enum: "none" "specified" "oldest" "newest" The strategy for selecting which backup to replace (if any). |
backup_id_to_replace | integer or null <int64> If replacement_strategy is 'specified' this property must be set to an existing backup. |
label | string or null <= 250 characters An optional label to identify the backup. |
url required | string <uri> non-empty The source URL for the image to upload. Only HTTP and HTTPS sources are currently supported. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "backup_type": "daily",
- "replacement_strategy": "none",
- "backup_id_to_replace": 0,
- "label": "string",
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
Only servers based on one of our Linux distribution images may change kernels.
server_id required | integer <int64> The ID of the server for which kernels should be listed. |
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (Kernel) |
curl -X GET "https://api.mammoth.com.au/v2/servers/${server_id}/kernels?page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "kernels": [
- {
- "id": 0,
- "name": "string",
- "version": "string"
}
]
}
Server snapshots are not implemented. This will always return 0 results.
server_id required | integer <int64> The ID of the server for which snapshots should be listed. |
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (Image) |
curl -X GET "https://api.mammoth.com.au/v2/servers/${server_id}/snapshots?page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "snapshots": [
- {
- "id": 0,
- "name": "string",
- "type": "custom",
- "distribution": "string",
- "full_name": "string",
- "slug": "string",
- "public": true,
- "regions": [
- "string"
], - "created_at": "2019-08-24T14:15:22Z",
- "min_disk_size": 0,
- "size_gigabytes": 0,
- "description": "string",
- "status": "NEW",
- "error_message": "string",
- "min_memory_megabytes": 0,
- "distribution_surcharges": {
- "surcharge_base_cost": 0,
- "surcharge_per_memory_megabyte": 0,
- "surcharge_per_memory_max_megabytes": 0,
- "surcharge_per_vcpu": 0,
- "surcharge_min_vcpu": 0
}, - "distribution_info": {
- "image_id": 0,
- "password_recovery": "manual",
- "remote_access_user": "string",
- "features": [
- "ssh"
]
}, - "backup_info": {
- "type": "daily",
- "server_id": 0,
- "offsite": true,
- "locked": true,
- "iso": true,
- "backup_disks": [
- {
- "id": 0,
- "size_gigabytes": 0,
- "min_disk_size": 0,
- "description": "string"
}
]
}
}
]
}
Includes the current values for the most recent threshold alert period.
server_id required | integer <int64> The ID of the server for which threshold alerts should be fetched. |
required | Array of objects (ThresholdAlert) | ||||||||||||||||||||||||||||
Array
|
curl -X GET "https://api.mammoth.com.au/v2/servers/${server_id}/threshold_alerts" \ -H "Authorization: Bearer ${APITOKEN}"
{- "threshold_alerts": [
- {
- "alert_type": "cpu",
- "enabled": true,
- "value": 0,
- "current_value": 0,
- "last_raised": "2019-08-24T14:15:22Z",
- "last_cleared": "2019-08-24T14:15:22Z"
}
]
}
server_ids required | Array of integers <int64> [ items <int64 > ] |
curl -X GET "https://api.mammoth.com.au/v2/servers/threshold_alerts" \ -H "Authorization: Bearer ${APITOKEN}"
{- "server_ids": [
- 0
]
}
server_id required | integer <int64> The ID of the server for which software should be fetched. |
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (LicensedSoftware) |
curl -X GET "https://api.mammoth.com.au/v2/servers/${server_id}/software?page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "licensed_software": [
- {
- "software": {
- "id": 0,
- "enabled": true,
- "name": "string",
- "description": "string",
- "cost_per_licence_per_month": 0,
- "minimum_licence_count": 0,
- "maximum_licence_count": 0,
- "licence_step_count": 0,
- "group": "string",
- "supported_operating_systems": [
- "string"
]
}, - "licence_count": 0
}
]
}
server_id required | integer <int64> The ID of the server for which userdata should be fetched. |
user_data | string or null The UserData that was last used to initialise the server. |
curl -X GET "https://api.mammoth.com.au/v2/servers/${server_id}/user_data" \ -H "Authorization: Bearer ${APITOKEN}"
{- "user_data": "string"
}
server_id required | integer <int64> The ID of the server for which console URLs will be fetched. |
required | object | ||||||||||
|
curl -X GET "https://api.mammoth.com.au/v2/servers/${server_id}/console" \ -H "Authorization: Bearer ${APITOKEN}"
{- "console": {
- "iframe": "string",
- "browser": "string",
- "width": 0,
- "height": 0,
- "expiry": "2019-08-24T14:15:22Z"
}
}
server_id required | integer <int64> The ID of the server for which actions should be listed. |
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (Action) |
curl -X GET "https://api.mammoth.com.au/v2/servers/${server_id}/actions?page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "actions": [
- {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
]
}
Review the ServerAction schema for a list of available actions. Review the description in each individual schema for each type of server action for further information. For actions that 'query' something (e.g. "Ping") fetch the completed action from the action endpoint for the response.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty |
size_gigabytes required | integer <int32> [ 1 .. 2147483647 ] The size of the new disk in GB. The server must have at least this much unallocated storage space. |
description | string or null [ 0 .. 255 ] characters An optional description for the disk. If this is null a default description will be added. Submit an empty string to prevent the default description being added. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "add_disk",
- "size_gigabytes": 1,
- "description": "string"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to set threshold alerts (also known as resource alerts) for the server.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "change_threshold_alerts" |
required | Array of objects (ThresholdAlertRequest) Any alert type not listed will not be updated. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "change_threshold_alerts",
- "threshold_alerts": [
- {
- "alert_type": "cpu",
- "enabled": true,
- "value": 0
}
]
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to check if the server is running, but not the state of the server. For example, the server may be running but be unresponsive, rebooting etc.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "is_running" |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "is_running"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to determine if the server responds to a ping. The ping attempt is normally made to the public interface, so it may be blocked by your firewall settings etc.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "ping" |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "ping"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
NB: this is only available before the server is suspended and we make no guarantees that un-cancellation is possible.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "uncancel" |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "uncancel"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to determine how long the server has been continuously running.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "uptime" |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "uptime"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is most often used to restore an individual file from a backup. It may also be used to boot the server from an ISO image.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "attach_backup" |
image required | integer <int64> Only attaching backup images is currently supported. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "attach_backup",
- "image": 0
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This changes when the backups are taken, not the frequency or retention of backups.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "change_backup_schedule" |
backup_hour_of_day | integer or null <int32> [ 0 .. 23 ] Do not provide a value to keep the current setting. |
backup_day_of_week | integer or null <int32> [ 0 .. 6 ] Sunday is 0, Monday is 1 etc. Do not provide a value to keep the current setting. |
backup_day_of_month | integer or null <int32> [ 1 .. 28 ] Do not provide a value to keep the current setting. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "change_backup_schedule",
- "backup_hour_of_day": 23,
- "backup_day_of_week": 6,
- "backup_day_of_month": 1
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to alter whether old offsite backups will be removed when the replacement upload is complete if offsite backups have been selected and a custom offsite location is used.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "change_manage_offsite_backup_copies" |
manage_offsite_backup_copies required | boolean This only has effect if a custom offsite location is being used: the internal offsite backup location always manages copies. If this is true old offsite backups will be removed once the replacement upload is complete. If this is false backups must be removed from the Amazon S3 bucket manually. Amazon will charge your S3 account at their standard rate for every backup stored. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "change_manage_offsite_backup_copies",
- "manage_offsite_backup_copies": true
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
If offsite backups have been selected this is used to change the offsite backup location, either to a valid Amazon S3 bucket or our internal offsite backup location.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "change_offsite_backup_location" |
offsite_backup_location | string or null Do not provide or set to null to use the internal offsite backup location, otherwise this must be a valid Amazon S3 bucket address. If this is provided Amazon will charge your S3 account at their standard rate for every backup stored. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "change_offsite_backup_location",
- "offsite_backup_location": "string"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to clone a new server from the backup of an existing server.
The action is 'performed' on the source server. The target server must have finished the initial building process: this will fail if the target server is does not have the status 'available'.
NB: This is a destructive operation on the target server and no further confirmation will be requested.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "clone_using_backup" |
image_id required | integer <int64> The ID of the image to clone. Only backup type images are currently supported. This must be a backup of the server ID in the action endpoint URL. |
target_server_id required | integer <int64> The target server ID. This server's current disks will be wiped and replaced with the selected backup image. |
name | string or null The new hostname for the target server. If this is not supplied the target server's existing hostname will be used. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "clone_using_backup",
- "image_id": 0,
- "target_server_id": 0,
- "name": "string"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to detach a backup that was attached with the Attach Backup action.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "detach_backup" |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "detach_backup"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This will disable backups for a server only if it has the backup configuration that is created by the EnabledBackups action, i.e. two daily backups.
This is not a 'pause' for backups, this will change the server's options to remove the backups.
For greater control over the backup options use Options property on the Resize action.
NB: This is a destructive operation (previous backups will no longer be available) and no further confirmation will be requested.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "disable_backups" |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "disable_backups"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This will enable two daily backups if the server currently has no backups. This is not an 'un-pause' for backups. It will change the server's options to enable two daily backups.
For greater control over the backup options use Options property on the Resize action.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "enable_backups" |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "enable_backups"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This will remove the server's existing disks and restore the selected backup.
NB: This is a destructive operation and no further confirmation will be requested.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "restore" |
required | integer or string The ID of the specific backup to use. Snapshots are not currently supported. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "restore",
- "image": 5
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This creates an immediate backup of the server.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "take_backup" |
backup_type | string or null Enum: "daily" "weekly" "monthly" "temporary" If replacement_strategy is anything other than 'specified', this must be provided. |
replacement_strategy required | string Enum: "none" "specified" "oldest" "newest" The strategy for selecting which backup to replace (if any). |
backup_id_to_replace | integer or null <int64> If replacement_strategy is 'specified' this property must be set to an existing backup. |
label | string or null <= 250 characters An optional label to identify the backup. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "take_backup",
- "backup_type": "daily",
- "replacement_strategy": "none",
- "backup_id_to_replace": 0,
- "label": "string"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This will reset the password of the specified or default remote user if possible (e.g. on most Unix derived operating systems) or clear the administrator password on Windows operating systems.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "password_reset" |
username | string or null The username of the user to change the password. Only valid if the server supports password change actions (check server.password_change_supported via the servers endpoint). If omitted and the server supports password change actions this will default to the username of the remote user that was configured when the server was created (normally 'root'). |
password | string or null If this is provided the specified or default remote user's account password will be set to this value. Only valid if the server supports password change actions (check server.password_change_supported via the servers endpoint). If omitted and the server supports password change actions a random password will be generated and emailed to the account email address. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "password_reset",
- "username": "string",
- "password": "string"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is a 'hard' reboot, equivalent to turning the server's power switch off and on.
This should be used only if the server is unresponsive when the 'Reboot' action is attempted.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "power_cycle" |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "power_cycle"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is a 'hard' power off, equivalent to turning the server's power switch off.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "power_off" |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "power_off"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This may be used if the server has previous been powered off either from inside the server's operating system or via an action.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "power_on" |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "power_on"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is a 'soft' reboot, equivalent to tapping the power button on the server or selecting 'restart' in the operating system to trigger an orderly shutdown, waiting for that shutdown, then starting the server.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "reboot" |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "reboot"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is a 'soft' shutdown, equivalent to tapping the power button on the server or selecting 'shutdown' in the operating system to trigger an orderly shutdown, then waiting for that shutdown.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "shutdown" |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "shutdown"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to change the virtual processor model, emulated video card and other virtualization options.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "change_advanced_features" |
enabled_advanced_features | Array of strings or null (AdvancedFeature) Enum: "emulated-hyperv" "emulated-devices" "nested-virt" "driver-disk" "unset-uuid" "local-rtc" "emulated-tpm" "cloud-init" "qemu-guest-agent" "uefi-boot" Do not provide or set to null to keep existing advanced features. Provide an empty array to disable all advanced features, otherwise provide an array with selected advanced features. If provided, any currently enabled advanced features that aren't included will be disabled. |
processor_model | integer or null <int64> Do not provide or set to null to keep existing processor model. |
automatic_processor_model | boolean or null Set to true to use best available processor model. If this is provided the processor_model property must not be provided. |
machine_type | string or null Enum: "pc_i440fx_1point5" "pc_i440fx_2point11" "pc_i440fx_4point1" "pc_i440fx_4point2" "pc_i440fx_5point0" "pc_i440fx_5point1" Do not provide or set to null to keep existing machine type. |
automatic_machine_type | boolean or null Set to true to use best available machine type. If this is provided the machine_type property must not be provided. |
video_device | string or null Enum: "cirrus-logic" "standard" "virtio" "virtio-wide" Do not provide or set to null to keep existing video device. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "change_advanced_features",
- "enabled_advanced_features": [
- "emulated-hyperv"
], - "processor_model": 0,
- "automatic_processor_model": true,
- "machine_type": "pc_i440fx_1point5",
- "automatic_machine_type": true,
- "video_device": "cirrus-logic"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to configure the external firewall. Please see our documentation for more information.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "change_advanced_firewall_rules" |
required | Array of objects (AdvancedFirewallRule) A list of rules for the server. NB: that any existing rules that are not included will be removed. Submit an empty list to clear all rules. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "change_advanced_firewall_rules",
- "firewall_rules": [
- {
- "source_addresses": [
- "string"
], - "destination_addresses": [
- "string"
], - "destination_ports": [
- "string"
], - "protocol": "all",
- "action": "drop",
- "description": "string"
}
]
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is most often used to boot using our provided Finnix recovery CD. Please review the 'servers/{server_id}/kernels' endpoint for more information.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "change_kernel" |
kernel required | integer <int64> The ID of the kernel to use. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "change_kernel",
- "kernel": 0
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
Making servers 'partners' prevents them from being co-located on the same hardware.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "change_partner" |
partner_server_id | integer or null <int64> Leave this null to remove the server partnership. The partner server must be in the same region as the target server. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "change_partner",
- "partner_server_id": 0
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
If you have upgraded to CentOS 7.6 and rebooted your server (or an automated update has done so on your behalf) then SELinux may be preventing your system from working correctly.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "disable_selinux" |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "disable_selinux"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This will restore the server to the base image provided.
NB: This is a destructive operation and no further confirmation will be requested.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "rebuild" |
(integer or null) or (string or null) The Operating System ID or slug or Backup image ID to use as a base for the rebuild. | |
object or null Additional options. Leaving this entirely null or any of the properties included null will use the defaults from the existing server. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "rebuild",
- "image": 5,
- "options": {
- "name": "string",
- "ssh_keys": [
- 5
], - "user_data": "string",
- "password": "string"
}
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to change the base size (also known as 'change plan') or many of the additional options that are available.
NB: This may be a destructive operation (e.g. if a new base image is provided the server will be rebuilt, or if the weekly backups are reduced to 0 all weekly backups will be removed) and no further confirmation will be requested.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "resize" |
size | string or null The slug of the selected size. Do not provide to keep the current size. |
object or null If this is null and the server has no selected size options the defaults for the size will be used. If this is null and the server has currently selected size options those will be preserved. If this is provided any option fields that are not included will be removed from the existing server. | |
object or null This may be left null to keep the current base image for the server. If this is provided the server disks will be destroyed and the server will be rebuilt from the selected image. | |
object or null This may be left null to keep the current licenses for the server. If this is provided any licenses that are not included will be removed. | |
object or null Specify this to create a backup before any actions are taken, or leave null to skip. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "resize",
- "size": "string",
- "options": {
- "daily_backups": 14,
- "weekly_backups": 13,
- "monthly_backups": 12,
- "offsite_backups": true,
- "service_level_id": 0,
- "ipv4_addresses": 2147483647,
- "memory": 0,
- "disk": 0,
- "transfer": 0,
- "ipv4_addresses_to_remove": [
- "string"
]
}, - "change_image": {
- "image": 5,
- "options": {
- "name": "string",
- "ssh_keys": [
- 5
], - "user_data": "string",
- "password": "string"
}
}, - "change_licenses": {
- "licenses": [
- {
- "software_id": 0,
- "count": 0
}
]
}, - "pre_action_backup": {
- "type": "take_backup",
- "backup_type": "daily",
- "replacement_strategy": "none",
- "backup_id_to_replace": 0,
- "label": "string"
}
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to add an additional disk in unallocated storage space.
This does not alter the total disk space available to your server: to add additional disk space for your server use the 'Resize' action.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "add_disk" |
size_gigabytes required | integer <int32> [ 1 .. 2147483647 ] The size of the new disk in GB. The server must have at least this much unallocated storage space. |
description | string or null [ 0 .. 255 ] characters An optional description for the disk. If this is null a default description will be added. Submit an empty string to prevent the default description being added. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "add_disk",
- "size_gigabytes": 1,
- "description": "string"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to alter the size of an existing disk, either to use or create unallocated storage space.
This does not alter the total disk space available to your server: to add or remove disk space for your server use the 'Resize' action.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "resize_disk" |
disk_id required | integer <int64> The ID of the existing disk. See server.disks for a list of IDs. |
size_gigabytes required | integer <int32> [ 1 .. 2147483647 ] The new size of the disk in GB. If increasing the size of the disk the server must have sufficient unallocated storage space. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "resize_disk",
- "disk_id": 0,
- "size_gigabytes": 1
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to delete a disk added using the 'AddDisk' action.
NB: This is a destructive operation and no further confirmation will be requested.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "delete_disk" |
disk_id required | integer <int64> The ID of the existing disk. See server.disks for a list of IDs. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "delete_disk",
- "disk_id": 0
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to alter the IPv6 reverse name servers for this server.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "change_ipv6_reverse_nameservers" |
ipv6_reverse_nameservers required | Array of strings A list of all IPv6 reverse name servers for this server. Any existing reverse name servers that are omitted from the list will be removed from the server. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "change_ipv6_reverse_nameservers",
- "ipv6_reverse_nameservers": [
- "string"
]
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to change the reverse name for an IPv4 on this server.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "change_reverse_name" |
ipv4_address required | string non-empty The IPv4 address to set or clear the reverse name for. |
reverse_name | string or null Leave this null to clear the custom reverse name. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "change_reverse_name",
- "ipv4_address": "string",
- "reverse_name": "string"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to change the name of the server in our system. The name in the server's operating system will not be changed.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "rename" |
name required | string non-empty The new hostname of your server, such as vps01.yourcompany.com. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "rename",
- "name": "string"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to enable or disable IPv6 networking support for this server.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "change_ipv6" |
enabled required | boolean The desired enabled status of IPv6. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "change_ipv6",
- "enabled": true
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
Port blocking is a security feature. In the majority of cases when a server is hacked, the attacker will then use the server to either send spam or perform brute-force authentication attacks against other servers on the internet.
This is used to enable or disable blocking of outgoing connections for email, SSH and Remote Desktop (TCP ports 22, 25, and 3389).
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "change_port_blocking" |
enabled required | boolean The desired enabled status for port blocking. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "change_port_blocking",
- "enabled": true
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to enable IPv6 networking support for this server.
This action is provided for compatibility reasons and as the same effect as enabling IPv6 via the "ChangeIpv6" action.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "enable_ipv6" |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "enable_ipv6"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to move a server either to an already defined virtual private cloud, or the default public network in the server's region.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "change_network" |
vpc_id | integer or null <int64> If this is null the server will be moved into the default public network for the server's region. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "change_network",
- "vpc_id": 0
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to enable or disable a separate second network interface for VPC network traffic (if the server is in a VPC).
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "change_separate_private_network_interface" |
enabled required | boolean The desired enabled status of the separate second network interface. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "change_separate_private_network_interface",
- "enabled": true
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to enable or disable source and destination checks for network packets.
Source/Destination Check is a feature that controls what packets are allowed to be sent and received by your Cloud Server. When enabled (which it is by default), your server will only be able to send or receive packets that are directly addressed to one of the IP addresses associated with the Cloud Server. Generally, this is desirable behaviour because it prevents IP conflicts and other hard-to-diagnose networking faults due to incorrect network configuration.
When Source/Destination Check is disabled, your Cloud Server will be able to send and receive packets addressed to any server whatsoever. This is typically used when you want to use your Cloud Server as a VPN endpoint, a NAT server to provide internet access, or IP forwarding.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "change_source_and_destination_check" |
enabled required | boolean The desired enabled status of the source and destination checks for network packets. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "change_source_and_destination_check",
- "enabled": true
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
This is used to change the private IPv4 address for a server in a VPC.
server_id required | integer <int64> The ID of the server on which the action should be performed. |
type required | string non-empty Value: "change_vpc_ipv4" |
current_ipv4_address required | string non-empty The existing Ipv4 address for the private VPC network adapter you wish to change. |
new_ipv4_address required | string non-empty The new Ipv4 address for the private VPC network adapter. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "type": "change_vpc_ipv4",
- "current_ipv4_address": "string",
- "new_ipv4_address": "string"
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
action_id required | integer <int64> The ID of the action to fetch. |
required | object | ||||||||||||||||||||||||||||||||||
|
curl -X GET "https://api.mammoth.com.au/v2/actions/${action_id}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (Action) |
curl -X GET "https://api.mammoth.com.au/v2/actions?page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "actions": [
- {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
]
}
action_id required | integer <int64> The ID of the action for which this is a response. |
proceed required | boolean Please see the documentation for each type of interaction for the effect of providing 'true' or 'false' here. |
{- "proceed": true
}
{- "type": "string",
- "title": "string",
- "status": 0,
- "detail": "string",
- "instance": "string",
- "property1": null,
- "property2": null
}
server_id required | integer <int64> The target server id. |
required | object | ||||||||||
|
curl -X GET "https://api.mammoth.com.au/v2/data_usages/${server_id}/current" \ -H "Authorization: Bearer ${APITOKEN}"
{- "data_usage": {
- "server_id": 0,
- "expires": "2019-08-24T14:15:22Z",
- "transfer_gigabytes": 0,
- "current_transfer_usage_gigabytes": 0,
- "transfer_period_end": "2019-08-24T14:15:22Z"
}
}
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (DataUsage) |
curl -X GET "https://api.mammoth.com.au/v2/data_usages/current?page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "data_usages": [
- {
- "server_id": 0,
- "expires": "2019-08-24T14:15:22Z",
- "transfer_gigabytes": 0,
- "current_transfer_usage_gigabytes": 0,
- "transfer_period_end": "2019-08-24T14:15:22Z"
}
]
}
server_id required | integer <int64> The target server id. |
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
failover_ips required | Array of strings |
curl -X GET "https://api.mammoth.com.au/v2/failover_ips/${server_id}?page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "failover_ips": [
- "string"
]
}
This overwrites the current list, i.e. submit the entire list, not just updates. If NoContent is returned no changes were made. If an action is returned the changes have been saved but the effect may not be complete until the action is complete. If the action does not complete the network changes can be forced by rebooting the server.
server_id required | integer <int64> The target server id. |
failover_ips required | Array of strings The list of IP Failover addresses to assign to this server. This overwrites the current list, so any current IP Failover addresses that are omitted will be removed from the server. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "failover_ips": [
- "string"
]
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
server_id required | integer <int64> The target server id. |
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
failover_ips required | Array of strings |
curl -X GET "https://api.mammoth.com.au/v2/failover_ips/${server_id}/available?page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "failover_ips": [
- "string"
]
}
type | string Enum: "distribution" "backup" Queries for distribution will include images that have pre-installed applications. |
private | boolean Provide 'true' to only list private images. 'false' has no effect. |
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (Image) |
curl -X GET "https://api.mammoth.com.au/v2/images?type=${type}&private=${private}&page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "images": [
- {
- "id": 0,
- "name": "string",
- "type": "custom",
- "distribution": "string",
- "full_name": "string",
- "slug": "string",
- "public": true,
- "regions": [
- "string"
], - "created_at": "2019-08-24T14:15:22Z",
- "min_disk_size": 0,
- "size_gigabytes": 0,
- "description": "string",
- "status": "NEW",
- "error_message": "string",
- "min_memory_megabytes": 0,
- "distribution_surcharges": {
- "surcharge_base_cost": 0,
- "surcharge_per_memory_megabyte": 0,
- "surcharge_per_memory_max_megabytes": 0,
- "surcharge_per_vcpu": 0,
- "surcharge_min_vcpu": 0
}, - "distribution_info": {
- "image_id": 0,
- "password_recovery": "manual",
- "remote_access_user": "string",
- "features": [
- "ssh"
]
}, - "backup_info": {
- "type": "daily",
- "server_id": 0,
- "offsite": true,
- "locked": true,
- "iso": true,
- "backup_disks": [
- {
- "id": 0,
- "size_gigabytes": 0,
- "min_disk_size": 0,
- "description": "string"
}
]
}
}
]
}
required | integer or string Example: 5 The ID or Slug (if an operating system) of the image to retrieve. |
required | object | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
curl -X GET "https://api.mammoth.com.au/v2/images/${image_id_or_slug}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "image": {
- "id": 0,
- "name": "string",
- "type": "custom",
- "distribution": "string",
- "full_name": "string",
- "slug": "string",
- "public": true,
- "regions": [
- "string"
], - "created_at": "2019-08-24T14:15:22Z",
- "min_disk_size": 0,
- "size_gigabytes": 0,
- "description": "string",
- "status": "NEW",
- "error_message": "string",
- "min_memory_megabytes": 0,
- "distribution_surcharges": {
- "surcharge_base_cost": 0,
- "surcharge_per_memory_megabyte": 0,
- "surcharge_per_memory_max_megabytes": 0,
- "surcharge_per_vcpu": 0,
- "surcharge_min_vcpu": 0
}, - "distribution_info": {
- "image_id": 0,
- "password_recovery": "manual",
- "remote_access_user": "string",
- "features": [
- "ssh"
]
}, - "backup_info": {
- "type": "daily",
- "server_id": 0,
- "offsite": true,
- "locked": true,
- "iso": true,
- "backup_disks": [
- {
- "id": 0,
- "size_gigabytes": 0,
- "min_disk_size": 0,
- "description": "string"
}
]
}
}
}
Only updating of user created backups is currently supported.
image_id required | integer <int64> The ID of the image to update. |
name | string or null [ 0 .. 250 ] characters Optional: a new display name for this image. Do not provide to leave the display name unchanged, submit an empty string to clear the display name. |
locked | boolean or null Optional: you may choose to lock an individual backup in which case we will not update that backup until you unlock it. Do not provide to leave the locked status unchanged. |
required | object | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
{- "name": "string",
- "locked": true
}
{- "image": {
- "id": 0,
- "name": "string",
- "type": "custom",
- "distribution": "string",
- "full_name": "string",
- "slug": "string",
- "public": true,
- "regions": [
- "string"
], - "created_at": "2019-08-24T14:15:22Z",
- "min_disk_size": 0,
- "size_gigabytes": 0,
- "description": "string",
- "status": "NEW",
- "error_message": "string",
- "min_memory_megabytes": 0,
- "distribution_surcharges": {
- "surcharge_base_cost": 0,
- "surcharge_per_memory_megabyte": 0,
- "surcharge_per_memory_max_megabytes": 0,
- "surcharge_per_vcpu": 0,
- "surcharge_min_vcpu": 0
}, - "distribution_info": {
- "image_id": 0,
- "password_recovery": "manual",
- "remote_access_user": "string",
- "features": [
- "ssh"
]
}, - "backup_info": {
- "type": "daily",
- "server_id": 0,
- "offsite": true,
- "locked": true,
- "iso": true,
- "backup_disks": [
- {
- "id": 0,
- "size_gigabytes": 0,
- "min_disk_size": 0,
- "description": "string"
}
]
}
}
}
Only user created backup images are currently available for download.
image_id required | integer <int64> The ID of the image to download. |
required | object | ||||||
|
curl -X GET "https://api.mammoth.com.au/v2/images/${image_id}/download" \ -H "Authorization: Bearer ${APITOKEN}"
{- "link": {
- "id": 0,
- "expiry": "2019-08-24T14:15:22Z",
- "disks": [
- {
- "id": 0,
- "compressed_url": "string",
- "raw_url": "string"
}
]
}
}
The key_id may be either the Id or the key fingerprint.
required | integer or string Example: 5 The ID or fingerprint of the SSH Key to fetch. |
required | object | ||||||||||
|
curl -X GET "https://api.mammoth.com.au/v2/account/keys/${key_id}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "ssh_key": {
- "id": 0,
- "fingerprint": "string",
- "public_key": "string",
- "name": "string",
- "default": true
}
}
The key_id may be either the Id or the key fingerprint.
required | integer or string Example: 5 The ID or fingerprint of the SSH Key to update. |
name required | string non-empty A name to help you identify the key. |
default | boolean or null Do not provide or leave null to leave the default status of the key unchanged. Optional: If true this will be added to all new server installations (if we support SSH Key injection for the server's operating system). |
required | object | ||||||||||
|
{- "name": "string",
- "default": true
}
{- "ssh_key": {
- "id": 0,
- "fingerprint": "string",
- "public_key": "string",
- "name": "string",
- "default": true
}
}
The key_id may be either the Id or the key fingerprint.
required | integer or string Example: 5 The ID or fingerprint of the SSH Key to delete. |
curl -X DELETE "https://api.mammoth.com.au/v2/account/keys/${key_id}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "type": "string",
- "title": "string",
- "status": 0,
- "detail": "string",
- "instance": "string",
- "property1": null,
- "property2": null
}
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (SshKey) |
curl -X GET "https://api.mammoth.com.au/v2/account/keys?page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "ssh_keys": [
- {
- "id": 0,
- "fingerprint": "string",
- "public_key": "string",
- "name": "string",
- "default": true
}
]
}
public_key required | string non-empty The public key in OpenSSH "authorized_keys" format. |
name required | string non-empty A name to help you identify the key. |
default | boolean or null Optional: If true this will be added to all new server installations (if we support SSH Key injection for the server's operating system). |
required | object | ||||||||||
|
{- "public_key": "string",
- "name": "string",
- "default": true
}
{- "ssh_key": {
- "id": 0,
- "fingerprint": "string",
- "public_key": "string",
- "name": "string",
- "default": true
}
}
IPv6 addresses within the allocated IPv6 floating range do not have PTR records under our default configuration. You may provide resolution by delegating PTR lookups to your own nameservers. These nameservers - and the floating range itself - are shared by all your servers; PTR lookups for addresses within your routed range will also be delegated.
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
reverse_nameservers required | Array of strings |
curl -X GET "https://api.mammoth.com.au/v2/reverse_names/ipv6?page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "reverse_nameservers": [
- "string"
]
}
reverse_nameservers required | Array of strings A list of IPv6 reverse name servers for all IPv6 enabled servers. Any existing reverse name servers that are omitted from the list will be removed. |
required | object | ||||||||||||||||||||||||||||||||||
|
{- "reverse_nameservers": [
- "string"
]
}
{- "action": {
- "id": 0,
- "status": "in-progress",
- "type": "string",
- "started_at": "2019-08-24T14:15:22Z",
- "completed_at": "2019-08-24T14:15:22Z",
- "resource_type": "server",
- "resource_id": 0,
- "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "region_slug": "string",
- "progress": {
- "current_step_detail": "string",
- "percent_complete": 0,
- "current_step": "string",
- "completed_steps": [
- "string"
]
}, - "result_data": "string",
- "blocking_invoice_id": 0,
- "user_interaction_required": {
- "interaction_type": "continue-after-ping-failure"
}
}
}
Returns the latest performance and usage sample set.
server_id required | integer <int64> The target server id. |
data_interval | string Enum: "five-minute" "half-hour" "four-hour" "day" "week" "month"
|
object or null | |||||||||||
|
curl -X GET "https://api.mammoth.com.au/v2/samplesets/${server_id}/latest?data_interval=${data_interval}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "sample_set": {
- "server_id": 0,
- "period": {
- "start": "2019-08-24T14:15:22Z",
- "end": "2019-08-24T14:15:22Z",
- "data_interval": "five-minute"
}, - "average": {
- "cpu_usage_percent": 0,
- "cpu_usage_detailed": [
- 0
], - "memory_usage_bytes": 0,
- "network_incoming_kbps": 0,
- "network_outgoing_kbps": 0,
- "storage_usage_megabytes": 0,
- "storage_read_kbps": 0,
- "storage_write_kbps": 0,
- "storage_read_requests_per_second": 0,
- "storage_write_requests_per_second": 0
}, - "maximum_memory_megabytes": 0,
- "maximum_storage_gigabytes": 0
}
}
server_id required | integer <int64> The target server id. |
data_interval | string Enum: "five-minute" "half-hour" "four-hour" "day" "week" "month"
| ||||||||||||||
start | string <date-time> The start of the window of samples to retrieve, ISO8601 format (eg 2022-12-30T22:50:00Z). Defaults to 1 week before end for intervals larger than 5 minutes, or 1 day for 5 minute intervals. | ||||||||||||||
end | string <date-time> The start of the window of samples to retrieve, ISO8601 format (eg 2022-12-30T22:50:00Z). Defaults to 1 week or 1 day after start date depending on the selected data interval (or the current time if start is not provided). Can't be more than 1 year from start. | ||||||||||||||
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 | ||||||||||||||
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (SampleSet) |
curl -X GET "https://api.mammoth.com.au/v2/samplesets/${server_id}?data_interval=${data_interval}&start=${start}&end=${end}&page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "sample_sets": [
- {
- "server_id": 0,
- "period": {
- "start": "2019-08-24T14:15:22Z",
- "end": "2019-08-24T14:15:22Z",
- "data_interval": "five-minute"
}, - "average": {
- "cpu_usage_percent": 0,
- "cpu_usage_detailed": [
- 0
], - "memory_usage_bytes": 0,
- "network_incoming_kbps": 0,
- "network_outgoing_kbps": 0,
- "storage_usage_megabytes": 0,
- "storage_read_kbps": 0,
- "storage_write_kbps": 0,
- "storage_read_requests_per_second": 0,
- "storage_write_requests_per_second": 0
}, - "maximum_memory_megabytes": 0,
- "maximum_storage_gigabytes": 0
}
]
}
type | string Enum: "distribution" "backup" Queries for distribution will include images that have pre-installed applications. |
private | boolean Provide 'true' to only list private images. 'false' has no effect. |
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (Image) |
curl -X GET "https://api.mammoth.com.au/v2/images?type=${type}&private=${private}&page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "images": [
- {
- "id": 0,
- "name": "string",
- "type": "custom",
- "distribution": "string",
- "full_name": "string",
- "slug": "string",
- "public": true,
- "regions": [
- "string"
], - "created_at": "2019-08-24T14:15:22Z",
- "min_disk_size": 0,
- "size_gigabytes": 0,
- "description": "string",
- "status": "NEW",
- "error_message": "string",
- "min_memory_megabytes": 0,
- "distribution_surcharges": {
- "surcharge_base_cost": 0,
- "surcharge_per_memory_megabyte": 0,
- "surcharge_per_memory_max_megabytes": 0,
- "surcharge_per_vcpu": 0,
- "surcharge_min_vcpu": 0
}, - "distribution_info": {
- "image_id": 0,
- "password_recovery": "manual",
- "remote_access_user": "string",
- "features": [
- "ssh"
]
}, - "backup_info": {
- "type": "daily",
- "server_id": 0,
- "offsite": true,
- "locked": true,
- "iso": true,
- "backup_disks": [
- {
- "id": 0,
- "size_gigabytes": 0,
- "min_disk_size": 0,
- "description": "string"
}
]
}
}
]
}
required | integer or string Example: 5 The ID or Slug (if an operating system) of the image to retrieve. |
required | object | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
curl -X GET "https://api.mammoth.com.au/v2/images/${image_id_or_slug}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "image": {
- "id": 0,
- "name": "string",
- "type": "custom",
- "distribution": "string",
- "full_name": "string",
- "slug": "string",
- "public": true,
- "regions": [
- "string"
], - "created_at": "2019-08-24T14:15:22Z",
- "min_disk_size": 0,
- "size_gigabytes": 0,
- "description": "string",
- "status": "NEW",
- "error_message": "string",
- "min_memory_megabytes": 0,
- "distribution_surcharges": {
- "surcharge_base_cost": 0,
- "surcharge_per_memory_megabyte": 0,
- "surcharge_per_memory_max_megabytes": 0,
- "surcharge_per_vcpu": 0,
- "surcharge_min_vcpu": 0
}, - "distribution_info": {
- "image_id": 0,
- "password_recovery": "manual",
- "remote_access_user": "string",
- "features": [
- "ssh"
]
}, - "backup_info": {
- "type": "daily",
- "server_id": 0,
- "offsite": true,
- "locked": true,
- "iso": true,
- "backup_disks": [
- {
- "id": 0,
- "size_gigabytes": 0,
- "min_disk_size": 0,
- "description": "string"
}
]
}
}
}
Only updating of user created backups is currently supported.
image_id required | integer <int64> The ID of the image to update. |
name | string or null [ 0 .. 250 ] characters Optional: a new display name for this image. Do not provide to leave the display name unchanged, submit an empty string to clear the display name. |
locked | boolean or null Optional: you may choose to lock an individual backup in which case we will not update that backup until you unlock it. Do not provide to leave the locked status unchanged. |
required | object | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
{- "name": "string",
- "locked": true
}
{- "image": {
- "id": 0,
- "name": "string",
- "type": "custom",
- "distribution": "string",
- "full_name": "string",
- "slug": "string",
- "public": true,
- "regions": [
- "string"
], - "created_at": "2019-08-24T14:15:22Z",
- "min_disk_size": 0,
- "size_gigabytes": 0,
- "description": "string",
- "status": "NEW",
- "error_message": "string",
- "min_memory_megabytes": 0,
- "distribution_surcharges": {
- "surcharge_base_cost": 0,
- "surcharge_per_memory_megabyte": 0,
- "surcharge_per_memory_max_megabytes": 0,
- "surcharge_per_vcpu": 0,
- "surcharge_min_vcpu": 0
}, - "distribution_info": {
- "image_id": 0,
- "password_recovery": "manual",
- "remote_access_user": "string",
- "features": [
- "ssh"
]
}, - "backup_info": {
- "type": "daily",
- "server_id": 0,
- "offsite": true,
- "locked": true,
- "iso": true,
- "backup_disks": [
- {
- "id": 0,
- "size_gigabytes": 0,
- "min_disk_size": 0,
- "description": "string"
}
]
}
}
}
Only user created backup images are currently available for download.
image_id required | integer <int64> The ID of the image to download. |
required | object | ||||||
|
curl -X GET "https://api.mammoth.com.au/v2/images/${image_id}/download" \ -H "Authorization: Bearer ${APITOKEN}"
{- "link": {
- "id": 0,
- "expiry": "2019-08-24T14:15:22Z",
- "disks": [
- {
- "id": 0,
- "compressed_url": "string",
- "raw_url": "string"
}
]
}
}
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (Region) |
curl -X GET "https://api.mammoth.com.au/v2/regions?page=${page}&per_page=${per_page}" \
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "regions": [
- {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}
]
}
server_id | integer <int64> If supplied only sizes available for a resize the specified server will be returned. This parameter is only available when authenticated. |
integer or string Example: image=5 If null or not provided regions that support the size are included in the returned objects regardless of operating system. If this is provided it must be the id or slug of an operating system image and will cause only valid regions for the size and operating system to be included in the returned objects. | |
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (Size) |
curl -X GET "https://api.mammoth.com.au/v2/sizes?server_id=${server_id}&image=${image}&page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "sizes": [
- {
- "slug": "string",
- "description": "string",
- "cpu_description": "string",
- "storage_description": "string",
- "size_type": {
- "slug": "string",
- "name": "string",
- "description": "string"
}, - "available": true,
- "regions": [
- "string"
], - "regions_out_of_stock": [
- "string"
], - "price_monthly": 0,
- "price_hourly": 0,
- "distribution_surcharge_credit_monthly": 0,
- "disk": 0,
- "memory": 0,
- "transfer": 0,
- "excess_transfer_cost_per_gigabyte": 0,
- "vcpus": 0,
- "vcpu_units": "string",
- "options": {
- "disk_min": 0,
- "disk_max": 0,
- "disk_cost_per_additional_gigabyte": 0,
- "restricted_disk_values": [
- 0
], - "memory_max": 0,
- "memory_cost_per_additional_megabyte": 0,
- "transfer_max": 0,
- "transfer_cost_per_additional_gigabyte": 0,
- "ipv4_addresses_max": 0,
- "ipv4_addresses_cost_per_address": 0,
- "discount_for_no_public_ipv4": 0,
- "daily_backups": 0,
- "weekly_backups": 0,
- "monthly_backups": 0,
- "backups_cost_per_backup_per_gigabyte": 0,
- "offsite_backups_cost_per_gigabyte": 0,
- "offsite_backup_frequency_cost": {
- "daily_per_gigabyte": 0,
- "weekly_per_gigabyte": 0,
- "monthly_per_gigabyte": 0
}
}
}
]
}
required | object | ||||||||
|
curl -X GET "https://api.mammoth.com.au/v2/sizes/discounts" \ -H "Authorization: Bearer ${APITOKEN}"
{- "payment_frequency_discounts": {
- "percentage_discounts_for_each_duration": [
- {
- "payment_frequency": "string",
- "discount_percentage": 0
}
]
}
}
required | Array of objects (ServiceLevel) | ||||||
Array
|
curl -X GET "https://api.mammoth.com.au/v2/sizes/service-levels" \ -H "Authorization: Bearer ${APITOKEN}"
{- "service_levels": [
- {
- "id": 0,
- "name": "string",
- "summary": "string"
}
]
}
software_id required | integer <int64> The ID of the software to fetch. |
required | object | ||||||||||||||||||||
|
curl -X GET "https://api.mammoth.com.au/v2/software/${software_id}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "software": {
- "id": 0,
- "enabled": true,
- "name": "string",
- "description": "string",
- "cost_per_licence_per_month": 0,
- "minimum_licence_count": 0,
- "maximum_licence_count": 0,
- "licence_step_count": 0,
- "group": "string",
- "supported_operating_systems": [
- "string"
]
}
}
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (Software) |
curl -X GET "https://api.mammoth.com.au/v2/software?page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "software": [
- {
- "id": 0,
- "enabled": true,
- "name": "string",
- "description": "string",
- "cost_per_licence_per_month": 0,
- "minimum_licence_count": 0,
- "maximum_licence_count": 0,
- "licence_step_count": 0,
- "group": "string",
- "supported_operating_systems": [
- "string"
]
}
]
}
If any software for the operating system has a non null value for the group property, one (and only one) of the software from each group must be selected. There may be a software in each group with a licence_step_count value of -1 that may be selected to indicate the software from that group is not required.
required | integer or string Example: 5 The ID or slug of the operating system for which available software should be listed. |
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (Software) |
curl -X GET "https://api.mammoth.com.au/v2/software/operating_system/${operating_system_id_or_slug}?page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "software": [
- {
- "id": 0,
- "enabled": true,
- "name": "string",
- "description": "string",
- "cost_per_licence_per_month": 0,
- "minimum_licence_count": 0,
- "maximum_licence_count": 0,
- "licence_step_count": 0,
- "group": "string",
- "supported_operating_systems": [
- "string"
]
}
]
}
load_balancer_id required | integer <int64> The ID of the load balancer to fetch. |
required | object | ||||||||||||||||||||||||||
|
curl -X GET "https://api.mammoth.com.au/v2/load_balancers/${load_balancer_id}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "load_balancer": {
- "id": 0,
- "name": "string",
- "ip": "string",
- "status": "new",
- "created_at": "2019-08-24T14:15:22Z",
- "forwarding_rules": [
- {
- "entry_protocol": "http"
}
], - "health_check": {
- "protocol": "http",
- "path": "string"
}, - "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "server_ids": [
- 0
]
}
}
Any existing settings or servers that are not included will revert to default values.
load_balancer_id required | integer <int64> The ID of the load balancer to update. |
name required | string non-empty The hostname of the load balancer. |
Array of objects or null (ForwardingRule) The rules that control which traffic the load balancer will forward to servers in the pool. Leave null to accept a default "HTTP" only forwarding rule. | |
object or null The rules that determine which servers are considered 'healthy' and in the server pool for the load balancer. Leave this null to accept appropriate defaults based on the forwarding_rules. | |
server_ids | Array of integers or null <int64> A list of server IDs to assign to this load balancer. |
required | object |
object or null |
{- "name": "string",
- "forwarding_rules": [
- {
- "entry_protocol": "http"
}
], - "health_check": {
- "protocol": "http",
- "path": "string"
}, - "server_ids": [
- 0
]
}
{- "load_balancer": {
- "id": 0,
- "name": "string",
- "ip": "string",
- "status": "new",
- "created_at": "2019-08-24T14:15:22Z",
- "forwarding_rules": [
- {
- "entry_protocol": "http"
}
], - "health_check": {
- "protocol": "http",
- "path": "string"
}, - "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "server_ids": [
- 0
]
}, - "links": {
- "actions": [
- {
- "id": 0,
- "rel": "string",
- "href": "string"
}
]
}
}
load_balancer_id required | integer <int64> The ID of the load balancer to cancel. |
curl -X DELETE "https://api.mammoth.com.au/v2/load_balancers/${load_balancer_id}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "type": "string",
- "title": "string",
- "status": 0,
- "detail": "string",
- "instance": "string",
- "property1": null,
- "property2": null
}
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (LoadBalancer) |
curl -X GET "https://api.mammoth.com.au/v2/load_balancers?page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "load_balancers": [
- {
- "id": 0,
- "name": "string",
- "ip": "string",
- "status": "new",
- "created_at": "2019-08-24T14:15:22Z",
- "forwarding_rules": [
- {
- "entry_protocol": "http"
}
], - "health_check": {
- "protocol": "http",
- "path": "string"
}, - "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "server_ids": [
- 0
]
}
]
}
name required | string non-empty The hostname of the load balancer. |
Array of objects or null (ForwardingRule) The rules that control which traffic the load balancer will forward to servers in the pool. Leave null to accept a default "HTTP" only forwarding rule. | |
object or null The rules that determine which servers are considered 'healthy' and in the server pool for the load balancer. Leave this null to accept appropriate defaults based on the forwarding_rules. | |
server_ids | Array of integers or null <int64> A list of server IDs to assign to this load balancer. |
region | string or null Leave null to create an anycast load balancer. |
required | object |
required | object |
{- "name": "string",
- "forwarding_rules": [
- {
- "entry_protocol": "http"
}
], - "health_check": {
- "protocol": "http",
- "path": "string"
}, - "server_ids": [
- 0
], - "region": "string"
}
{- "load_balancer": {
- "id": 0,
- "name": "string",
- "ip": "string",
- "status": "new",
- "created_at": "2019-08-24T14:15:22Z",
- "forwarding_rules": [
- {
- "entry_protocol": "http"
}
], - "health_check": {
- "protocol": "http",
- "path": "string"
}, - "region": {
- "slug": "string",
- "name": "string",
- "sizes": [
- "string"
], - "available": true,
- "features": [
- "string"
], - "name_servers": [
- "string"
]
}, - "server_ids": [
- 0
]
}, - "links": {
- "actions": [
- {
- "id": 0,
- "rel": "string",
- "href": "string"
}
]
}
}
required | Array of objects (LoadBalancerAvailabilityOption) | ||||||||
Array
|
curl -X GET "https://api.mammoth.com.au/v2/load_balancers/availability" \ -H "Authorization: Bearer ${APITOKEN}"
{- "load_balancer_availability_options": [
- {
- "regions": [
- "string"
], - "anycast": true,
- "price_monthly": 0,
- "price_hourly": 0
}
]
}
load_balancer_id required | integer <int64> The ID of the load balancer to which servers should be added. |
server_ids required | Array of integers <int64> [ items <int64 > ] A list of server IDs. |
{- "server_ids": [
- 0
]
}
{- "type": "string",
- "title": "string",
- "status": 0,
- "detail": "string",
- "instance": "string",
- "errors": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "property1": null,
- "property2": null
}
load_balancer_id required | integer <int64> The ID of the load balancer for which servers should be removed. |
server_ids required | Array of integers <int64> [ items <int64 > ] A list of server IDs. |
{- "server_ids": [
- 0
]
}
{- "type": "string",
- "title": "string",
- "status": 0,
- "detail": "string",
- "instance": "string",
- "errors": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "property1": null,
- "property2": null
}
load_balancer_id required | integer <int64> The ID of the load balancer to which forwarding rules should be added. |
required | Array of objects (ForwardingRule) The rules that control which traffic the load balancer will forward to servers in the pool. | ||
Array
|
{- "forwarding_rules": [
- {
- "entry_protocol": "http"
}
]
}
{- "type": "string",
- "title": "string",
- "status": 0,
- "detail": "string",
- "instance": "string",
- "errors": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "property1": null,
- "property2": null
}
load_balancer_id required | integer <int64> The ID of the load balancer for which forwarding rules should be removed. |
required | Array of objects (ForwardingRule) The rules that control which traffic the load balancer will forward to servers in the pool. | ||
Array
|
{- "forwarding_rules": [
- {
- "entry_protocol": "http"
}
]
}
{- "type": "string",
- "title": "string",
- "status": 0,
- "detail": "string",
- "instance": "string",
- "errors": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "property1": null,
- "property2": null
}
vpc_id required | integer <int64> The target vpc id. |
required | object | ||||||||
|
curl -X GET "https://api.mammoth.com.au/v2/vpcs/${vpc_id}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "vpc": {
- "id": 0,
- "name": "string",
- "ip_range": "string",
- "route_entries": [
- {
- "router": "string",
- "destination": "string",
- "description": "string"
}
]
}
}
Anything not included in this will be removed, especially route entries.
vpc_id required | integer <int64> The target vpc id. |
name required | string [ 0 .. 250 ] characters A name to help identify this VPC. |
Array of objects or null (RouteEntryRequest) The route entries that control how network traffic is directed through the VPC environment. |
required | object | ||||||||
|
{- "name": "string",
- "route_entries": [
- {
- "router": "string",
- "destination": "string",
- "description": "string"
}
]
}
{- "vpc": {
- "id": 0,
- "name": "string",
- "ip_range": "string",
- "route_entries": [
- {
- "router": "string",
- "destination": "string",
- "description": "string"
}
]
}
}
Anything not included in this will be un-altered.
vpc_id required | integer <int64> The target vpc id. |
name | string or null [ 1 .. 250 ] characters
|
Array of objects or null (RouteEntryRequest) Submit null to leave unaltered, submit an empty list to clear all route entries. It is not possible to PATCH individual route entries, to alter a route entry submit the entire list of route entries you wish to save. |
required | object | ||||||||
|
{- "name": "string",
- "route_entries": [
- {
- "router": "string",
- "destination": "string",
- "description": "string"
}
]
}
{- "vpc": {
- "id": 0,
- "name": "string",
- "ip_range": "string",
- "route_entries": [
- {
- "router": "string",
- "destination": "string",
- "description": "string"
}
]
}
}
vpc_id required | integer <int64> The target vpc id. |
curl -X DELETE "https://api.mammoth.com.au/v2/vpcs/${vpc_id}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "type": "string",
- "title": "string",
- "status": 0,
- "detail": "string",
- "instance": "string",
- "property1": null,
- "property2": null
}
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (Vpc) |
curl -X GET "https://api.mammoth.com.au/v2/vpcs?page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "vpcs": [
- {
- "id": 0,
- "name": "string",
- "ip_range": "string",
- "route_entries": [
- {
- "router": "string",
- "destination": "string",
- "description": "string"
}
]
}
]
}
name required | string [ 0 .. 250 ] characters A name to help identify this VPC. |
Array of objects or null (RouteEntryRequest) The route entries that control how network traffic is directed through the VPC environment. | |
ip_range | string or null A private address range that you select during creation, such as the default value of 10.240.0.0/16. Because the virtual network is dedicated to your use, you may use whatever IP address range you like. |
required | object | ||||||||
|
{- "name": "string",
- "route_entries": [
- {
- "router": "string",
- "destination": "string",
- "description": "string"
}
], - "ip_range": "string"
}
{- "vpc": {
- "id": 0,
- "name": "string",
- "ip_range": "string",
- "route_entries": [
- {
- "router": "string",
- "destination": "string",
- "description": "string"
}
]
}
}
Only resource type 'server' is currently supported.
vpc_id required | integer <int64> The target vpc id. |
resource_type | string Enum: "server" "load-balancer" "ssh-key" "vpc" "image" "registered-domain-name"
| ||||||||||||||
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 | ||||||||||||||
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (VpcMember) |
curl -X GET "https://api.mammoth.com.au/v2/vpcs/${vpc_id}/members?resource_type=${resource_type}&page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "members": [
- {
- "name": "string",
- "resource_type": "server",
- "resource_id": "string",
- "created_at": "2019-08-24T14:15:22Z"
}
]
}
Any domain records that are created or managed here will only have an effect if the nameservers for the domain are set to our local nameservers.
local_nameservers required | Array of strings |
curl -X GET "https://api.mammoth.com.au/v2/domains/nameservers" \ -H "Authorization: Bearer ${APITOKEN}"
{- "local_nameservers": [
- "string"
]
}
The nameservers for domains are cached. If you have recently altered the nameservers for a managed domain you may need to refresh the cached domain records.
curl -X POST "https://api.mammoth.com.au/v2/domains/refresh_nameserver_cache" \ -H "Authorization: Bearer ${APITOKEN}" \ -H "Content-Type: application/json" -d "${PAYLOAD}"
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 |
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (Domain) |
curl -X GET "https://api.mammoth.com.au/v2/domains?page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "domains": [
- {
- "name": "string",
- "current_nameservers": [
- "string"
], - "ttl": 0,
- "zone_file": "string"
}
]
}
name required | string non-empty The domain name to add to the DNS management system. |
ip_address | string or null An optional IPv4 address that will be used to create an A record for the root domain. |
required | object | ||||||||
|
{- "name": "string",
- "ip_address": "string"
}
{- "domain": {
- "name": "string",
- "current_nameservers": [
- "string"
], - "ttl": 0,
- "zone_file": "string"
}
}
domain_name required | string The name of the domain to fetch. |
required | object | ||||||||
|
curl -X GET "https://api.mammoth.com.au/v2/domains/${domain_name}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "domain": {
- "name": "string",
- "current_nameservers": [
- "string"
], - "ttl": 0,
- "zone_file": "string"
}
}
domain_name required | string The name of the domain to delete. |
curl -X DELETE "https://api.mammoth.com.au/v2/domains/${domain_name}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "type": "string",
- "title": "string",
- "status": 0,
- "detail": "string",
- "instance": "string",
- "property1": null,
- "property2": null
}
domain_name required | string The domain name for which records should be listed. |
type | string Enum: "A" "AAAA" "CAA" "CNAME" "MX" "NS" "SOA" "SRV" "TXT"
| ||||||||||||||||||||
name | string Only return records for this subdomain name. | ||||||||||||||||||||
page | integer <int32> [ 1 .. 2147483647 ] Default: 1 The selected page. Page numbering starts at 1 | ||||||||||||||||||||
per_page | integer <int32> [ 1 .. 200 ] Default: 20 The number of results to show per page. |
required | object Contains metadata about the response, currently this includes the total number of items. |
object or null | |
required | Array of objects (DomainRecord) |
curl -X GET "https://api.mammoth.com.au/v2/domains/${domain_name}/records?type=${type}&name=${name}&page=${page}&per_page=${per_page}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "meta": {
- "total": 0
}, - "links": {
- "pages": {
- "last": "string",
- "next": "string",
- "prev": "string",
- "first": "string"
}
}, - "domain_records": [
- {
- "id": 0,
- "type": "A",
- "name": "string",
- "data": "string",
- "priority": 0,
- "port": 0,
- "ttl": 0,
- "weight": 0,
- "flags": 0,
- "tag": "string"
}
]
}
domain_name required | string The domain name for which the record should be created. |
type | string or null Enum: "A" "AAAA" "CAA" "CNAME" "MX" "NS" "SOA" "SRV" "TXT" The type of the DNS record. |
name | string or null The subdomain for this record. Use @ for records on the domain itself, and * to create a wildcard record. |
data | string or null A general data field that has different functions depending on the record type. |
priority | integer or null <int32> [ 0 .. 65535 ] A priority value that is only relevant for SRV and MX records. |
port | integer or null <int32> [ 0 .. 65535 ] A port value that is only relevant for SRV records. |
ttl | integer or null <int32> This value is the time to live for the record, in seconds. |
weight | integer or null <int32> [ 0 .. 65535 ] The weight value that is only relevant for SRV records. |
flags | integer or null <int32> [ 0 .. 255 ] An unsigned integer between 0-255 that is only relevant for CAA records. |
tag | string or null [ 1 .. 15 ] characters [a-z0-9]+ A parameter tag that is only relevant for CAA records. |
required | object | ||||||||||||||||||||||||||||||||||||||||
|
{- "type": "A",
- "name": "string",
- "data": "string",
- "priority": 65535,
- "port": 65535,
- "ttl": 0,
- "weight": 65535,
- "flags": 255,
- "tag": "string"
}
{- "domain_record": {
- "id": 0,
- "type": "A",
- "name": "string",
- "data": "string",
- "priority": 0,
- "port": 0,
- "ttl": 0,
- "weight": 0,
- "flags": 0,
- "tag": "string"
}
}
domain_name required | string The domain name for which the record should be fetched. |
record_id required | integer <int64> The ID of the record to fetch. |
required | object | ||||||||||||||||||||||||||||||||||||||||
|
curl -X GET "https://api.mammoth.com.au/v2/domains/${domain_name}/records/${record_id}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "domain_record": {
- "id": 0,
- "type": "A",
- "name": "string",
- "data": "string",
- "priority": 0,
- "port": 0,
- "ttl": 0,
- "weight": 0,
- "flags": 0,
- "tag": "string"
}
}
domain_name required | string The domain name for which the record should be updated. |
record_id required | integer <int64> The ID of the record to update. |
type | string or null Enum: "A" "AAAA" "CAA" "CNAME" "MX" "NS" "SOA" "SRV" "TXT" The type of the DNS record. |
name | string or null The subdomain for this record. Use @ for records on the domain itself, and * to create a wildcard record. |
data | string or null A general data field that has different functions depending on the record type. |
priority | integer or null <int32> [ 0 .. 65535 ] A priority value that is only relevant for SRV and MX records. |
port | integer or null <int32> [ 0 .. 65535 ] A port value that is only relevant for SRV records. |
ttl | integer or null <int32> This value is the time to live for the record, in seconds. |
weight | integer or null <int32> [ 0 .. 65535 ] The weight value that is only relevant for SRV records. |
flags | integer or null <int32> [ 0 .. 255 ] An unsigned integer between 0-255 that is only relevant for CAA records. |
tag | string or null [ 1 .. 15 ] characters [a-z0-9]+ A parameter tag that is only relevant for CAA records. |
required | object | ||||||||||||||||||||||||||||||||||||||||
|
{- "type": "A",
- "name": "string",
- "data": "string",
- "priority": 65535,
- "port": 65535,
- "ttl": 0,
- "weight": 65535,
- "flags": 255,
- "tag": "string"
}
{- "domain_record": {
- "id": 0,
- "type": "A",
- "name": "string",
- "data": "string",
- "priority": 0,
- "port": 0,
- "ttl": 0,
- "weight": 0,
- "flags": 0,
- "tag": "string"
}
}
domain_name required | string The domain name for which the record should be deleted. |
record_id required | integer <int64> The ID of the record to delete. |
curl -X DELETE "https://api.mammoth.com.au/v2/domains/${domain_name}/records/${record_id}" \ -H "Authorization: Bearer ${APITOKEN}"
{- "type": "string",
- "title": "string",
- "status": 0,
- "detail": "string",
- "instance": "string",
- "property1": null,
- "property2": null
}