UpCloud API
Manage your UpCloud account and resources.
UpCloud is a leading European cloud service provider with a global cloud platform spanning four continents. UpCloud offers Cloud Servers, Managed Kubernetes, Managed Databases, Object Storage and more. This API can be used to manage your UpCloud account and resources programmatically.
Note: This document is a work-in-progress preview, provided for early access and feedback. It is subject to change without notice, including backwards incompatible changes, for example for tooling such as code generators.
Tags
Server
Manages virtual servers (also known as virtual machines or instances
Server Group
Server group management
Server Size
Server size management
Plan
Plans are preconfigured server configurations with fixed price. Each plan includes certain number of CPU cores, memory amount, storage and transfer quota. Most plans also include one public IPv4 address. Utility IPv4 addresses and public IPv6 addresses are currently free of charge, so they are not included in plan.
In addition to plans available in a zone, there is always possibility for free scaling of CPU, memory and disk resources. In such cases the plan used by server will be reported as "custom" by API. It is possible to change existing "custom" server to a fixed plan provided that CPU cores and memory amount matches the selected plan.
GPU plans also have additional
gpu_amount and gpu_model attributes, which indicate the number of GPUs and their model included in the plan.
If server's storage or network resources do not fit to plan's specification, they are billed on an hourly basis. The storage device(s) and IP addresses included in fixed plan price have part_of_plan attribute with value "yes" in server details response.Device
Device management
Events
Event management
Timezone
Timezone management
VNC Keymap
VNC keymap management
Network
Manages virtual networks and network interfaces.
Network Peering
Network peering management
IP Address
Manages IP addresses.
Router
Router management
Firewall Ruleset
UpCloud SDN Firewall API. Allows creation, management and deletion of Firewall rulesets and Firewall rules.
Account
Account management and authentication
Account Tokens
Account related operations
Permission
Manage permissions for sub-accounts to access resources owned by the main account.
Tag
User can define a set of free-form tags to group and identify a subset
of their servers. Tags can be for example webserver, database, PROD, QA, DEV etc.
A server can have several tags. API can be used to return only servers
matching specified tags. Note that all operations changing server's
state or attributes must still be done individually for each server
UUID, tags can be used only to return a list of servers.
Warning! Consider using labels instead of tags: Tags are an access control feature and only available for a limited set of resources. Use labels to describe and filter your resources. Documentation for labels can be found on the resource specific documentation pages.
Creating and modifying tags is allowed only by main account. Subaccounts
have access only to listing tags and tagged servers they are granted
access to.
Price
Retrieve pricing information for UpCloud resources and services.
Currency
Currency management
Kubernetes
Kubernetes is a container orchestration system for automating, managing and scaling software deployment.
Managed Kubernetes allows you to easily create Kubernetes clusters without having to take care about low level details.
Partner
Partner API gives UpCloud partners the ability manage accounts for their customers.
Note that use of this API is available only to accounts provisioned as partner accounts. Please contact your account representative for further details.
Block Storage
A storage device is a block device similar to a physical hard disk. It can be used to install an operating system or hold some other filesystem for a server.
Storages can be freely attached to any server within the same zone and under the same account. A maximum of 16 storage devices can be attached to a server at the same time; however, the combined limit for network interfaces and storage devices is 24.
Storage types
There are four different storage types: disk, cdrom, template and backup.Object Storage
Object Storage is a computer data storage architecture that manages data as objects as opposed to block storage which manages data as blocks within sectors and tracks. Managed Object storage is commonly used to manage large amounts of unstructured data for example storing large datasets like photos, music, or files in online collaboration services. All customers data is encrypted by default using encryption at rest.
Managed Object Storage API commands allow creation, management and deletion of Object Storage devices as well as viewing Object Storage network data usage. Managed Object Storage is fully S3-compliant allowing file and bucket management using existing S3 clients.
API follows JSON Merge Patch semantics. Note when modifying nested structures payload should contain entire array, which in a sense is PUT within PATCH for them. JSON Merge Patch uses null to explicitly indicate property deletion while absent properties are ignored, i.e. not modified.
File Storage
File Storage is a scalable file storage service that provides shared access to files over a network using the NFS protocol.
The File Storage API allows the creation, configuration, and deletion of file storage service, as well as monitoring of network and storage usage.
API follows JSON Merge Patch semantics. Note when modifying nested structures payload should contain entire array, which in a sense is PUT within PATCH for them. JSON Merge Patch uses null to explicitly indicate property deletion while absent properties are ignored, i.e. not modified.
Database
A Managed Database is a database-as-a-service that lets customers use a database without setting up servers or database software. The service configuration defines high availability, resources, the database software version, and security parameters.
The Managed Database API lets you manage instances of supported open-source engines, including MySQL, PostgreSQL, Valkey, and OpenSearch. Managed Databases are available in every UpCloud zone. All request and response payloads are JSON.
gateway
UpCloud Gateway API. Allows creation, management and deletion of gateways.
Load Balancer
A Managed load balancer works as the network level frontend of customer application by directing connections to the backend servers.
The Managed load balancer API allows customer to manage their services. Managed load balancers are available in every UpCloud zone. The API requests and responses payload are in JSON format only.
API follows JSON Merge Patch semantics. Note when modifying nested structures payload should contain entire array, which in a sense is PUT within PATCH for them. JSON Merge Patch uses null to explicitly indicate property deletion while absent properties are ignored, i.e. not modified.
It is recommended to use the hostnames of your load balancer when directing your domain to it. This ensures utilization of all addresses that the load balancer might possess.
For the subdomains of your domain, use CNAME. For the primary domain, you might need to use ALIAS, or whatever is supported by your DNS provider.
Zone
Operations for managing zones.