Skip to main content
POST
Create Ankra Cloud cluster

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

x-ankra-organisation-id
string

PAT organisation override.

Body

application/json
bastion_plan
string
required
control_plane_plan
string
required
credential_id
string<uuid>
required
name
string
required
ssh_key_credential_id
string<uuid>
required
zone
string
required

Ankra Cloud zone (GET /clusters/ankracloud/zones); every server of the cluster is placed there.

bastion_allowed_ips
string[]

IPv4/IPv6 addresses or CIDRs allowed to SSH to the bastion; empty allows any source.

bastion_port
integer
default:22

Accepted for contract symmetry with the managed-gateway providers and ignored: the bastion listens on 22.

cni
enum<string>
default:cilium

kubeadm supports only cilium on Ankra Cloud.

Available options:
flannel,
calico,
cilium
cni_features
object
control_plane_count
integer
default:1
Required range: 1 <= x <= 9
criticality
string | null
description
string | null
distribution
enum<string>
default:kubeadm
Available options:
k3s,
kubeadm
environment
string | null
etcd_node_count
integer
default:3
etcd_plan
string
default:""

Required for an external etcd topology.

etcd_topology
enum<string>
default:stacked
Available options:
stacked,
external
external_cloud_provider
boolean
default:true
gitops_branch
string
default:master
gitops_credential_name
string
default:""
gitops_repository
string
default:""
include_dns
boolean
default:true
include_networking
boolean
default:true
k3s_disabled_components
string[] | null
kubernetes_version
string | null
network_ip_range
string | null

RFC 1918 CIDR (/16 through /29) of the private network Ankra creates; omitted derives one per cluster.

node_groups
object[]
private_network_id
string | null

Adopts an existing private network in the zone; mutually exclusive with network_ip_range. An adopted network is never deleted by the cluster.

retention_policy
enum<string>
default:retain
Available options:
delete,
retain
runtime_credential_id
string<uuid> | null

Credential the running cluster's cloud-controller-manager and CSI use; omitted reuses credential_id.

template
string
default:debian-13

Public OS template id (GET /clusters/ankracloud/templates).

worker_count
integer
default:1
Required range: 0 <= x <= 100
worker_plan
string
default:""

Required when worker_count is above zero and no node_groups are given.

Response

Successful response

cluster_id
string<uuid>
required
name
string
required