{"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.AdmissionPlugin":{"type":"object","description":"A Kubernetes admission plugin configuration","properties":{"enabled":{"type":"boolean","description":"Whether the admission plugin is enabled"}},"required":["enabled"]},"publicCloud.managedKubernetes.ApiServer":{"type":"object","description":"Cluster control-plane configuration: exposure and IP filtering (access) and admission plugins","properties":{"access":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.ApiServerAccess"}],"description":"Exposure and IP filtering of the API server","nullable":true},"admissionPlugins":{"type":"object","description":"Admission plugin configurations. Plugin names are validated against a platform allowlist. An unknown name is rejected with 400.","nullable":true,"additionalProperties":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.AdmissionPlugin"}}}},"publicCloud.managedKubernetes.ApiServerAccess":{"type":"object","description":"IP filtering for the cluster API server","properties":{"authorizedIps":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.AuthorizedIps"}],"description":"IP allowlist for the API server","nullable":true}}},"publicCloud.managedKubernetes.ApiServerPublicEndpoint":{"type":"object","description":"Public endpoint exposing the cluster API server","properties":{"url":{"type":"string","description":"URL of the control plane, available once the cluster is ready","nullable":true,"readOnly":true}}},"publicCloud.managedKubernetes.Authentication":{"type":"object","description":"Control-plane authentication. The type field selects the variant.","properties":{"oidc":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Oidc"}],"description":"Single-provider OpenID Connect payload. Present when type is OIDC, absent otherwise.","nullable":true},"type":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.AuthenticationTypeEnum"}],"description":"Selected authentication variant"}},"required":["type"]},"publicCloud.managedKubernetes.AuthenticationTypeEnum":{"type":"string","description":"Control-plane authentication variant. OIDC uses single-provider OpenID Connect.","enum":["OIDC"]},"publicCloud.managedKubernetes.AuthorizedIpRule":{"type":"object","description":"A single allow rule in the API server IP allowlist","properties":{"cidr":{"allOf":[{"$ref":"#/components/schemas/ipBlock"}],"description":"Authorized CIDR block, for example 203.0.113.0/24. Allow-all is expressed as 0.0.0.0/0."}},"required":["cidr"]},"publicCloud.managedKubernetes.AuthorizedIps":{"type":"object","description":"IP allowlist for the API server. Allow all sources with a single 0.0.0.0/0 rule.","properties":{"rules":{"type":"array","description":"Authorization rules for the API server","nullable":true,"items":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.AuthorizedIpRule"}}}},"publicCloud.managedKubernetes.AutoUpgrade":{"type":"object","description":"Automatic Kubernetes version upgrade policy for the patch track","properties":{"patch":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.AutoUpgradeTrack"}],"description":"Automatic upgrade track for patch versions, for example 1.34.1-1 to 1.34.2-1. Enabled by default.","nullable":true}}},"publicCloud.managedKubernetes.AutoUpgradeTrack":{"type":"object","description":"Configuration of a single automatic upgrade track","properties":{"enabled":{"type":"boolean","description":"Whether automatic upgrade is enabled for this track","nullable":true}}},"publicCloud.managedKubernetes.CiliumClusterMesh":{"type":"object","description":"ClusterMesh multi-cluster connectivity configuration for the Cilium CNI","properties":{"apiServer":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CiliumClusterMeshApiServer"}],"description":"ClusterMesh API server exposure settings","nullable":true},"enabled":{"type":"boolean","description":"Whether ClusterMesh is enabled","nullable":true}}},"publicCloud.managedKubernetes.CiliumClusterMeshApiServer":{"type":"object","description":"ClusterMesh API server exposure settings for the Cilium CNI","properties":{"nodePort":{"type":"integer","description":"Node port exposing the ClusterMesh API server","nullable":true},"serviceType":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CiliumClusterMeshServiceTypeEnum"}],"description":"Kubernetes service type exposing the ClusterMesh API server","nullable":true}}},"publicCloud.managedKubernetes.CiliumClusterMeshServiceTypeEnum":{"type":"string","description":"Kubernetes service type exposing the ClusterMesh API server","enum":["LoadBalancer","NodePort"]},"publicCloud.managedKubernetes.CiliumHubble":{"type":"object","description":"Hubble observability configuration for the Cilium CNI","properties":{"enabled":{"type":"boolean","description":"Whether Hubble observability is enabled","nullable":true},"relay":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CiliumHubbleRelay"}],"description":"Hubble relay configuration","nullable":true},"ui":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CiliumHubbleUi"}],"description":"Hubble UI configuration","nullable":true}}},"publicCloud.managedKubernetes.CiliumHubbleRelay":{"type":"object","description":"Hubble relay configuration for the Cilium CNI","properties":{"enabled":{"type":"boolean","description":"Whether the Hubble relay is enabled","nullable":true}}},"publicCloud.managedKubernetes.CiliumHubbleUi":{"type":"object","description":"Hubble UI configuration for the Cilium CNI","properties":{"backendResources":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CiliumResourceRequirements"}],"description":"Compute resource requirements of the Hubble UI backend","nullable":true},"enabled":{"type":"boolean","description":"Whether the Hubble UI is enabled","nullable":true},"frontendResources":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CiliumResourceRequirements"}],"description":"Compute resource requirements of the Hubble UI frontend","nullable":true}}},"publicCloud.managedKubernetes.CiliumResourceList":{"type":"object","description":"Kubernetes compute resource quantities for a Cilium component","properties":{"cpu":{"type":"string","description":"CPU resource quantity, for example 250m or 1","nullable":true},"memory":{"type":"string","description":"Memory resource quantity, for example 128Mi or 1Gi","nullable":true}}},"publicCloud.managedKubernetes.CiliumResourceRequirements":{"type":"object","description":"Kubernetes compute resource requirements for a Cilium component","properties":{"limits":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CiliumResourceList"}],"description":"Maximum compute resources allowed","nullable":true},"requests":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CiliumResourceList"}],"description":"Minimum compute resources guaranteed","nullable":true}}},"publicCloud.managedKubernetes.Cluster":{"type":"object","description":"A managed Kubernetes cluster","properties":{"checksum":{"type":"string","description":"Concurrency control hash of the target specification","readOnly":true},"createdAt":{"type":"string","description":"Cluster creation timestamp","format":"date-time","readOnly":true},"currentState":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.ClusterCurrentState"}],"description":"Actual cluster state","readOnly":true},"currentTasks":{"type":"array","description":"In-progress asynchronous operations on the cluster","nullable":true,"items":{"$ref":"#/components/schemas/common.CurrentTask"},"readOnly":true},"id":{"type":"string","description":"Unique identifier of the cluster","format":"uuid","readOnly":true},"resourceStatus":{"allOf":[{"$ref":"#/components/schemas/common.ResourceStatusEnum"}],"description":"Current lifecycle status of the cluster","readOnly":true},"targetSpec":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.ClusterTargetSpec"}],"description":"Desired cluster specification","readOnly":true},"updatedAt":{"type":"string","description":"Last cluster modification timestamp","format":"date-time","readOnly":true}}},"publicCloud.managedKubernetes.ClusterCreation":{"type":"object","description":"Request body for creating a managed Kubernetes cluster","properties":{"targetSpec":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.ClusterTargetSpec"}],"description":"Desired cluster specification"}},"required":["targetSpec"]},"publicCloud.managedKubernetes.ClusterCurrentState":{"type":"object","description":"Observed state of the cluster as reported by the backend. May differ from targetSpec while the cluster reconciles, or when the cluster is changed outside the API (resourceStatus becomes OUT_OF_SYNC).","properties":{"apiServer":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CurrentStateApiServer"}],"description":"Observed API server state: configuration and resolved control-plane URL","nullable":true,"readOnly":true},"authentication":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CurrentStateAuthentication"}],"description":"Observed control-plane authentication state","nullable":true,"readOnly":true},"autoUpgrade":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.AutoUpgrade"}],"description":"Observed automatic Kubernetes version upgrade policy","nullable":true,"readOnly":true},"cni":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Cni"}],"description":"Observed Container Network Interface plugin and its settings","nullable":true,"readOnly":true},"deployedVersion":{"type":"string","description":"Full Kubernetes version currently deployed on the cluster, for example 1.34.1-2","nullable":true,"readOnly":true},"ipAllocationPolicy":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.IpAllocationPolicy"}],"description":"Observed internal pod and service CIDRs allocated by the backend, including any applied platform defaults","nullable":true,"readOnly":true},"name":{"type":"string","description":"Observed cluster name","nullable":true,"readOnly":true},"network":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Network"}],"description":"Observed network topology and resolved network identifiers","nullable":true,"readOnly":true},"plan":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.PlanNameEnum"}],"description":"Observed platform tier (FREE or STANDARD)","nullable":true,"readOnly":true},"region":{"type":"string","description":"Observed deployment region identifier","nullable":true,"readOnly":true},"version":{"type":"string","description":"Minor Kubernetes version currently running on the cluster, for example 1.34. See deployedVersion for the full version.","nullable":true,"readOnly":true}}},"publicCloud.managedKubernetes.ClusterRestart":{"type":"object","description":"Request body for restarting the control plane of a managed Kubernetes cluster. No data is touched and the target specification is unchanged.","properties":{"force":{"type":"boolean","description":"Force the restart. When true the API server may be briefly unavailable. Defaults to false.","nullable":true}}},"publicCloud.managedKubernetes.ClusterTargetSpec":{"type":"object","description":"Desired specification of the cluster","properties":{"apiServer":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.ApiServer"}],"description":"Control-plane exposure, IP filtering, and admission plugins","nullable":true},"authentication":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Authentication"}],"description":"Control-plane authentication variant","nullable":true},"autoUpgrade":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.AutoUpgrade"}],"description":"Automatic Kubernetes version upgrade policy, by track","nullable":true},"cni":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Cni"}],"description":"Container Network Interface plugin"},"ipAllocationPolicy":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.IpAllocationPolicy"}],"description":"Internal pod and service addressing. Immutable after creation.","nullable":true},"name":{"type":"string","description":"Cluster name. Not an identifier. Can be changed after creation by PUT. Automatically generated when omitted at creation.","nullable":true},"network":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Network"}],"description":"Network topology of the cluster nodes. The variant and its identifiers are immutable after creation. defaultEgress remains mutable."},"plan":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.PlanNameEnum"}],"description":"Platform tier (FREE or STANDARD)"},"region":{"type":"string","description":"Deployment region name"},"version":{"type":"string","description":"Desired Kubernetes version. On creation, minor, for example 1.34 or full, for example 1.34.1-2. A minor resolves to its latest patch. On update, minor or full.","nullable":true}},"required":["cni","network","plan","region"]},"publicCloud.managedKubernetes.ClusterUpdate":{"type":"object","description":"Request body for updating a managed Kubernetes cluster","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.ClusterUpdateTargetSpec"}],"description":"Updated cluster specification with mutable fields only"}},"required":["targetSpec"]},"publicCloud.managedKubernetes.ClusterUpdateTargetSpec":{"type":"object","description":"Desired specification of the cluster on update, restricted to the mutable surface. Immutable fields (region, plan, network variant and identifiers, cni variant, ipAllocationPolicy) are excluded from the body. Sending any is rejected with 400. Every configured mutable field must be present. A missing configured field is rejected with 400.","properties":{"apiServer":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.ApiServer"}],"description":"Control-plane exposure, IP filtering, and admission plugins","nullable":true},"authentication":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Authentication"}],"description":"Control-plane authentication variant","nullable":true},"autoUpgrade":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.AutoUpgrade"}],"description":"Automatic Kubernetes version upgrade policy, by track","nullable":true},"cni":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CniUpdate"}],"description":"Mutable CNI settings only. The CNI variant is immutable. Its discriminant must not be sent.","nullable":true},"name":{"type":"string","description":"Cluster name. Not an identifier. Can be changed after creation."},"network":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NetworkUpdate"}],"description":"Mutable network settings only. The network variant and its identifiers are immutable and must not be sent.","nullable":true},"version":{"type":"string","description":"Desired Kubernetes version, full, for example 1.34.1-2 or minor, for example 1.34. The current minor changes nothing. The next minor upgrades to its latest patch. Changing this drives a version upgrade reconciliation."}},"required":["name","version"]},"publicCloud.managedKubernetes.ClusterVersions":{"type":"object","description":"Version currently deployed on the cluster, and the versions it can move to","properties":{"availableUpdates":{"type":"array","description":"Patch versions of the current minor the cluster can update to, for example 1.32.8-1 to 1.32.8-2","items":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.VersionReference"},"readOnly":true},"availableUpgrades":{"type":"array","description":"Versions of the next minor the cluster can upgrade to, for example 1.32.8-1 to 1.33.1-2. Multi-minor jumps are never listed.","items":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.VersionReference"},"readOnly":true},"currentVersion":{"type":"string","description":"Full Kubernetes version currently deployed on the cluster, for example 1.32.8-1","readOnly":true}}},"publicCloud.managedKubernetes.Cni":{"type":"object","description":"Container Network Interface plugin. FREE requires CANAL, STANDARD requires CILIUM. A mismatch is rejected with 400. The variant and the Canal kube-proxy mode are immutable after creation. Other internal settings stay mutable.","properties":{"canal":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CniCanal"}],"description":"Canal payload, valid only on the FREE plan. Present when type is CANAL, absent otherwise.","nullable":true},"cilium":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CniCilium"}],"description":"Cilium payload, valid only on the STANDARD plan. Present when type is CILIUM, absent otherwise.","nullable":true},"type":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CniTypeEnum"}],"description":"Selected CNI variant"}},"required":["type"]},"publicCloud.managedKubernetes.CniCanal":{"type":"object","description":"Canal CNI configuration, valid only on the FREE plan. The kube-proxy mode is immutable after creation. Its other settings stay mutable.","properties":{"kubeProxy":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.KubeProxy"}],"description":"kube-proxy configuration","nullable":true}}},"publicCloud.managedKubernetes.CniCanalUpdate":{"type":"object","description":"Mutable Canal CNI settings, valid only on the FREE plan. The kube-proxy mode is immutable.","properties":{"kubeProxy":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.KubeProxyUpdate"}],"description":"Mutable kube-proxy settings","nullable":true}}},"publicCloud.managedKubernetes.CniCilium":{"type":"object","description":"Cilium CNI configuration, valid only on the STANDARD plan","properties":{"clusterId":{"type":"integer","description":"ClusterMesh cluster identifier, between 1 and 255","nullable":true},"clusterMesh":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CiliumClusterMesh"}],"description":"ClusterMesh multi-cluster connectivity configuration","nullable":true},"hubble":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CiliumHubble"}],"description":"Hubble observability configuration","nullable":true}}},"publicCloud.managedKubernetes.CniTypeEnum":{"type":"string","description":"Container Network Interface. CANAL requires the FREE plan. CILIUM requires the STANDARD plan. A mismatch is rejected. Immutable after creation.","enum":["CANAL","CILIUM"]},"publicCloud.managedKubernetes.CniUpdate":{"type":"object","description":"Mutable CNI settings. The variant is immutable and its discriminant must not be sent, else 400.","properties":{"canal":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CniCanalUpdate"}],"description":"Mutable Canal settings. Present on the FREE plan. The kube-proxy mode is immutable.","nullable":true},"cilium":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CniCilium"}],"description":"Mutable Cilium settings. Present on the STANDARD plan.","nullable":true}}},"publicCloud.managedKubernetes.CurrentStateApiServer":{"type":"object","description":"Observed API server state","properties":{"access":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CurrentStateApiServerAccess"}],"description":"Observed exposure and IP filtering of the API server","nullable":true,"readOnly":true},"admissionPlugins":{"type":"object","description":"Observed admission plugin configurations","nullable":true,"additionalProperties":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.AdmissionPlugin"},"readOnly":true}}},"publicCloud.managedKubernetes.CurrentStateApiServerAccess":{"type":"object","description":"Observed exposure of the cluster API server: public endpoint and IP filtering","properties":{"authorizedIps":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.AuthorizedIps"}],"description":"Observed IP allowlist for the API server","nullable":true,"readOnly":true},"publicEndpoint":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.ApiServerPublicEndpoint"}],"description":"Observed public endpoint of the API server","nullable":true,"readOnly":true}}},"publicCloud.managedKubernetes.CurrentStateAuthentication":{"type":"object","description":"Observed control-plane authentication state","properties":{"oidc":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.CurrentStateOidc"}],"description":"Observed OpenID Connect configuration, present when type is OIDC","nullable":true,"readOnly":true},"type":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.AuthenticationTypeEnum"}],"description":"Observed active authentication variant","nullable":true,"readOnly":true}}},"publicCloud.managedKubernetes.CurrentStateOidc":{"type":"object","description":"Observed single-provider OpenID Connect configuration","properties":{"caContent":{"type":"string","description":"CA certificate of the OIDC provider, PEM-encoded","nullable":true,"readOnly":true},"clientId":{"type":"string","description":"Identifier of the OIDC client","nullable":true,"readOnly":true},"groupsClaim":{"type":"array","description":"JWT claims used as Kubernetes groups","nullable":true,"items":{"type":"string"},"readOnly":true},"groupsPrefix":{"type":"string","description":"Prefix prepended to group claims","nullable":true,"readOnly":true},"issuerUrl":{"type":"string","description":"OIDC issuer URL","nullable":true,"readOnly":true},"requiredClaim":{"type":"array","description":"Claims that must be present in the JWT token","nullable":true,"items":{"type":"string"},"readOnly":true},"signingAlgs":{"type":"array","description":"Accepted signing algorithms for OIDC tokens","nullable":true,"items":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.OidcSigningAlgEnum"},"readOnly":true},"usernameClaim":{"type":"string","description":"JWT claim used as the Kubernetes username","nullable":true,"readOnly":true},"usernamePrefix":{"type":"string","description":"Prefix prepended to username claims","nullable":true,"readOnly":true}}},"publicCloud.managedKubernetes.DefaultEgress":{"type":"object","description":"Default egress route for nodes on a private network cluster. userGateway is required if and only if type is USER_GATEWAY, else the request is rejected.","properties":{"type":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.DefaultEgressTypeEnum"}],"description":"Default egress route type for the cluster nodes"},"userGateway":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.UserGateway"}],"description":"User-provided egress gateway. Required if and only if type is USER_GATEWAY.","nullable":true}},"required":["type"]},"publicCloud.managedKubernetes.DefaultEgressTypeEnum":{"type":"string","description":"Default egress route for nodes on a private network cluster. NODE_PUBLIC_INTERFACE uses the public interface. MANAGED_GATEWAY uses the subnet gateway. USER_GATEWAY uses a caller-provided gateway (requires userGateway).","enum":["MANAGED_GATEWAY","NODE_PUBLIC_INTERFACE","USER_GATEWAY"]},"publicCloud.managedKubernetes.EtcdUsage":{"type":"object","description":"Etcd database usage metrics for a managed Kubernetes cluster","properties":{"limit":{"type":"integer","description":"Etcd storage quota in bytes","readOnly":true},"used":{"type":"integer","description":"Current etcd storage usage in bytes","nullable":true,"readOnly":true}}},"publicCloud.managedKubernetes.IpAllocationPolicy":{"type":"object","description":"Internal pod and service addressing. Both CIDRs are immutable after creation. When omitted, platform defaults apply.","properties":{"pods":{"allOf":[{"$ref":"#/components/schemas/ipv4Block"}],"description":"IPv4 CIDR block allocated for pod networking, for example 10.0.0.0/16. Immutable after creation. A non-IPv4, invalid or overlapping CIDR is rejected with 400.","nullable":true},"services":{"allOf":[{"$ref":"#/components/schemas/ipv4Block"}],"description":"IPv4 CIDR block allocated for service networking, for example 10.96.0.0/12. Immutable after creation. A non-IPv4, invalid or overlapping CIDR is rejected with 400.","nullable":true}}},"publicCloud.managedKubernetes.KubeProxy":{"type":"object","description":"kube-proxy configuration for the Canal CNI","properties":{"iptables":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.KubeProxyIptables"}],"description":"iptables mode payload. Provided when mode is IPTABLES. Must be absent otherwise.","nullable":true},"ipvs":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.KubeProxyIpvs"}],"description":"IPVS mode payload. Provided when mode is IPVS. Must be absent otherwise.","nullable":true},"mode":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.KubeProxyModeEnum"}],"description":"Selected kube-proxy mode. Immutable after creation."}},"required":["mode"]},"publicCloud.managedKubernetes.KubeProxyIptables":{"type":"object","description":"Kube-proxy iptables mode settings","properties":{"minSyncPeriod":{"type":"string","description":"The minimum period that iptables rules are refreshed, in RFC3339 duration format, for example `PT60S`","nullable":true,"format":"duration"},"syncPeriod":{"type":"string","description":"The period that iptables rules are refreshed, in RFC3339 duration format, for example `PT60S`. Must be greater than 0.","nullable":true,"format":"duration"}}},"publicCloud.managedKubernetes.KubeProxyIpvs":{"type":"object","description":"Kube-proxy IPVS mode settings","properties":{"minSyncPeriod":{"type":"string","description":"The minimum period that ipvs rules are refreshed in RFC3339 duration format, for example `PT60S`","nullable":true,"format":"duration"},"scheduler":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.KubeProxyIpvsSchedulerEnum"}],"description":"IPVS scheduling algorithm","nullable":true},"syncPeriod":{"type":"string","description":"The period that ipvs rules are refreshed in RFC3339 duration format, for example `PT60S`. Must be greater than 0.","nullable":true,"format":"duration"},"tcpFinTimeout":{"type":"string","description":"The timeout value used for IPVS TCP sessions after receiving a FIN in RFC3339 duration format, for example `PT60S`. Defaults to `PT0S`, which preserves the current timeout value on the system.","nullable":true,"format":"duration"},"tcpTimeout":{"type":"string","description":"The timeout value used for idle IPVS TCP sessions in RFC3339 duration format, for example `PT60S`. Defaults to `PT0S`, which preserves the current timeout value on the system. Cannot be set between `PT0S` and `PT5S`, in order to prevent in-cluster networking issues.","nullable":true,"format":"duration"},"udpTimeout":{"type":"string","description":"The timeout value used for IPVS UDP packets in RFC3339 duration format, for example `PT60S`. Defaults to `PT0S`, which preserves the current timeout value on the system.","nullable":true,"format":"duration"}}},"publicCloud.managedKubernetes.KubeProxyIpvsSchedulerEnum":{"type":"string","description":"Algorithm IPVS uses to pick the backend pod for a new connection. ROUND_ROBIN cycles through backends. LEAST_CONNECTION picks the backend with the fewest active connections. SHORTEST_EXPECTED_DELAY and NEVER_QUEUE weight the choice on expected latency. DESTINATION_HASHING and SOURCE_HASHING pin a connection to a backend based on the destination or source address.","enum":["DESTINATION_HASHING","LEAST_CONNECTION","NEVER_QUEUE","ROUND_ROBIN","SHORTEST_EXPECTED_DELAY","SOURCE_HASHING"]},"publicCloud.managedKubernetes.KubeProxyModeEnum":{"type":"string","description":"kube-proxy mode for the Canal CNI","enum":["IPTABLES","IPVS"]},"publicCloud.managedKubernetes.KubeProxyUpdate":{"type":"object","description":"Mutable kube-proxy settings for the Canal CNI. The mode is immutable after creation.","properties":{"iptables":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.KubeProxyIptables"}],"description":"iptables mode payload. Provided when the cluster runs in IPTABLES mode. Must be absent otherwise.","nullable":true},"ipvs":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.KubeProxyIpvs"}],"description":"IPVS mode payload. Provided when the cluster runs in IPVS mode. Must be absent otherwise.","nullable":true}}},"publicCloud.managedKubernetes.Kubeconfig":{"type":"object","description":"Kubeconfig file content for a managed Kubernetes cluster","properties":{"content":{"type":"string","description":"Kubeconfig file content in YAML format","readOnly":true}}},"publicCloud.managedKubernetes.Network":{"type":"object","description":"Network topology of the cluster nodes. Immutable after creation. For VRACK, the vrack identifiers are immutable while defaultEgress stays mutable.","properties":{"type":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NetworkTypeEnum"}],"description":"Selected network topology variant"},"vrack":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NetworkVrack"}],"description":"Private network (vRack) payload. Required when type is VRACK. Must be absent otherwise.","nullable":true}},"required":["type"]},"publicCloud.managedKubernetes.NetworkTypeEnum":{"type":"string","description":"Network topology of the cluster nodes. PUBLIC for a public cluster. VRACK for a vRack private network cluster. Immutable after creation.","enum":["PUBLIC","VRACK"]},"publicCloud.managedKubernetes.NetworkUpdate":{"type":"object","description":"Mutable network settings. The variant and its identifiers are immutable and must not be sent, else 400.","properties":{"vrack":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.NetworkVrackUpdate"}],"description":"Mutable private network (vRack) settings. Present for a vRack cluster.","nullable":true}}},"publicCloud.managedKubernetes.NetworkVrack":{"type":"object","description":"Private network (vRack) topology for cluster nodes. The private network and subnet identifiers are immutable after creation. defaultEgress stays mutable.","properties":{"defaultEgress":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.DefaultEgress"}],"description":"Default egress route for the cluster nodes. Defaults is MANAGED_GATEWAY for STANDARD plan, NODE_PUBLIC_INTERFACE for FREE plan.","nullable":true},"loadBalancerSubnetId":{"type":"string","description":"Subnet identifier used by load balancers. Immutable after creation.","nullable":true,"format":"uuid"},"privateNetworkId":{"type":"string","description":"Identifier of the target private network. Immutable after creation.","format":"uuid"},"subnetId":{"type":"string","description":"Subnet identifier used by cluster nodes. Immutable after creation.","format":"uuid"}},"required":["privateNetworkId","subnetId"]},"publicCloud.managedKubernetes.NetworkVrackUpdate":{"type":"object","description":"Mutable private network (vRack) settings. The variant and its identifiers are immutable and must not be sent.","properties":{"defaultEgress":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.DefaultEgress"}],"description":"Default egress route for the cluster nodes","nullable":true}}},"publicCloud.managedKubernetes.Oidc":{"type":"object","description":"Single-provider OpenID Connect configuration for control-plane authentication","properties":{"caContent":{"type":"string","description":"CA certificate of the OIDC provider, PEM-encoded","nullable":true},"clientId":{"type":"string","description":"Identifier of the OIDC client"},"groupsClaim":{"type":"array","description":"JWT claims to use as Kubernetes groups","nullable":true,"items":{"type":"string"}},"groupsPrefix":{"type":"string","description":"Prefix prepended to group claims","nullable":true},"issuerUrl":{"type":"string","description":"OIDC issuer URL"},"requiredClaim":{"type":"array","description":"Claims that must be present in the JWT token","nullable":true,"items":{"type":"string"}},"signingAlgs":{"type":"array","description":"Accepted signing algorithms for OIDC tokens","nullable":true,"items":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.OidcSigningAlgEnum"}},"usernameClaim":{"type":"string","description":"JWT claim to use as the Kubernetes username","nullable":true},"usernamePrefix":{"type":"string","description":"Prefix prepended to username claims","nullable":true}},"required":["clientId","issuerUrl"]},"publicCloud.managedKubernetes.OidcSigningAlgEnum":{"type":"string","description":"JSON Web Signature algorithm accepted for OIDC tokens. RS* are RSASSA-PKCS1-v1_5, ES* are ECDSA and PS* are RSASSA-PSS, each with the SHA-256, SHA-384 or SHA-512 digest.","enum":["ES256","ES384","ES512","PS256","PS384","PS512","RS256","RS384","RS512"]},"publicCloud.managedKubernetes.PlanNameEnum":{"type":"string","description":"Plan offered for managed Kubernetes clusters","enum":["FREE","STANDARD"]},"publicCloud.managedKubernetes.UserGateway":{"type":"object","description":"User-provided egress gateway for nodes on a private network cluster","properties":{"ip":{"allOf":[{"$ref":"#/components/schemas/ip"}],"description":"IP address of the user-provided egress gateway"}},"required":["ip"]},"publicCloud.managedKubernetes.VersionReference":{"type":"object","description":"A Kubernetes version with its support status","properties":{"status":{"allOf":[{"$ref":"#/components/schemas/publicCloud.managedKubernetes.VersionStatusEnum"}],"description":"Support status of the version","readOnly":true},"version":{"type":"string","description":"Kubernetes version. Minor in the creation catalog, for example 1.34, full in the cluster update and upgrade lists, for example 1.34.2-1.","readOnly":true}}},"publicCloud.managedKubernetes.VersionStatusEnum":{"type":"string","description":"Support status of a Kubernetes version","enum":["END_OF_SUPPORT","SUPPORTED"]},"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":{"get":{"operationId":"getAllKubernetesClusters","summary":"List managed Kubernetes clusters","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":"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.Cluster"}}}},"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","Clusters@@@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\")\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\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/get","required":true}],"x-response-identifier":"id","x-expanded-response":"PublicCloudManagedKubernetesCluster"},"post":{"operationId":"createKubernetesCluster","summary":"Create a managed Kubernetes cluster","security":[{"oAuth2AuthCode":[]}],"parameters":[{"in":"path","name":"projectId","description":"Project ID","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.ClusterCreation"},"examples":{"Create a FREE cluster on a private network":{"value":{"targetSpec":{"cni":{"type":"CANAL"},"name":"my-free-private-cluster","network":{"type":"VRACK","vrack":{"privateNetworkId":"00000000-0000-0000-0000-000000000000","subnetId":"00000000-0000-0000-0000-000000000000"}},"plan":"FREE","region":"GRA11"}},"summary":"Request body for a cluster on the FREE plan, with its nodes on a vRack private network. The private network and the subnet must exist in the target region."},"Create a FREE cluster on the public network":{"value":{"targetSpec":{"cni":{"type":"CANAL"},"name":"my-free-cluster","network":{"type":"PUBLIC"},"plan":"FREE","region":"GRA11"}},"summary":"Request body for a cluster on the FREE plan, with its nodes on the public network. The FREE plan requires the CANAL CNI."},"Create a STANDARD cluster on a private network":{"value":{"targetSpec":{"cni":{"type":"CILIUM"},"name":"my-standard-private-cluster","network":{"type":"VRACK","vrack":{"privateNetworkId":"00000000-0000-0000-0000-000000000000","subnetId":"00000000-0000-0000-0000-000000000000"}},"plan":"STANDARD","region":"EU-WEST-PAR"}},"summary":"Request body for a cluster on the STANDARD plan, with its nodes on a vRack private network. The STANDARD plan requires the CILIUM CNI."}}}}},"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Cluster"}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Clusters@@@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.ClusterCreation\nresult = client.post(\"/v2/publicCloud/project/{projectId}/managedKubernetes\",\n\ttargetSpec = None, # Desired cluster specification (type: publicCloud.managedKubernetes.ClusterTargetSpec)\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.ClusterCreation\n$result = $ovh->post(\"/v2/publicCloud/project/{projectId}/managedKubernetes\", array(\n\ttargetSpec => null, // Desired cluster specification (type: publicCloud.managedKubernetes.ClusterTargetSpec)\n));\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/create","required":true}]}},"/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}":{"delete":{"operationId":"deleteKubernetesCluster","summary":"Delete 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"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Cluster"}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Clusters@@@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}\")\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}\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/delete","required":true}]},"get":{"operationId":"getKubernetesCluster","summary":"Get 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"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Cluster"}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Clusters@@@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}\")\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}\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/get","required":true}],"x-response-identifier":"id"},"put":{"operationId":"editKubernetesCluster","summary":"Update 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.ClusterUpdate"}}}},"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Cluster"}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Clusters@@@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.ClusterUpdate\nresult = client.put(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}\",\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 cluster specification with mutable fields only (type: publicCloud.managedKubernetes.ClusterUpdateTargetSpec)\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.ClusterUpdate\n$result = $ovh->put(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}\", 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 cluster specification with mutable fields only (type: publicCloud.managedKubernetes.ClusterUpdateTargetSpec)\n));\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/edit","required":true}]}},"/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/capabilities/version":{"get":{"operationId":"getKubernetesClusterVersions","summary":"Get the versions of a managed Kubernetes cluster","description":"Returns the full version deployed on the cluster, the patch versions of the current minor it can update to, and the versions of the next minor it can upgrade to. Multi-minor jumps are never returned.","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"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.ClusterVersions"},"examples":{"Example":{"value":{"availableUpdates":[{"status":"SUPPORTED","version":"1.32.8-2"}],"availableUpgrades":[{"status":"SUPPORTED","version":"1.33.1-2"}],"currentVersion":"1.32.8-1"},"summary":"Deployed version, available patch updates, and available minor upgrades."}}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Clusters@@@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}/capabilities/version\")\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}/capabilities/version\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/capabilities/version/get","required":true}]}},"/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/event":{"get":{"operationId":"getKubernetesClusterEvents","summary":"List all events related to 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"}},{"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":"CLUSTER_UPDATE","link":"/v2/publicCloud/project/a755273a123456788da6d6fcc71a95f3/managedKubernetes/b1c2d3e4-f5a6-7890-abcd-ef1234567890/task/e4f5a6b7-c8d9-0123-defa-234567890123","message":"Task started to update the cluster","type":"TASK_START"},{"createdAt":"2026-04-08T12:00:00Z","kind":"CLUSTER_UPDATE","message":"Cluster target spec updated","type":"TARGET_SPEC_UPDATE"}],"summary":"Example"}}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Clusters@@@110"]],"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}/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}/event\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/event/get","required":true}]}},"/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/kubeconfig":{"get":{"operationId":"getKubernetesClusterKubeconfig","summary":"Retrieve the cluster admin kubeconfig","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"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Kubeconfig"}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Clusters@@@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}/kubeconfig\")\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}/kubeconfig\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/kubeconfig/get","required":true}]}},"/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/kubeconfig/reset":{"post":{"operationId":"resetKubernetesClusterKubeconfig","summary":"Reset the cluster admin kubeconfig","description":"Rotates the cluster admin credentials asynchronously. The previous kubeconfig stops working.","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"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Cluster"}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Clusters@@@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.post(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/kubeconfig/reset\")\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->post(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/kubeconfig/reset\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/kubeconfig/reset","required":true}]}},"/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/restart":{"post":{"operationId":"restartKubernetesCluster","summary":"Restart the control plane 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":"projectId","description":"Project ID","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.ClusterRestart"}}}},"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.Cluster"}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Clusters@@@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\n# Request body type: publicCloud.managedKubernetes.ClusterRestart\nresult = client.post(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/restart\",\n\tforce = None, # Force the restart. When true the API server may be briefly unavailable. Defaults to false. (type: boolean, nullable)\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.ClusterRestart\n$result = $ovh->post(\"/v2/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/restart\", array(\n\tforce => null, // Force the restart. When true the API server may be briefly unavailable. Defaults to false. (type: boolean, nullable)\n));\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/restart","required":true}]}},"/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/task":{"get":{"operationId":"getAllKubernetesClusterTasks","summary":"List all tasks related to 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/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","Clusters@@@120"]],"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}/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}/task\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/task/get","required":true}],"x-response-identifier":"id","x-expanded-response":"CommonTask"}},"/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/task/{taskId}":{"get":{"operationId":"getKubernetesClusterTask","summary":"Get a specific task related to 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"}},{"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","Clusters@@@130"]],"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}/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}/task/{taskId}\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/task/get","required":true}],"x-response-identifier":"id"}},"/publicCloud/project/{projectId}/managedKubernetes/{managedKubernetesId}/usage/etcd":{"get":{"operationId":"getKubernetesClusterEtcdUsage","summary":"Get the etcd database usage and quota for 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"}}],"responses":{"200":{"description":"successful operation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/publicCloud.managedKubernetes.EtcdUsage"}}}}},"tags":["Managed Kubernetes Service"],"x-developer-hub-navigation":[["Public Cloud","Container","Managed Kubernetes Service","Clusters@@@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}/usage/etcd\")\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}/usage/etcd\");\n\nprint_r($result);\n?>"}],"x-iam-actions":[{"name":"publicCloudProject:apiovh:managedKubernetes/usage/etcd/get","required":true}]}}},"tags":[{"name":"Managed Kubernetes Service","x-tag-expanded":false,"description":"Missing description"}]}
