import requests
url = "https://platform.ankra.app/org/clusters/scaleway/{cluster_id}/node-groups/{group_name}/instance-type"
payload = { "instance_type": "<string>" }
headers = {
"cookie": "ankra_session=",
"X-Ankra-CSRF": "<x-ankra-csrf>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {
cookie: 'ankra_session=',
'X-Ankra-CSRF': '<x-ankra-csrf>',
'Content-Type': 'application/json'
},
body: JSON.stringify({instance_type: '<string>'})
};
fetch('https://platform.ankra.app/org/clusters/scaleway/{cluster_id}/node-groups/{group_name}/instance-type', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));curl --request PUT \
--url https://platform.ankra.app/org/clusters/scaleway/{cluster_id}/node-groups/{group_name}/instance-type \
--header 'Content-Type: application/json' \
--header 'X-Ankra-CSRF: <x-ankra-csrf>' \
--cookie ankra_session= \
--data '
{
"instance_type": "<string>"
}
'{
"group_name": "<string>",
"operation_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"updated": 123
}{
"detail": "Cluster not found"
}{
"detail": "Cluster not found"
}{
"detail": "Cluster not found"
}{
"detail": "Cluster not found"
}{
"detail": "Cluster not found"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}{
"detail": "Cluster not found"
}Resize node group
Browser session authentication; RBAC permission clusters.write. PAT mutations support wait=false where implemented; browser mutations require CSRF.
import requests
url = "https://platform.ankra.app/org/clusters/scaleway/{cluster_id}/node-groups/{group_name}/instance-type"
payload = { "instance_type": "<string>" }
headers = {
"cookie": "ankra_session=",
"X-Ankra-CSRF": "<x-ankra-csrf>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {
cookie: 'ankra_session=',
'X-Ankra-CSRF': '<x-ankra-csrf>',
'Content-Type': 'application/json'
},
body: JSON.stringify({instance_type: '<string>'})
};
fetch('https://platform.ankra.app/org/clusters/scaleway/{cluster_id}/node-groups/{group_name}/instance-type', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));curl --request PUT \
--url https://platform.ankra.app/org/clusters/scaleway/{cluster_id}/node-groups/{group_name}/instance-type \
--header 'Content-Type: application/json' \
--header 'X-Ankra-CSRF: <x-ankra-csrf>' \
--cookie ankra_session= \
--data '
{
"instance_type": "<string>"
}
'{
"group_name": "<string>",
"operation_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"updated": 123
}{
"detail": "Cluster not found"
}{
"detail": "Cluster not found"
}{
"detail": "Cluster not found"
}{
"detail": "Cluster not found"
}{
"detail": "Cluster not found"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}{
"detail": "Cluster not found"
}Authorizations
Browser session. Mutations also require X-Ankra-CSRF.
Headers
Must match the ankra_csrf browser cookie.
Body
The new instance type for every node in the group. Changing it power-cycles each node, so the nodes are rolled in bounded lanes and each is drained before it goes down.
Bypass PodDisruptionBudgets when draining each node before it is power-cycled. Off by default: a budget is a workload owner's stated availability requirement.
Response
Successful response
Operation carrying the cloud resize; poll it to know when the group is back. Null when the write scheduled no work: a stopped cluster applies the new type on start, a group still being created is left to the create, and a group already covered by an active write operation is left to that operation.