Skip to content

Add Node Pool

POST
/tenant_clusters/{tenant_cluster_id}/node-pools/
curl --request POST \
--url 'https://api.e2enetworks.com/myaccount/api/v1/gpu/tenant_clusters/{tenant_cluster_id}/node-pools/?project_id=<PROJECT_ID>&location=<LOCATION>&apikey=<API_KEY>' \
--header 'Authorization: Bearer <API_TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"name": "string",
"sku_id": 0,
"sku_item_price_id": 0,
"replicas": 0,
"committed_instance_policy": "auto_renew",
"next_sku_item_price_id": 0,
"labels": [
{
"key": "team",
"value": "ml"
}
],
"taints": [
{
"key": "dedicated",
"value": "gpu",
"effect": "NoSchedule"
}
]
}'

Adds a worker node pool to a cluster that is ready or worker_joined. The pool starts queued, and a ready cluster moves to worker_joining while the new nodes join.

The name must be unique among the cluster’s pools, ignoring case; a deleted pool’s name can be used again. Credit and free stock are checked as they are when you create a cluster, and a committed plan charges its whole term upfront.

tenant_cluster_id
required
integer

Kubernetes cluster ID, as returned by List Kubernetes Clusters.

project_id
required
integer

Project ID

active_iam
integer

Active IAM ID (To access contact person account) Find your Active IAM ID here

location
required
string
Allowed values: Delhi Chennai

Location

Media typeapplication/json
object
name
required

Lowercase letters, numbers, and hyphens, starting and ending with a letter or number; unique in the cluster, ignoring case.

string
<= 128 characters
sku_id
required

The computing resource for this pool’s nodes.

integer
sku_item_price_id
required

An hourly or committed plan of that resource, in this region.

integer
replicas
required

Node count.

integer
>= 1 <= 25
committed_instance_policy

Required when the plan is committed. What happens when the term ends.

string
Allowed values: auto_renew convert_to_hourly_billing
next_sku_item_price_id

Required with a committed plan: a committed plan of the same resource with auto_renew, or an hourly one with convert_to_hourly_billing.

integer
nullable
labels

Node labels for this pool. Keys must be unique.

Array<object>
<= 20 items
object
key
required

The key without the node.e2enetworks.com/ prefix, which the platform adds. Up to 63 letters, numbers, -, _, or ., starting and ending with a letter or number.

string
<= 63 characters

Example

team
value
required

Required. The same characters as the key.

string
<= 63 characters

Example

ml
taints

Node taints for this pool. Each key and effect pair must be unique.

Array<object>
<= 10 items
object
key
required

The key without the node.e2enetworks.com/ prefix, which the platform adds. Up to 63 letters, numbers, -, _, or ., starting and ending with a letter or number.

string
<= 63 characters

Example

dedicated
value

May be empty.

string
<= 63 characters

Example

gpu
effect
required

NoExecute evicts running pods that do not tolerate the taint.

string
Allowed values: NoSchedule PreferNoSchedule NoExecute

Example

NoSchedule

The pool is queued for creation.

Media typeapplication/json
object
code
integer
data
object
id
integer
tenant_cluster_id
integer
name
string
role
string
Allowed values: control_plane worker
status

resizing while the pool moves to a new fixed size, scaling while its autoscaler changes the node count.

string
Allowed values: queued joining ready resizing scaling failed deleting
replicas

The node count the pool is set to.

integer
ready_replicas

The pool’s nodes that are up and ready.

integer
labels
Array<object>
object
key
required

The key without the node.e2enetworks.com/ prefix, which the platform adds. Up to 63 letters, numbers, -, _, or ., starting and ending with a letter or number.

string
<= 63 characters
value
required

Required. The same characters as the key.

string
<= 63 characters
taints
Array<object>
object
key
required

The key without the node.e2enetworks.com/ prefix, which the platform adds. Up to 63 letters, numbers, -, _, or ., starting and ending with a letter or number.

string
<= 63 characters
value

May be empty.

string
<= 63 characters
effect
required

NoExecute evicts running pods that do not tolerate the taint.

string
Allowed values: NoSchedule PreferNoSchedule NoExecute
sku_details

The computing resource and pricing plan a node pool runs on.

object
specs
object
sku_id
integer
name
string
series
string
cpu
integer
memory
integer
plan
object
sku_item_price_id
integer
sku_type

hourly or committed.

string
committed_days
integer
unit_price
number
currency
string
committed_info

Set only for a pool on a committed plan.

object
updation_policy
string
Allowed values: auto_renew convert_to_hourly_billing
next_sku_item_price

The computing resource and pricing plan a node pool runs on.

object
specs
object
sku_id
integer
name
string
series
string
cpu
integer
memory
integer
plan
object
sku_item_price_id
integer
sku_type

hourly or committed.

string
committed_days
integer
unit_price
number
currency
string
end_date
string format: date-time
nullable
autoscaling

The pool’s size bounds. A min_replicas lower than max_replicas means the pool is autoscaled; equal values are a fixed size.

object
min_replicas
integer
max_replicas
integer
created_at
string format: date-time
updated_at
string format: date-time
errors
object
message
string

Example

{
"code": 201,
"data": {
"id": 22,
"tenant_cluster_id": 103,
"name": "app-workers",
"role": "control_plane",
"status": "queued",
"replicas": 2,
"ready_replicas": 2,
"labels": [
{
"key": "team",
"value": "ml"
}
],
"taints": [
{
"key": "dedicated",
"value": "gpu",
"effect": "NoSchedule"
}
],
"sku_details": {
"specs": {
"sku_id": 101,
"name": "C3.8GB",
"series": "CPU",
"cpu": 4,
"memory": 8
},
"plan": {
"sku_item_price_id": 1001,
"sku_type": "hourly",
"committed_days": 0,
"unit_price": 4.5,
"currency": "INR"
}
},
"committed_info": {
"updation_policy": "auto_renew",
"next_sku_item_price": {
"specs": {
"sku_id": 101,
"name": "C3.8GB",
"series": "CPU",
"cpu": 4,
"memory": 8
},
"plan": {
"sku_item_price_id": 1001,
"sku_type": "hourly",
"committed_days": 0,
"unit_price": 4.5,
"currency": "INR"
}
},
"end_date": "2026-11-20T10:15:00Z"
},
"autoscaling": {
"min_replicas": 2,
"max_replicas": 2
},
"created_at": "2026-10-20T10:15:00Z",
"updated_at": "2026-10-20T10:42:00Z"
},
"errors": {},
"message": "Node pool creation queued successfully"
}