Python (SDK)
from latitudesh_python_sdk import Latitudesh
import os
with Latitudesh(
bearer=os.getenv("LATITUDESH_BEARER", ""),
) as latitudesh:
res = latitudesh.kubernetes_clusters.list_kubernetes_available_versions()
# Handle response
print(res)import { Latitudesh } from "latitudesh-typescript-sdk";
const latitudesh = new Latitudesh({
bearer: process.env["LATITUDESH_BEARER"] ?? "",
});
async function run() {
const result = await latitudesh.kubernetesClusters.listKubernetesAvailableVersions();
console.log(result);
}
run();curl --request GET \
--url https://api.latitude.sh/kubernetes_clusters/available_versions \
--header 'Authorization: <api-key>'const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.latitude.sh/kubernetes_clusters/available_versions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.latitude.sh/kubernetes_clusters/available_versions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.latitude.sh/kubernetes_clusters/available_versions"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.latitude.sh/kubernetes_clusters/available_versions")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.latitude.sh/kubernetes_clusters/available_versions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": [
{
"latest": "v1.31.6+rke2r1",
"minor": "1.31"
},
{
"latest": "v1.32.5+rke2r1",
"minor": "1.32"
},
{
"latest": "v1.33.5+rke2r1",
"minor": "1.33"
},
{
"latest": "v1.34.6+rke2r1",
"minor": "1.34"
},
{
"latest": "v1.35.3+rke2r1",
"minor": "1.35"
}
]
}{
"errors": [
{
"code": "UNAUTHORIZED",
"message": "Invalid token"
}
]
}Kubernetes Clusters
List Available Kubernetes Versions
deprecated
Returns the list of available Kubernetes versions for cluster creation and upgrades. Versions are sourced from the RKE2 release channels and cached for 24 hours.
Each version object includes:
latest: The full version string (e.g.,v1.35.3+rke2r1)minor: The minor version number (e.g.,1.35)
The API returns the latest 5 supported minor versions. When upgrading clusters, you can only upgrade one minor version at a time (e.g., from 1.34 to 1.35).
GET
/
kubernetes_clusters
/
available_versions
Python (SDK)
from latitudesh_python_sdk import Latitudesh
import os
with Latitudesh(
bearer=os.getenv("LATITUDESH_BEARER", ""),
) as latitudesh:
res = latitudesh.kubernetes_clusters.list_kubernetes_available_versions()
# Handle response
print(res)import { Latitudesh } from "latitudesh-typescript-sdk";
const latitudesh = new Latitudesh({
bearer: process.env["LATITUDESH_BEARER"] ?? "",
});
async function run() {
const result = await latitudesh.kubernetesClusters.listKubernetesAvailableVersions();
console.log(result);
}
run();curl --request GET \
--url https://api.latitude.sh/kubernetes_clusters/available_versions \
--header 'Authorization: <api-key>'const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.latitude.sh/kubernetes_clusters/available_versions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.latitude.sh/kubernetes_clusters/available_versions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.latitude.sh/kubernetes_clusters/available_versions"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.latitude.sh/kubernetes_clusters/available_versions")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.latitude.sh/kubernetes_clusters/available_versions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": [
{
"latest": "v1.31.6+rke2r1",
"minor": "1.31"
},
{
"latest": "v1.32.5+rke2r1",
"minor": "1.32"
},
{
"latest": "v1.33.5+rke2r1",
"minor": "1.33"
},
{
"latest": "v1.34.6+rke2r1",
"minor": "1.34"
},
{
"latest": "v1.35.3+rke2r1",
"minor": "1.35"
}
]
}{
"errors": [
{
"code": "UNAUTHORIZED",
"message": "Invalid token"
}
]
}Was this page helpful?