{"openapi":"3.0.0","info":{"title":"OVHcloud API specification","description":"Specification for OVHcloud API","version":"1.0","contact":{"name":"OVH","email":"api@ml.ovh.net"}},"servers":[{"url":"https://api.eu.ovhcloud.com/v2"}],"components":{"schemas":{"any":{"description":"Can be anything (text, int, bool, json, html, etc.)","example":"This is a content of any type !"},"common.CurrentTask":{"type":"object","description":"Asynchronous operation currently running","properties":{"errors":{"type":"array","description":"Errors that occurred on the task","nullable":true,"items":{"$ref":"#/components/schemas/common.TaskError"},"readOnly":true},"id":{"type":"string","description":"Identifier of the current task","format":"uuid","readOnly":true},"link":{"type":"string","description":"Link to the task details","readOnly":true},"status":{"allOf":[{"$ref":"#/components/schemas/common.CurrentTaskStatusEnum"}],"description":"Current global status of the current task","nullable":true,"readOnly":true},"type":{"type":"string","description":"Type of the current task","readOnly":true}}},"common.CurrentTaskStatusEnum":{"type":"string","description":"Current status of a task. A task in ERROR cannot be retried without your inputs. PENDING tasks will be executed as soon as possible. A RUNNING task is currently executing your original request. SCHEDULED is used for tasks that will be executed in the future.","enum":["ERROR","PENDING","RUNNING","SCHEDULED","WAITING_USER_INPUT"]},"common.Event":{"type":"object","description":"Represents an event for an async envelope","properties":{"createdAt":{"type":"string","description":"Creation date of the event","format":"date-time","readOnly":true},"kind":{"type":"string","description":"Nature of the event","readOnly":true},"link":{"type":"string","description":"Link to the event related resource","nullable":true,"readOnly":true},"message":{"type":"string","description":"Description of what happened on the event","readOnly":true},"type":{"allOf":[{"$ref":"#/components/schemas/common.EventTypeEnum"}],"description":"Type of the event","readOnly":true}}},"common.EventTypeEnum":{"type":"string","description":"Nature of an event","enum":["TARGET_SPEC_UPDATE","TASK_ERROR","TASK_START","TASK_SUCCESS"]},"common.ResourceStatusEnum":{"type":"string","description":"Current status of a resource","enum":["CREATING","CREATION_PLANNED","DELETING","ERROR","OUT_OF_SYNC","READY","SUSPENDED","UNKNOWN","UPDATING"]},"common.Task":{"type":"object","description":"Asynchronous operation","properties":{"createdAt":{"type":"string","description":"Creation date of the task","format":"date-time","readOnly":true},"errors":{"type":"array","description":"Errors that occurred on the task","nullable":true,"items":{"$ref":"#/components/schemas/common.TaskError"},"readOnly":true},"finishedAt":{"type":"string","description":"Ending date of the task","nullable":true,"format":"date-time","readOnly":true},"id":{"type":"string","description":"Unique identifier of the task","format":"uuid","readOnly":true},"link":{"type":"string","description":"Link to the related resource","readOnly":true},"message":{"type":"string","description":"Description of the task","readOnly":true},"progress":{"type":"array","description":"Progress steps of the asynchronous operation","items":{"$ref":"#/components/schemas/common.TaskProgress"},"readOnly":true},"startedAt":{"type":"string","description":"Starting date of the task","nullable":true,"format":"date-time","readOnly":true},"status":{"allOf":[{"$ref":"#/components/schemas/common.TaskStatusEnum"}],"description":"Current global status of the task","readOnly":true},"type":{"type":"string","description":"Type of the task","readOnly":true},"updatedAt":{"type":"string","description":"Last update of the task","format":"date-time","readOnly":true}}},"common.TaskError":{"type":"object","description":"Errors that occurred on the task","properties":{"message":{"type":"string","description":"Error description","readOnly":true}}},"common.TaskProgress":{"type":"object","description":"Detailed information about an asynchronous operation progress steps","properties":{"name":{"type":"string","description":"Progress step name","readOnly":true},"status":{"allOf":[{"$ref":"#/components/schemas/common.TaskStatusEnum"}],"description":"Current status of the progress step","readOnly":true}}},"common.TaskStatusEnum":{"type":"string","description":"Current status of a task","enum":["DONE","ERROR","PENDING","RUNNING","SCHEDULED","WAITING_USER_INPUT"]},"duration":{"type":"string","description":"Duration (e.g., P1Y2M3DT4H6M9S)","example":"P1Y2M3DT4H6M9S"},"email":{"type":"string","description":"Email address (e.g., api@ml.ovh.net)","format":"email","example":"api@ml.ovh.net"},"internationalPhoneNumber":{"type":"string","description":"International phone number","format":"phone-number"},"ip":{"type":"string","description":"IP address (e.g., 192.0.2.0)","format":"ipv4","example":"192.0.2.0"},"ipBlock":{"type":"string","description":"IP (v4 or v6) CIDR notation (e.g., 192.0.2.0/24)","format":"ip-block","example":"192.0.2.0/24"},"ipInterface":{"type":"string","description":"IP address (e.g., 192.0.2.0)","format":"ipv4","example":"192.0.2.0"},"ipv4":{"type":"string","description":"IPv4 address (e.g., 192.0.2.0)","format":"ipv4","example":"192.0.2.0"},"ipv4Block":{"type":"string","description":"IPv4 CIDR notation (e.g., 192.0.2.0/24)","format":"ipv4-block","example":"192.0.2.0/24"},"ipv6":{"type":"string","description":"IPv6 address (e.g., 2001:41d0:1:1994::1)","format":"ipv6","example":"2001:41d0:1:1994::1"},"ipv6Block":{"type":"string","description":"IPv6 CIDR notation (e.g., 2001:41d0::/128)","format":"ipv6-block","example":"2001:41d0::/128"},"macAddress":{"type":"string","description":"MAC address (e.g., 00:00:5e:00:53:01)","format":"mac-address","example":"00:00:5e:00:53:01"},"phoneNumber":{"type":"string","description":"Phone number","format":"phone-number"},"publicCloud.managedKubernetes.AntiAffinity":{"type":"object","description":"Anti-affinity placement of the nodepool nodes","properties":{"enabled":{"type":"boolean","description":"Whether anti-affinity placement is enabled for the nodepool","nullable":true},"policy":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.AntiAffinityPolicyEnum"}],"description":"Placement policy applied when anti-affinity is enabled","nullable":true}}},"publicCloud.managedKubernetes.AntiAffinityPolicyEnum":{"type":"string","description":"Placement policy between nodepool nodes. HARD spreads nodes across distinct hypervisors and caps the nodepool at the size the anti-affinity group allows.","enum":["HARD"]},"publicCloud.managedKubernetes.AttachFloatingIp":{"type":"object","description":"Floating IP attachment for the nodepool nodes","properties":{"enabled":{"type":"boolean","description":"Whether a floating IP is attached to each node of the nodepool","nullable":true}}},"publicCloud.managedKubernetes.Autoscaler":{"type":"object","description":"Automatic node scaling for the nodepool. When enabled, the node count varies between minNodes and maxNodes based on cluster load.","properties":{"enabled":{"type":"boolean","description":"Whether automatic scaling is enabled for the nodepool","nullable":true},"maxNodes":{"type":"integer","description":"Maximum number of nodes the autoscaler provisions","nullable":true},"minNodes":{"type":"integer","description":"Minimum number of nodes the autoscaler maintains. Lower bound of desiredNodes.","nullable":true},"scaleDown":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.AutoscalerScaleDown"}],"description":"Thresholds governing when the autoscaler removes underused nodes","nullable":true}}},"publicCloud.managedKubernetes.AutoscalerScaleDown":{"type":"object","description":"Scale-down thresholds the autoscaler applies when removing underused nodes","properties":{"unneededTimeSeconds":{"type":"integer","description":"Time in seconds a node must stay below the utilization threshold before it is removed","nullable":true},"unreadyTimeSeconds":{"type":"integer","description":"Time in seconds an unready node is kept before it is removed","nullable":true},"utilizationThreshold":{"type":"number","description":"Node utilization ratio below which a node becomes a scale-down candidate, as a fraction between 0 and 1. Defaults to 0.5.","nullable":true}}},"publicCloud.managedKubernetes.Node":{"type":"object","description":"A node of a managed Kubernetes cluster nodepool","properties":{"createdAt":{"type":"string","description":"Node creation timestamp","format":"date-time","readOnly":true},"currentState":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodeCurrentState"}],"description":"Actual node state","readOnly":true},"id":{"type":"string","description":"Unique identifier of the node","format":"uuid","readOnly":true},"resourceStatus":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodeResourceStatusEnum"}],"description":"Current lifecycle status of the node","readOnly":true},"updatedAt":{"type":"string","description":"Last node modification timestamp","format":"date-time","readOnly":true}}},"publicCloud.managedKubernetes.NodeConfig":{"type":"object","description":"Hardware configuration of the nodepool nodes","properties":{"attachFloatingIp":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.AttachFloatingIp"}],"description":"Floating IP attachment for the nodepool nodes","nullable":true},"flavor":{"type":"string","description":"Node flavor identifier defining the CPU, memory and disk of each node, for example b3-8. Immutable after creation."}},"required":["flavor"]},"publicCloud.managedKubernetes.NodeCurrentState":{"type":"object","description":"Observed state of the node","properties":{"deletedAt":{"type":"string","description":"Timestamp when the node was removed. Present only for a deleted node kept in retention.","nullable":true,"format":"date-time","readOnly":true},"deployedAt":{"type":"string","description":"Timestamp when the node joined the cluster. Absent until the node has joined.","nullable":true,"format":"date-time","readOnly":true},"flavor":{"type":"string","description":"Flavor of the Public Cloud instance backing the node","readOnly":true},"instanceId":{"type":"string","description":"Identifier of the Public Cloud instance backing the node. Absent until the instance is provisioned.","nullable":true,"format":"uuid","readOnly":true},"name":{"type":"string","description":"Node name","readOnly":true},"nodePoolId":{"type":"string","description":"Identifier of the nodepool the node belongs to","format":"uuid","readOnly":true},"upToDate":{"type":"boolean","description":"Whether the node runs the current nodepool specification","readOnly":true},"version":{"type":"string","description":"Kubernetes version currently installed on the node","nullable":true,"readOnly":true}}},"publicCloud.managedKubernetes.NodeResourceStatusEnum":{"type":"string","description":"Lifecycle status of the node. CREATING while provisioning, before the node joins the cluster. READY when operational on the current nodepool spec. UPDATING while a change reconciles. ERROR when the node is detected as failed. DELETING while being removed. DELETED once removed, kept in retention until it expires.","enum":["CREATING","DELETED","DELETING","ERROR","OUT_OF_SYNC","READY","SUSPENDED","UNKNOWN","UPDATING"]},"publicCloud.managedKubernetes.NodeTemplate":{"type":"object","description":"Kubernetes metadata and scheduling settings applied to every node of the nodepool","properties":{"metadata":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodeTemplateMetadata"}],"description":"Kubernetes metadata applied to each node","nullable":true},"spec":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodeTemplateSpec"}],"description":"Kubernetes scheduling settings applied to each node","nullable":true}}},"publicCloud.managedKubernetes.NodeTemplateMetadata":{"type":"object","description":"Kubernetes metadata applied to every node of the nodepool","properties":{"annotations":{"type":"object","description":"Annotations applied to each node, as key-value pairs","nullable":true,"additionalProperties":{"type":"string"}},"finalizers":{"type":"array","description":"Finalizers applied to each node, blocking deletion until the associated cleanup completes","nullable":true,"items":{"type":"string"}},"labels":{"type":"object","description":"Labels applied to each node, as key-value pairs","nullable":true,"additionalProperties":{"type":"string"}}}},"publicCloud.managedKubernetes.NodeTemplateSpec":{"type":"object","description":"Kubernetes scheduling settings applied to every node of the nodepool","properties":{"taints":{"type":"array","description":"Taints applied to each node","nullable":true,"items":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Taint"}},"unschedulable":{"type":"boolean","description":"Whether the nodes are marked unschedulable, preventing new pods from being placed on them","nullable":true}}},"publicCloud.managedKubernetes.Nodepool":{"type":"object","description":"A nodepool of a managed Kubernetes cluster","properties":{"checksum":{"type":"string","description":"Concurrency control hash of the target specification","readOnly":true},"createdAt":{"type":"string","description":"Nodepool creation timestamp","format":"date-time","readOnly":true},"currentState":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodepoolCurrentState"}],"description":"Actual nodepool state","readOnly":true},"currentTasks":{"type":"array","description":"In-progress asynchronous operations on the nodepool","nullable":true,"items":{"$ref":"#/components/schemas/common.CurrentTask"},"readOnly":true},"id":{"type":"string","description":"Unique identifier of the nodepool","format":"uuid","readOnly":true},"resourceStatus":{"allOf":[{"$ref":"#/components/schemas/common.ResourceStatusEnum"}],"description":"Current lifecycle status of the nodepool","readOnly":true},"targetSpec":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodepoolTargetSpec"}],"description":"Desired nodepool specification","readOnly":true},"updatedAt":{"type":"string","description":"Last nodepool modification timestamp","format":"date-time","readOnly":true}}},"publicCloud.managedKubernetes.NodepoolBillingTypeEnum":{"type":"string","description":"Billing period for the nodepool nodes. HOURLY bills per hour. MONTHLY bills a fixed monthly rate. Immutable after creation.","enum":["HOURLY","MONTHLY"]},"publicCloud.managedKubernetes.NodepoolCreation":{"type":"object","description":"Request body for creating a nodepool","properties":{"targetSpec":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodepoolTargetSpec"}],"description":"Desired nodepool specification"}},"required":["targetSpec"]},"publicCloud.managedKubernetes.NodepoolCurrentState":{"type":"object","description":"Observed state of the nodepool. May differ from targetSpec while reconciling, or when the nodepool is changed outside the API (resourceStatus becomes OUT_OF_SYNC).","properties":{"antiAffinity":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.AntiAffinity"}],"description":"Observed anti-affinity placement of the nodepool nodes","nullable":true,"readOnly":true},"autoscaler":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Autoscaler"}],"description":"Observed automatic node scaling configuration","nullable":true,"readOnly":true},"availabilityZone":{"type":"string","description":"Observed availability zone the nodepool nodes are placed in","nullable":true,"readOnly":true},"billingType":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodepoolBillingTypeEnum"}],"description":"Observed billing period applied to the nodepool nodes","nullable":true,"readOnly":true},"desiredNodes":{"type":"integer","description":"Observed desired number of nodes in the nodepool","nullable":true,"readOnly":true},"name":{"type":"string","description":"Observed nodepool name","nullable":true,"readOnly":true},"nodeConfig":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodeConfig"}],"description":"Observed hardware configuration of the nodepool nodes","nullable":true,"readOnly":true},"rollout":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodepoolRollout"}],"description":"Observed strategy used to apply node changes across the nodepool","nullable":true,"readOnly":true},"status":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodepoolStatus"}],"description":"Observed size and readiness of the nodepool nodes","nullable":true,"readOnly":true},"template":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodeTemplate"}],"description":"Observed Kubernetes metadata and scheduling settings applied to the nodepool nodes","nullable":true,"readOnly":true}}},"publicCloud.managedKubernetes.NodepoolRollout":{"type":"object","description":"Observed strategy used to apply node changes across the nodepool","properties":{"strategy":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodepoolRolloutStrategyEnum"}],"description":"Strategy used to apply node changes across the nodepool","nullable":true,"readOnly":true}}},"publicCloud.managedKubernetes.NodepoolRolloutStrategyEnum":{"type":"string","description":"How node changes roll out across the nodepool. ROLLING_UPDATE replaces nodes progressively. IN_PLACE updates existing nodes without replacing them.","enum":["IN_PLACE","ROLLING_UPDATE"]},"publicCloud.managedKubernetes.NodepoolStatus":{"type":"object","description":"Observed size and readiness of the nodepool nodes","properties":{"currentNodes":{"type":"integer","description":"Number of nodes currently provisioned in the nodepool","nullable":true,"readOnly":true},"readyNodes":{"type":"integer","description":"Number of nodes reporting a Ready condition","nullable":true,"readOnly":true},"upToDateNodes":{"type":"integer","description":"Number of nodes running the current nodepool specification","nullable":true,"readOnly":true}}},"publicCloud.managedKubernetes.NodepoolTargetSpec":{"type":"object","description":"Desired specification for a nodepool","properties":{"antiAffinity":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.AntiAffinity"}],"description":"Anti-affinity placement of the nodepool nodes. Immutable after creation.","nullable":true},"autoscaler":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Autoscaler"}],"description":"Automatic node scaling for the nodepool","nullable":true},"availabilityZone":{"type":"string","description":"Availability zone the nodepool nodes are placed in. Immutable after creation.","nullable":true},"billingType":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodepoolBillingTypeEnum"}],"description":"Billing period applied to the nodepool nodes. Immutable after creation.","nullable":true},"desiredNodes":{"type":"integer","description":"Desired number of nodes in the nodepool. When the autoscaler is enabled, must be at least autoscaler.minNodes.","nullable":true},"name":{"type":"string","description":"Nodepool name. Immutable after creation.","nullable":true},"nodeConfig":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodeConfig"}],"description":"Hardware configuration of the nodepool nodes. Immutable after creation."},"template":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodeTemplate"}],"description":"Kubernetes metadata and scheduling settings applied to every node of the nodepool","nullable":true}},"required":["nodeConfig"]},"publicCloud.managedKubernetes.NodepoolUpdate":{"type":"object","description":"Request body for updating a nodepool","properties":{"checksum":{"type":"string","description":"Optional concurrency-control checksum. When supplied, it must match the resource's current checksum or the request is rejected with a 409 checksum-mismatch conflict. When omitted or empty, the concurrency check is skipped and the write is forced (last-write-wins).","nullable":true},"targetSpec":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodepoolUpdateTargetSpec"}],"description":"Updated nodepool specification with mutable fields only"}},"required":["targetSpec"]},"publicCloud.managedKubernetes.NodepoolUpdateTargetSpec":{"type":"object","description":"Desired nodepool specification on update. Mutable fields only.","properties":{"autoscaler":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Autoscaler"}],"description":"Automatic node scaling for the nodepool","nullable":true},"desiredNodes":{"type":"integer","description":"Desired number of nodes in the nodepool. When the autoscaler is enabled, must be at least autoscaler.minNodes.","nullable":true},"template":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodeTemplate"}],"description":"Kubernetes metadata and scheduling settings applied to every node of the nodepool","nullable":true}}},"publicCloud.managedKubernetes.Taint":{"type":"object","description":"A Kubernetes taint applied to every node of the nodepool. Pods that do not tolerate the taint are kept off the nodes according to its effect.","properties":{"effect":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.TaintEffectEnum"}],"description":"Effect applied to pods that do not tolerate the taint"},"key":{"type":"string","description":"Taint key"},"value":{"type":"string","description":"Taint value matched by a pod toleration"}},"required":["effect","key","value"]},"publicCloud.managedKubernetes.TaintEffectEnum":{"type":"string","description":"Effect a taint has on pods that do not tolerate it. NoSchedule blocks scheduling new pods. PreferNoSchedule avoids scheduling when possible. NoExecute also evicts running pods that do not tolerate it. Refer to the Kubernetes documentation to get more information.","enum":["NoExecute","NoSchedule","PreferNoSchedule"]},"time":{"type":"string","description":"Time (e.g., 15:04:05)","format":"time","example":"15:04:05"}},"securitySchemes":{"oAuth2AuthCode":{"type":"oauth2","description":"Oauth2","x-client-id":"1bb9c7df371741c0","x-client-secret":"a5b4de870aca620d10fbf63cd18d205b","flows":{"authorizationCode":{"authorizationUrl":"https://auth.eu.ovhcloud.com/oauth2/authorize","tokenUrl":"https://auth.eu.ovhcloud.com/oauth2/token","scopes":{"account/all":"Manage your account","all":"Manage your whole account and all your services","services/all":"Manage your services lifecycle and billing"}}}}}},"paths":{"/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool":{"get":{"operationId":"getAllKubernetesNodepools","summary":"List nodepools of a managed Kubernetes cluster","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"header","name":"X-Pagination-Cursor","description":"Pagination cursor","schema":{"type":"string"}},{"in":"header","name":"X-Pagination-Size","description":"Pagination size","schema":{"type":"integer"}},{"in":"path","name":"managedKubernetesId","description":"Managed kubernetes ID","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"projectId","description":"Project ID","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Nodepool"}}}},"headers":{"X-Pagination-Elements":{"description":"Total number of elements available for pagination","schema":{"type":"long"}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Node Pools@@@10"]],"x-badges":[{"color":"blue","label":"Beta version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\nresult = client.get(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool\")\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n$result = $ovh->get(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/nodepool/get","required":true}],"x-response-identifier":"id","x-expanded-response":"PublicCloudManagedKubernetesNodepool"},"post":{"operationId":"createKubernetesNodepool","summary":"Create a nodepool in a managed Kubernetes cluster","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"managedKubernetesId","description":"Managed kubernetes ID","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"projectId","description":"Project ID","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodepoolCreation"},"examples":{"Create a dedicated nodepool with labels and taints":{"value":{"targetSpec":{"desiredNodes":2,"name":"my-gpu-nodepool","nodeConfig":{"flavor":"t2-45"},"template":{"metadata":{"labels":{"workload":"gpu"}},"spec":{"taints":[{"effect":"NoSchedule","key":"workload","value":"gpu"}]}}}},"summary":"Request body for a nodepool reserved to specific workloads: its nodes carry a label to select them and a taint that keeps away the pods not tolerating it."},"Create a fixed-size nodepool":{"value":{"targetSpec":{"desiredNodes":3,"name":"my-nodepool","nodeConfig":{"flavor":"b3-8"}}},"summary":"Request body for a nodepool with a fixed number of nodes. Only the node count and the flavor are required."},"Create a monthly-billed nodepool with anti-affinity":{"value":{"targetSpec":{"antiAffinity":{"enabled":true,"policy":"HARD"},"billingType":"MONTHLY","desiredNodes":3,"name":"my-monthly-nodepool","nodeConfig":{"flavor":"b2-7"}}},"summary":"Request body for a nodepool billed monthly, with its nodes spread across distinct hypervisors. Both settings are immutable after creation, and anti-affinity caps the nodepool size."},"Create a nodepool in an availability zone":{"value":{"targetSpec":{"availabilityZone":"eu-west-par-a","desiredNodes":3,"name":"my-nodepool-zone-a","nodeConfig":{"flavor":"b3-8"}}},"summary":"Request body for a nodepool placed in one availability zone of a 3-AZ region. Create one nodepool per zone to spread the nodes across the region."},"Create an autoscaled nodepool":{"value":{"targetSpec":{"autoscaler":{"enabled":true,"maxNodes":10,"minNodes":2},"desiredNodes":2,"name":"my-autoscaled-nodepool","nodeConfig":{"flavor":"b3-8"}}},"summary":"Request body for a nodepool whose node count varies between minNodes and maxNodes with the cluster load. desiredNodes must be at least minNodes."}}}}},"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Nodepool"}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Node Pools@@@30"]],"x-badges":[{"color":"blue","label":"Beta version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\n# Request body type: publicCloud.managedKubernetes.NodepoolCreation\nresult = client.post(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool\",\n\ttargetSpec = None, # Desired nodepool specification (type: publicCloud.managedKubernetes.NodepoolTargetSpec)\n)\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n// Request body type: publicCloud.managedKubernetes.NodepoolCreation\n$result = $ovh->post(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool\", array(\n\ttargetSpec => null, // Desired nodepool specification (type: publicCloud.managedKubernetes.NodepoolTargetSpec)\n));\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/nodepool/create","required":true}]}},"/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}":{"delete":{"operationId":"deleteKubernetesNodepool","summary":"Delete a nodepool of a managed Kubernetes cluster","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"managedKubernetesId","description":"Managed kubernetes ID","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"nodePoolId","description":"Node pool ID","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"projectId","description":"Project ID","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Nodepool"}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Node Pools@@@40"]],"x-badges":[{"color":"blue","label":"Beta version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\nresult = client.delete(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}\")\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n$result = $ovh->delete(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/nodepool/delete","required":true}]},"get":{"operationId":"getKubernetesNodepool","summary":"Get a nodepool of a managed Kubernetes cluster","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"managedKubernetesId","description":"Managed kubernetes ID","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"nodePoolId","description":"Node pool ID","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"projectId","description":"Project ID","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Nodepool"}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Node Pools@@@20"]],"x-badges":[{"color":"blue","label":"Beta version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\nresult = client.get(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}\")\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n$result = $ovh->get(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/nodepool/get","required":true}],"x-response-identifier":"id"},"put":{"operationId":"editKubernetesNodepool","summary":"Update a nodepool of a managed Kubernetes cluster","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"managedKubernetesId","description":"Managed kubernetes ID","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"nodePoolId","description":"Node pool ID","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"projectId","description":"Project ID","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodepoolUpdate"}}}},"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Nodepool"}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Node Pools@@@50"]],"x-badges":[{"color":"blue","label":"Beta version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\n# Request body type: publicCloud.managedKubernetes.NodepoolUpdate\nresult = client.put(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}\",\n\tchecksum = None, # Optional concurrency-control checksum. When supplied, it must match the resource's current checksum or the request is rejected with a 409 checksum-mismatch conflict. When omitted or empty, the concurrency check is skipped and the write is forced (last-write-wins). (type: string, nullable)\n\ttargetSpec = None, # Updated nodepool specification with mutable fields only (type: publicCloud.managedKubernetes.NodepoolUpdateTargetSpec)\n)\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n// Request body type: publicCloud.managedKubernetes.NodepoolUpdate\n$result = $ovh->put(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}\", array(\n\tchecksum => null, // Optional concurrency-control checksum. When supplied, it must match the resource's current checksum or the request is rejected with a 409 checksum-mismatch conflict. When omitted or empty, the concurrency check is skipped and the write is forced (last-write-wins). (type: string, nullable)\n\ttargetSpec => null, // Updated nodepool specification with mutable fields only (type: publicCloud.managedKubernetes.NodepoolUpdateTargetSpec)\n));\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/nodepool/edit","required":true}]}},"/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}/event":{"get":{"operationId":"getKubernetesNodepoolEvents","summary":"List all events related to a managed Kubernetes cluster nodepool","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"header","name":"X-Pagination-Cursor","description":"Pagination cursor","schema":{"type":"string"}},{"in":"header","name":"X-Pagination-Size","description":"Pagination size","schema":{"type":"integer"}},{"in":"path","name":"managedKubernetesId","description":"Managed kubernetes ID","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"nodePoolId","description":"Node pool ID","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"projectId","description":"Project ID","required":true,"schema":{"type":"string"}},{"in":"query","name":"taskId","description":"Return only the events belonging to this task","schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/common.Event"}},"examples":{"Example":{"value":[{"createdAt":"2026-04-08T12:00:01Z","kind":"NODEPOOL_UPDATE","link":"/v2/publicCloud/project/a755273a123456788da6d6fcc71a95f3/managedKubernetes/b1c2d3e4-f5a6-7890-abcd-ef1234567890/nodepool/a1b2c3d4-e5f6-47a8-9b0c-d1e2f3a4b5c6/task/d4e5f6a7-b8c9-0123-defa-345678901234","message":"Task started to update the nodepool","type":"TASK_START"},{"createdAt":"2026-04-08T12:00:00Z","kind":"NODEPOOL_UPDATE","message":"Nodepool target spec updated","type":"TARGET_SPEC_UPDATE"}],"summary":"Example"}}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Node Pools@@@80"]],"x-badges":[{"color":"blue","label":"Beta version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\nresult = client.get(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}/event\")\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n$result = $ovh->get(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}/event\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/nodepool/event/get","required":true}]}},"/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}/node":{"get":{"operationId":"getAllKubernetesNodepoolNodes","summary":"List nodes of a managed Kubernetes cluster nodepool","description":"Deleted nodes kept in retention are excluded unless includeDeleted is true.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"header","name":"X-Pagination-Cursor","description":"Pagination cursor","schema":{"type":"string"}},{"in":"header","name":"X-Pagination-Size","description":"Pagination size","schema":{"type":"integer"}},{"in":"query","name":"includeDeleted","description":"Include deleted nodes still kept in retention","schema":{"type":"boolean"}},{"in":"path","name":"managedKubernetesId","description":"Managed kubernetes ID","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"nodePoolId","description":"Node pool ID","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"projectId","description":"Project ID","required":true,"schema":{"type":"string"}},{"in":"query","name":"resourceStatus","description":"Return only the nodes in this lifecycle status. Filtering on DELETED requires includeDeleted set to true, otherwise the request returns 400.","schema":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NodeResourceStatusEnum"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Node"}}}},"headers":{"X-Pagination-Elements":{"description":"Total number of elements available for pagination","schema":{"type":"long"}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Node Pools@@@60"]],"x-badges":[{"color":"blue","label":"Beta version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\nresult = client.get(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}/node\")\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n$result = $ovh->get(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}/node\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/nodepool/node/get","required":true}],"x-response-identifier":"id","x-expanded-response":"PublicCloudManagedKubernetesNode"}},"/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}/node/{nodeId}":{"get":{"operationId":"getKubernetesNodepoolNode","summary":"Get a node of a managed Kubernetes cluster nodepool","description":"A deleted node kept in retention is returned with resourceStatus DELETED until it expires, after which the call returns 404.","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"managedKubernetesId","description":"Managed kubernetes ID","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"nodeId","description":"Node ID","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"nodePoolId","description":"Node pool ID","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"projectId","description":"Project ID","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Node"},"examples":{"Deleted node in retention":{"value":{"createdAt":"2026-08-02T10:11:00Z","currentState":{"deletedAt":"2026-09-05T08:22:45Z","deployedAt":"2026-08-02T10:16:01Z","flavor":"b3-8","instanceId":"9e8d7c6b-2222-4ccc-dddd-000000000191","name":"app-pool-node-f0a3d2","nodePoolId":"f1c2aaaa-bbbb-cccc-dddd-eeeeeeeeeeee","upToDate":false,"version":"1.36.3-2"},"id":"0a1b2c3d-1111-4aaa-bbbb-000000000091","resourceStatus":"DELETED","updatedAt":"2026-09-05T08:22:45Z"},"summary":"A deleted node still returned during its retention period"},"Ready node":{"value":{"createdAt":"2026-09-10T09:00:12Z","currentState":{"deployedAt":"2026-09-10T09:04:41Z","flavor":"b3-8","instanceId":"9e8d7c6b-2222-4ccc-dddd-000000000101","name":"app-pool-node-7f3a2b","nodePoolId":"f1c2aaaa-bbbb-cccc-dddd-eeeeeeeeeeee","upToDate":true,"version":"1.36.3-2"},"id":"0a1b2c3d-1111-4aaa-bbbb-000000000001","resourceStatus":"READY","updatedAt":"2026-09-10T09:04:41Z"},"summary":"A healthy node, up to date and joined to the cluster"}}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Node Pools@@@70"]],"x-badges":[{"color":"blue","label":"Beta version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\nresult = client.get(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}/node/{nodeId}\")\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n$result = $ovh->get(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}/node/{nodeId}\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/nodepool/node/get","required":true}],"x-response-identifier":"id"}},"/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}/task":{"get":{"operationId":"getAllKubernetesNodepoolTasks","summary":"List all tasks related to a managed Kubernetes cluster nodepool","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"header","name":"X-Pagination-Cursor","description":"Pagination cursor","schema":{"type":"string"}},{"in":"header","name":"X-Pagination-Size","description":"Pagination size","schema":{"type":"integer"}},{"in":"path","name":"managedKubernetesId","description":"Managed kubernetes ID","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"nodePoolId","description":"Node pool ID","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"projectId","description":"Project ID","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/common.Task"}}}},"headers":{"X-Pagination-Elements":{"description":"Total number of elements available for pagination","schema":{"type":"long"}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Node Pools@@@90"]],"x-badges":[{"color":"blue","label":"Beta version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\nresult = client.get(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}/task\")\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n$result = $ovh->get(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}/task\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/nodepool/task/get","required":true}],"x-response-identifier":"id","x-expanded-response":"CommonTask"}},"/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}/task/{taskId}":{"get":{"operationId":"getKubernetesNodepoolTask","summary":"Get a specific task related to a managed Kubernetes cluster nodepool","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"managedKubernetesId","description":"Managed kubernetes ID","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"nodePoolId","description":"Node pool ID","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"projectId","description":"Project ID","required":true,"schema":{"type":"string"}},{"in":"path","name":"taskId","description":"Task ID","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/common.Task"}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Node Pools@@@100"]],"x-badges":[{"color":"blue","label":"Beta version"}],"x-code-samples":[{"lang":"python","label":"Python","source":"'''\nFirst, install the latest release of Python wrapper: $ pip install ovh\n'''\nimport json\nimport ovh\n\n# Instantiate an OVH Client.\n# You can generate new credentials with full access to your account on\n# the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\nclient = ovh.Client(\n\tendpoint='ovh-eu',               # Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n\tapplication_key='xxxxxxxxxx',    # Application Key\n\tapplication_secret='xxxxxxxxxx', # Application Secret\n\tconsumer_key='xxxxxxxxxx',       # Consumer Key\n)\n\nresult = client.get(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}/task/{taskId}\")\n\n# Pretty print\nprint(json.dumps(result, indent=4))"},{"lang":"php","label":"PHP","source":"<?php\n/**\n * First, download the latest release of PHP wrapper on github\n * And include this script into the folder with extracted files\n */\nrequire __DIR__ . '/vendor/autoload.php';\nuse \\Ovh\\Api;\n\n/**\n * Instantiate an OVH Client.\n * You can generate new credentials with full access to your account on\n * the token creation page (https://api.ovh.com/createToken/index.cgi?GET=/*&PUT=/*&POST=/*&DELETE=/*)\n */\n$ovh = new Api('xxxxxxxxxx',  // Application Key\n               'xxxxxxxxxx',  // Application Secret\n               'ovh-eu',      // Endpoint of API OVH (List of available endpoints: https://github.com/ovh/python-ovh#2-configure-your-application)\n               'xxxxxxxxxx'); // Consumer Key\n\n$result = $ovh->get(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/nodepool/{nodePoolId}/task/{taskId}\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/nodepool/task/get","required":true}],"x-response-identifier":"id"}}},"tags":[{"name":"Managed Kubernetes Service","x-tag-expanded":false,"description":"Missing description"}]}
