OKS API v1.0

The OKS API enables you to interact with OUTSCALE Kubernetes as a Service (OKS), a managed Kubernetes service on the OUTSCALE Cloud.

In OKS, each cluster is linked to a project. In a project, you can have several clusters. Templates are also available for different resources.
For more information about the service, see About OKS.

An OpenAPI description of this API is also available for download here: oks.yaml.

Endpoints

Base URLs
https://api.eu-west-2.oks.outscale.com/api/v2
https://api.cloudgouv-eu-west-1.oks.outscale.com/api/v2

Authentication Schemes

There are 3 possible ways to authenticate your requests with the OKS API:

Basic Authentication

HTTP Header Description
Authorization A header in the form Basic XXXX, where XXXX is the Base64 encoding of your root account's login and password joined by a colon (:). Note that with Curl, you can use the --user LOGIN:PASSWORD option as a shortcut for this and Curl will format the header for you.
X-OTP-Code (optional) If multi-factor authentication (MFA) is set up on your account, a header with your OTP token.

Access Key/Secret Key

HTTP Header Description
AccessKey A header with an access key of your root acount. You cannot use EIM users' access keys with OKS.
SecretKey A header with the corresponding secret key of the access key.
X-OTP-Code (optional) If multi-factor authentication (MFA) is set up on your account, a header with your OTP token.

Access Token/Refresh Token

HTTP Header Description
AccessToken In the case of JWT authentication, a header with an access token.
RefreshToken In the case of JWT authentication, a header with the corresponding refresh token.

Clusters

CreateCluster

POST /clusters

Creates a cluster with the provided configuration.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X POST https://api.eu-west-2.oks.outscale.com/api/v2/clusters \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY' \
  --data '{
    "name": "awesome-cluster",
    "project_id": "string",
    "description": "string",
    "cp_subregions": ["2a"],
    "version": "1.30",
    "admin_lbu": false,
    "admission_flags": {
      "disable_admission_plugins": [],
      "enable_admission_plugins": []
    },
    "cidr_pods": "10.91.0.0/16",
    "cidr_service": "10.92.0.0/16",
    "cluster_dns": "10.92.0.10",
    "tags": {
      "key": "value"
    },
    "auto_maintenances": {
      "minor_upgrade_maintenance": {
        "enabled": true,
        "duration_hours": 0,
        "start_hour": 12,
        "week_day": "Mon",
        "tz": "UTC"
      },
      "patch_upgrade_maintenance": {
        "enabled": true,
        "duration_hours": 0,
        "start_hour": 12,
        "week_day": "Mon",
        "tz": "UTC"
      }
    },
    "control_planes": "cp.3.masters.small",
    "admin_whitelist": ["string"],
    "quirks": ["string"],
    "disable_api_termination": false
  }'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

POST /clusters HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY
Content-Type: application/json

{
  "name": "awesome-cluster",
  "project_id": "string",
  "description": "string",
  "cp_subregions": [
    "2a"
  ],
  "version": "1.30",
  "admin_lbu": false,
  "admission_flags": {
    "disable_admission_plugins": [],
    "enable_admission_plugins": []
  },
  "cidr_pods": "10.91.0.0/16",
  "cidr_service": "10.92.0.0/16",
  "cluster_dns": "10.92.0.10",
  "tags": {
    "key": "value"
  },
  "auto_maintenances": {
    "minor_upgrade_maintenance": {
      "enabled": true,
      "duration_hours": 0,
      "start_hour": 12,
      "week_day": "Mon",
      "tz": "UTC"
    },
    "patch_upgrade_maintenance": {
      "enabled": true,
      "duration_hours": 0,
      "start_hour": 12,
      "week_day": "Mon",
      "tz": "UTC"
    }
  },
  "control_planes": "cp.3.masters.small",
  "admin_whitelist": [
    "string"
  ],
  "quirks": [
    "string"
  ],
  "disable_api_termination": false
}

Body (ClusterInput-Input):

Body Parameter Type Description
name (required) string A unique name for the cluster within the project.
Length: 1 to 40 characters. Pattern: ^[a-z][a-z0-9-]*[a-z0-9]$.
project_id (required) string The ID of the project in which you want to create a cluster.
description string or null A description of the cluster.
cp_subregions [string] The list of Subregions where control plane components are deployed.
Default: ["2a"].
version string The Kubernetes version to be deployed for the cluster. For more information, see GetKubernetesVersions.
Default: 1.30.
admin_lbu boolean If true, load balancer administration is enabled for cluster management. If false, it is disabled.
Default: false.
admission_flags AdmissionFlagsInput The configuration for Kubernetes admission controllers.
Default: {"disable_admission_plugins": [], "enable_admission_plugins": []}.
disable_admission_plugins [string] The list of Kubernetes admission plugins to disable.
Default: [].
enable_admission_plugins [string] The list of Kubernetes admission plugins to enable.
Default: [].
cidr_pods string The CIDR block for Kubernetes pods' network.
cidr_service string The CIDR block for the Kubernetes services' network.
cluster_dns string The IP address for the cluster's DNS service.
tags object The key/value combinations of the tags associated with the cluster's metadata, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
auto_maintenances (required) AutoMaintenances The configurations for automated maintenance windows.
minor_upgrade_maintenance (required) MaintenanceWindow The maintenance window configuration for minor Kubernetes upgrades.
enabled boolean If true, a maintenance window is enabled.
Default: true.
duration_hours integer The duration of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun | string. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
patch_upgrade_maintenance (required) MaintenanceWindow The maintenance window configuration for patch Kubernetes upgrades.
enabled boolean If true, a maintenance window is enabled.
Default: true.
duration_hours integer The duration of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun | string. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
control_planes string The size of control plane deployment for the cluster. For more information, see About OKS > Control Planes.
Default: cp.3.masters.small.
admin_whitelist (required) [string] The list of CIDR blocks or IP addresses allowed to access the cluster via the Kubernetes API.
quirks [string] or null The list of special configurations or behaviors for the cluster.
disable_api_termination boolean If true, cluster deletion through the API is disabled. If false, it is enabled.
Default: false.

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Cluster": {
    "project_id": "string",
    "id": "string",
    "name": "string",
    "description": "string",
    "cp_subregions": [
      "string"
    ],
    "version": "string",
    "cni": "string",
    "admin_lbu": true,
    "admission_flags": {
      "disable_admission_plugins": [],
      "enable_admission_plugins": [],
      "applied_admission_plugins": [
        "CertificateApproval",
        "CertificateSigning",
        "CertificateSubjectRestriction",
        "ClusterTrustBundleAttest",
        "DefaultIngressClass",
        "DefaultStorageClass",
        "DefaultTolerationSeconds",
        "LimitRanger",
        "MutatingAdmissionWebhook",
        "NamespaceLifecycle",
        "PersistentVolumeClaimResize",
        "PodSecurity",
        "Priority",
        "ResourceQuota",
        "RuntimeClass",
        "ServiceAccount",
        "StorageObjectInUseProtection",
        "TaintNodesByCondition",
        "ValidatingAdmissionPolicy",
        "ValidatingAdmissionWebhook"
      ]
    },
    "cidr_pods": "string",
    "cidr_service": "string",
    "cluster_dns": "string",
    "tags": {
      "key": "value"
    },
    "auto_maintenances": {
      "minor_upgrade_maintenance": {
        "enabled": true,
        "duration_hours": 0,
        "start_hour": 12,
        "week_day": "Mon",
        "tz": "UTC"
      },
      "patch_upgrade_maintenance": {
        "enabled": true,
        "duration_hours": 0,
        "start_hour": 12,
        "week_day": "Mon",
        "tz": "UTC"
      }
    },
    "control_planes": "string",
    "admin_whitelist": [
      "string"
    ],
    "statuses": {
      "created_at": "2019-08-24T14:15:22Z",
      "deleted_at": "2019-08-24T14:15:22Z",
      "updated_at": "2019-08-24T14:15:22Z",
      "status": "string",
      "available_upgrade": ""
    },
    "disable_api_termination": false
  }
}

Response 200 (ClusterResponse):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext
RequestId string The ID of the API request.
Cluster Cluster
project_id string The ID of the project this cluster belongs to.
id string The Universally Unique Identifier (UUID) of the cluster.
name string A unique name for the cluster within the project.
description string or null An optional description of the cluster.
cp_subregions [string] The Subregions on which the control plane components are deployed.
version string The Kubernetes version deployed for the cluster. For more information, see GetKubernetesVersions.
cni string The Container Network Interface (CNI) used in the cluster.
admin_lbu boolean If true, load balancer administration is enabled for cluster management. If false, it is disabled.
admission_flags AdmissionFlags The configuration of the Kubernetes admission controllers.
Default: {"disable_admission_plugins": [], "enable_admission_plugins": [], "applied_admission_plugins": ["CertificateApproval", "CertificateSigning", "CertificateSubjectRestriction", "ClusterTrustBundleAttest", "DefaultIngressClass", "DefaultStorageClass", "DefaultTolerationSeconds", "LimitRanger", "MutatingAdmissionWebhook", "NamespaceLifecycle", "PersistentVolumeClaimResize", "PodSecurity", "Priority", "ResourceQuota", "RuntimeClass", "ServiceAccount", "StorageObjectInUseProtection", "TaintNodesByCondition", "ValidatingAdmissionPolicy", "ValidatingAdmissionWebhook"]}.
disable_admission_plugins [string] The list of Kubernetes admission plugins that are disabled.
Default: [].
enable_admission_plugins [string] The list of Kubernetes admission plugins that are enabled.
Default: [].
applied_admission_plugins [string] The list of admission plugins that are currently applied to the cluster.
Default: ["CertificateApproval", "CertificateSigning", "CertificateSubjectRestriction", "ClusterTrustBundleAttest", "DefaultIngressClass", "DefaultStorageClass", "DefaultTolerationSeconds", "LimitRanger", "MutatingAdmissionWebhook", "NamespaceLifecycle", "PersistentVolumeClaimResize", "PodSecurity", "Priority", "ResourceQuota", "RuntimeClass", "ServiceAccount", "StorageObjectInUseProtection", "TaintNodesByCondition", "ValidatingAdmissionPolicy", "ValidatingAdmissionWebhook"].
cidr_pods string or null The CIDR block of the Kubernetes pods' network.
cidr_service string or null The CIDR block of the Kubernetes services' network.
cluster_dns string or null The IP address of the cluster's DNS service.
tags object The key/value combinations of the tags associated with the cluster, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
auto_maintenances AutoMaintenances The configuration of the automated maintenance windows.
minor_upgrade_maintenance MaintenanceWindow The maintenance window configuration for minor Kubernetes upgrades.
enabled boolean If true, a maintenance window is enabled.
Default: true.
duration_hours integer The duration of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun | string. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
patch_upgrade_maintenance MaintenanceWindow The maintenance window configuration for patch Kubernetes upgrades.
enabled boolean If true, a maintenance window is enabled.
Default: true.
duration_hours integer The duration of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun | string. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
control_planes string The control plane sizing of the cluster.
admin_whitelist [string] The list of CIDR blocks or IP addresses allowed to access the cluster via the Kubernetes API.
statuses Statuses The status information of the cluster.
created_at string (date-time) The timestamp when the cluster was created.
deleted_at string (date-time) or null The timestamp when the cluster was deleted (if applicable).
updated_at string (date-time) or null The timestamp when the cluster was last updated.
status string or null The status of the cluster.
available_upgrade string Any available version of Kubernetes for upgrade (if applicable). For more information, see GetKubernetesVersions.
Default: .
disable_api_termination boolean If true, cluster deletion through the API is disabled. If false, it is enabled.
Default: false.

Other responses:

ListClustersByProjectID

GET /clusters

Lists one or more clusters associated with a project. The response can be filtered using the parameters.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X GET https://api.eu-west-2.oks.outscale.com/api/v2/clusters?project_id=string&name=string&status=string&version=string&deleted=true \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

GET /clusters?project_id=string&name=string&status=string&version=string&deleted=true HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY

Query:

Query Parameter Type Description
project_id string or null The ID of the project.
name string or null The name of the clusters.
status string or null The status of the clusters.
version string or null The version of the clusters.
deleted boolean or null If true, returns deleted clusters.

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Clusters": [
    {
      "project_id": "string",
      "id": "string",
      "name": "string",
      "description": "string",
      "cp_subregions": [
        "string"
      ],
      "version": "string",
      "cni": "string",
      "admin_lbu": true,
      "admission_flags": {
        "disable_admission_plugins": [],
        "enable_admission_plugins": [],
        "applied_admission_plugins": [
          "CertificateApproval",
          "CertificateSigning",
          "CertificateSubjectRestriction",
          "ClusterTrustBundleAttest",
          "DefaultIngressClass",
          "DefaultStorageClass",
          "DefaultTolerationSeconds",
          "LimitRanger",
          "MutatingAdmissionWebhook",
          "NamespaceLifecycle",
          "PersistentVolumeClaimResize",
          "PodSecurity",
          "Priority",
          "ResourceQuota",
          "RuntimeClass",
          "ServiceAccount",
          "StorageObjectInUseProtection",
          "TaintNodesByCondition",
          "ValidatingAdmissionPolicy",
          "ValidatingAdmissionWebhook"
        ]
      },
      "cidr_pods": "string",
      "cidr_service": "string",
      "cluster_dns": "string",
      "tags": {
        "key": "value"
      },
      "auto_maintenances": {
        "minor_upgrade_maintenance": {
          "enabled": true,
          "duration_hours": 0,
          "start_hour": 12,
          "week_day": "Mon",
          "tz": "UTC"
        },
        "patch_upgrade_maintenance": {
          "enabled": true,
          "duration_hours": 0,
          "start_hour": 12,
          "week_day": "Mon",
          "tz": "UTC"
        }
      },
      "control_planes": "string",
      "admin_whitelist": [
        "string"
      ],
      "statuses": {
        "created_at": "2019-08-24T14:15:22Z",
        "deleted_at": "2019-08-24T14:15:22Z",
        "updated_at": "2019-08-24T14:15:22Z",
        "status": "string",
        "available_upgrade": ""
      },
      "disable_api_termination": false
    }
  ]
}

Response 200 (ClusterResponseList):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext
RequestId string The ID of the API request.
Clusters [Cluster]
item Cluster
project_id string The ID of the project this cluster belongs to.
id string The Universally Unique Identifier (UUID) of the cluster.
name string A unique name for the cluster within the project.
description string or null An optional description of the cluster.
cp_subregions [string] The Subregions on which the control plane components are deployed.
version string The Kubernetes version deployed for the cluster. For more information, see GetKubernetesVersions.
cni string The Container Network Interface (CNI) used in the cluster.
admin_lbu boolean If true, load balancer administration is enabled for cluster management. If false, it is disabled.
admission_flags AdmissionFlags The configuration of the Kubernetes admission controllers.
Default: {"disable_admission_plugins": [], "enable_admission_plugins": [], "applied_admission_plugins": ["CertificateApproval", "CertificateSigning", "CertificateSubjectRestriction", "ClusterTrustBundleAttest", "DefaultIngressClass", "DefaultStorageClass", "DefaultTolerationSeconds", "LimitRanger", "MutatingAdmissionWebhook", "NamespaceLifecycle", "PersistentVolumeClaimResize", "PodSecurity", "Priority", "ResourceQuota", "RuntimeClass", "ServiceAccount", "StorageObjectInUseProtection", "TaintNodesByCondition", "ValidatingAdmissionPolicy", "ValidatingAdmissionWebhook"]}.
disable_admission_plugins [string] The list of Kubernetes admission plugins that are disabled.
Default: [].
enable_admission_plugins [string] The list of Kubernetes admission plugins that are enabled.
Default: [].
applied_admission_plugins [string] The list of admission plugins that are currently applied to the cluster.
Default: ["CertificateApproval", "CertificateSigning", "CertificateSubjectRestriction", "ClusterTrustBundleAttest", "DefaultIngressClass", "DefaultStorageClass", "DefaultTolerationSeconds", "LimitRanger", "MutatingAdmissionWebhook", "NamespaceLifecycle", "PersistentVolumeClaimResize", "PodSecurity", "Priority", "ResourceQuota", "RuntimeClass", "ServiceAccount", "StorageObjectInUseProtection", "TaintNodesByCondition", "ValidatingAdmissionPolicy", "ValidatingAdmissionWebhook"].
cidr_pods string or null The CIDR block of the Kubernetes pods' network.
cidr_service string or null The CIDR block of the Kubernetes services' network.
cluster_dns string or null The IP address of the cluster's DNS service.
tags object The key/value combinations of the tags associated with the cluster, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
auto_maintenances AutoMaintenances The configuration of the automated maintenance windows.
minor_upgrade_maintenance MaintenanceWindow The maintenance window configuration for minor Kubernetes upgrades.
enabled boolean If true, a maintenance window is enabled.
Default: true.
duration_hours integer The duration of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun | string. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
patch_upgrade_maintenance MaintenanceWindow The maintenance window configuration for patch Kubernetes upgrades.
enabled boolean If true, a maintenance window is enabled.
Default: true.
duration_hours integer The duration of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun | string. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
control_planes string The control plane sizing of the cluster.
admin_whitelist [string] The list of CIDR blocks or IP addresses allowed to access the cluster via the Kubernetes API.
statuses Statuses The status information of the cluster.
created_at string (date-time) The timestamp when the cluster was created.
deleted_at string (date-time) or null The timestamp when the cluster was deleted (if applicable).
updated_at string (date-time) or null The timestamp when the cluster was last updated.
status string or null The status of the cluster.
available_upgrade string Any available version of Kubernetes for upgrade (if applicable). For more information, see GetKubernetesVersions.
Default: .
disable_api_termination boolean If true, cluster deletion through the API is disabled. If false, it is enabled.
Default: false.

Other responses:

ListAllClusters

GET /clusters/all

Lists one or more of your clusters. The response can be filtered using the parameters.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X GET https://api.eu-west-2.oks.outscale.com/api/v2/clusters/all?name=string&status=string&version=string&deleted=true \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

GET /clusters/all?name=string&status=string&version=string&deleted=true HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY

Query:

Query Parameter Type Description
name string or null The name of the clusters.
status string or null The status of the clusters.
version string or null The version of the clusters.
deleted boolean or null If true, returns deleted clusters.

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Clusters": [
    {
      "project_id": "string",
      "id": "string",
      "name": "string",
      "description": "string",
      "cp_subregions": [
        "string"
      ],
      "version": "string",
      "cni": "string",
      "admin_lbu": true,
      "admission_flags": {
        "disable_admission_plugins": [],
        "enable_admission_plugins": [],
        "applied_admission_plugins": [
          "CertificateApproval",
          "CertificateSigning",
          "CertificateSubjectRestriction",
          "ClusterTrustBundleAttest",
          "DefaultIngressClass",
          "DefaultStorageClass",
          "DefaultTolerationSeconds",
          "LimitRanger",
          "MutatingAdmissionWebhook",
          "NamespaceLifecycle",
          "PersistentVolumeClaimResize",
          "PodSecurity",
          "Priority",
          "ResourceQuota",
          "RuntimeClass",
          "ServiceAccount",
          "StorageObjectInUseProtection",
          "TaintNodesByCondition",
          "ValidatingAdmissionPolicy",
          "ValidatingAdmissionWebhook"
        ]
      },
      "cidr_pods": "string",
      "cidr_service": "string",
      "cluster_dns": "string",
      "tags": {
        "key": "value"
      },
      "auto_maintenances": {
        "minor_upgrade_maintenance": {
          "enabled": true,
          "duration_hours": 0,
          "start_hour": 12,
          "week_day": "Mon",
          "tz": "UTC"
        },
        "patch_upgrade_maintenance": {
          "enabled": true,
          "duration_hours": 0,
          "start_hour": 12,
          "week_day": "Mon",
          "tz": "UTC"
        }
      },
      "control_planes": "string",
      "admin_whitelist": [
        "string"
      ],
      "statuses": {
        "created_at": "2019-08-24T14:15:22Z",
        "deleted_at": "2019-08-24T14:15:22Z",
        "updated_at": "2019-08-24T14:15:22Z",
        "status": "string",
        "available_upgrade": ""
      },
      "disable_api_termination": false
    }
  ]
}

Response 200 (ClusterResponseList):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext
RequestId string The ID of the API request.
Clusters [Cluster]
item Cluster
project_id string The ID of the project this cluster belongs to.
id string The Universally Unique Identifier (UUID) of the cluster.
name string A unique name for the cluster within the project.
description string or null An optional description of the cluster.
cp_subregions [string] The Subregions on which the control plane components are deployed.
version string The Kubernetes version deployed for the cluster. For more information, see GetKubernetesVersions.
cni string The Container Network Interface (CNI) used in the cluster.
admin_lbu boolean If true, load balancer administration is enabled for cluster management. If false, it is disabled.
admission_flags AdmissionFlags The configuration of the Kubernetes admission controllers.
Default: {"disable_admission_plugins": [], "enable_admission_plugins": [], "applied_admission_plugins": ["CertificateApproval", "CertificateSigning", "CertificateSubjectRestriction", "ClusterTrustBundleAttest", "DefaultIngressClass", "DefaultStorageClass", "DefaultTolerationSeconds", "LimitRanger", "MutatingAdmissionWebhook", "NamespaceLifecycle", "PersistentVolumeClaimResize", "PodSecurity", "Priority", "ResourceQuota", "RuntimeClass", "ServiceAccount", "StorageObjectInUseProtection", "TaintNodesByCondition", "ValidatingAdmissionPolicy", "ValidatingAdmissionWebhook"]}.
disable_admission_plugins [string] The list of Kubernetes admission plugins that are disabled.
Default: [].
enable_admission_plugins [string] The list of Kubernetes admission plugins that are enabled.
Default: [].
applied_admission_plugins [string] The list of admission plugins that are currently applied to the cluster.
Default: ["CertificateApproval", "CertificateSigning", "CertificateSubjectRestriction", "ClusterTrustBundleAttest", "DefaultIngressClass", "DefaultStorageClass", "DefaultTolerationSeconds", "LimitRanger", "MutatingAdmissionWebhook", "NamespaceLifecycle", "PersistentVolumeClaimResize", "PodSecurity", "Priority", "ResourceQuota", "RuntimeClass", "ServiceAccount", "StorageObjectInUseProtection", "TaintNodesByCondition", "ValidatingAdmissionPolicy", "ValidatingAdmissionWebhook"].
cidr_pods string or null The CIDR block of the Kubernetes pods' network.
cidr_service string or null The CIDR block of the Kubernetes services' network.
cluster_dns string or null The IP address of the cluster's DNS service.
tags object The key/value combinations of the tags associated with the cluster, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
auto_maintenances AutoMaintenances The configuration of the automated maintenance windows.
minor_upgrade_maintenance MaintenanceWindow The maintenance window configuration for minor Kubernetes upgrades.
enabled boolean If true, a maintenance window is enabled.
Default: true.
duration_hours integer The duration of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun | string. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
patch_upgrade_maintenance MaintenanceWindow The maintenance window configuration for patch Kubernetes upgrades.
enabled boolean If true, a maintenance window is enabled.
Default: true.
duration_hours integer The duration of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun | string. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
control_planes string The control plane sizing of the cluster.
admin_whitelist [string] The list of CIDR blocks or IP addresses allowed to access the cluster via the Kubernetes API.
statuses Statuses The status information of the cluster.
created_at string (date-time) The timestamp when the cluster was created.
deleted_at string (date-time) or null The timestamp when the cluster was deleted (if applicable).
updated_at string (date-time) or null The timestamp when the cluster was last updated.
status string or null The status of the cluster.
available_upgrade string Any available version of Kubernetes for upgrade (if applicable). For more information, see GetKubernetesVersions.
Default: .
disable_api_termination boolean If true, cluster deletion through the API is disabled. If false, it is enabled.
Default: false.

Other responses:

GetCluster

GET /clusters/{cluster_id}

Gets information about a specific cluster.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X GET https://api.eu-west-2.oks.outscale.com/api/v2/clusters/{cluster_id} \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

GET /clusters/{cluster_id} HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY

Path:

Path Parameter Type Description
cluster_id (required) string The name of the cluster.

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Cluster": {
    "project_id": "string",
    "id": "string",
    "name": "string",
    "description": "string",
    "cp_subregions": [
      "string"
    ],
    "version": "string",
    "cni": "string",
    "admin_lbu": true,
    "admission_flags": {
      "disable_admission_plugins": [],
      "enable_admission_plugins": [],
      "applied_admission_plugins": [
        "CertificateApproval",
        "CertificateSigning",
        "CertificateSubjectRestriction",
        "ClusterTrustBundleAttest",
        "DefaultIngressClass",
        "DefaultStorageClass",
        "DefaultTolerationSeconds",
        "LimitRanger",
        "MutatingAdmissionWebhook",
        "NamespaceLifecycle",
        "PersistentVolumeClaimResize",
        "PodSecurity",
        "Priority",
        "ResourceQuota",
        "RuntimeClass",
        "ServiceAccount",
        "StorageObjectInUseProtection",
        "TaintNodesByCondition",
        "ValidatingAdmissionPolicy",
        "ValidatingAdmissionWebhook"
      ]
    },
    "cidr_pods": "string",
    "cidr_service": "string",
    "cluster_dns": "string",
    "tags": {
      "key": "value"
    },
    "auto_maintenances": {
      "minor_upgrade_maintenance": {
        "enabled": true,
        "duration_hours": 0,
        "start_hour": 12,
        "week_day": "Mon",
        "tz": "UTC"
      },
      "patch_upgrade_maintenance": {
        "enabled": true,
        "duration_hours": 0,
        "start_hour": 12,
        "week_day": "Mon",
        "tz": "UTC"
      }
    },
    "control_planes": "string",
    "admin_whitelist": [
      "string"
    ],
    "statuses": {
      "created_at": "2019-08-24T14:15:22Z",
      "deleted_at": "2019-08-24T14:15:22Z",
      "updated_at": "2019-08-24T14:15:22Z",
      "status": "string",
      "available_upgrade": ""
    },
    "disable_api_termination": false
  }
}

Response 200 (ClusterResponse):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext
RequestId string The ID of the API request.
Cluster Cluster
project_id string The ID of the project this cluster belongs to.
id string The Universally Unique Identifier (UUID) of the cluster.
name string A unique name for the cluster within the project.
description string or null An optional description of the cluster.
cp_subregions [string] The Subregions on which the control plane components are deployed.
version string The Kubernetes version deployed for the cluster. For more information, see GetKubernetesVersions.
cni string The Container Network Interface (CNI) used in the cluster.
admin_lbu boolean If true, load balancer administration is enabled for cluster management. If false, it is disabled.
admission_flags AdmissionFlags The configuration of the Kubernetes admission controllers.
Default: {"disable_admission_plugins": [], "enable_admission_plugins": [], "applied_admission_plugins": ["CertificateApproval", "CertificateSigning", "CertificateSubjectRestriction", "ClusterTrustBundleAttest", "DefaultIngressClass", "DefaultStorageClass", "DefaultTolerationSeconds", "LimitRanger", "MutatingAdmissionWebhook", "NamespaceLifecycle", "PersistentVolumeClaimResize", "PodSecurity", "Priority", "ResourceQuota", "RuntimeClass", "ServiceAccount", "StorageObjectInUseProtection", "TaintNodesByCondition", "ValidatingAdmissionPolicy", "ValidatingAdmissionWebhook"]}.
disable_admission_plugins [string] The list of Kubernetes admission plugins that are disabled.
Default: [].
enable_admission_plugins [string] The list of Kubernetes admission plugins that are enabled.
Default: [].
applied_admission_plugins [string] The list of admission plugins that are currently applied to the cluster.
Default: ["CertificateApproval", "CertificateSigning", "CertificateSubjectRestriction", "ClusterTrustBundleAttest", "DefaultIngressClass", "DefaultStorageClass", "DefaultTolerationSeconds", "LimitRanger", "MutatingAdmissionWebhook", "NamespaceLifecycle", "PersistentVolumeClaimResize", "PodSecurity", "Priority", "ResourceQuota", "RuntimeClass", "ServiceAccount", "StorageObjectInUseProtection", "TaintNodesByCondition", "ValidatingAdmissionPolicy", "ValidatingAdmissionWebhook"].
cidr_pods string or null The CIDR block of the Kubernetes pods' network.
cidr_service string or null The CIDR block of the Kubernetes services' network.
cluster_dns string or null The IP address of the cluster's DNS service.
tags object The key/value combinations of the tags associated with the cluster, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
auto_maintenances AutoMaintenances The configuration of the automated maintenance windows.
minor_upgrade_maintenance MaintenanceWindow The maintenance window configuration for minor Kubernetes upgrades.
enabled boolean If true, a maintenance window is enabled.
Default: true.
duration_hours integer The duration of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun | string. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
patch_upgrade_maintenance MaintenanceWindow The maintenance window configuration for patch Kubernetes upgrades.
enabled boolean If true, a maintenance window is enabled.
Default: true.
duration_hours integer The duration of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun | string. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
control_planes string The control plane sizing of the cluster.
admin_whitelist [string] The list of CIDR blocks or IP addresses allowed to access the cluster via the Kubernetes API.
statuses Statuses The status information of the cluster.
created_at string (date-time) The timestamp when the cluster was created.
deleted_at string (date-time) or null The timestamp when the cluster was deleted (if applicable).
updated_at string (date-time) or null The timestamp when the cluster was last updated.
status string or null The status of the cluster.
available_upgrade string Any available version of Kubernetes for upgrade (if applicable). For more information, see GetKubernetesVersions.
Default: .
disable_api_termination boolean If true, cluster deletion through the API is disabled. If false, it is enabled.
Default: false.

Other responses:

UpdateCluster

PATCH /clusters/{cluster_id}

Updates the configuration of an existing cluster.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X PATCH https://api.eu-west-2.oks.outscale.com/api/v2/clusters/{cluster_id} \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY' \
  --data '{
    "description": "string",
    "admission_flags": {
      "disable_admission_plugins": [],
      "enable_admission_plugins": []
    },
    "tags": {
      "property1": "string",
      "property2": "string"
    },
    "auto_maintenances": {
      "minor_upgrade_maintenance": {
        "enabled": true,
        "duration_hours": 0,
        "start_hour": 12,
        "week_day": "Mon",
        "tz": "UTC"
      },
      "patch_upgrade_maintenance": {
        "enabled": true,
        "duration_hours": 0,
        "start_hour": 12,
        "week_day": "Mon",
        "tz": "UTC"
      }
    },
    "admin_whitelist": ["string"],
    "quirks": ["string"],
    "disable_api_termination": true,
    "version": "string"
  }'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

PATCH /clusters/{cluster_id} HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY
Content-Type: application/json

{
  "description": "string",
  "admission_flags": {
    "disable_admission_plugins": [],
    "enable_admission_plugins": []
  },
  "tags": {
    "property1": "string",
    "property2": "string"
  },
  "auto_maintenances": {
    "minor_upgrade_maintenance": {
      "enabled": true,
      "duration_hours": 0,
      "start_hour": 12,
      "week_day": "Mon",
      "tz": "UTC"
    },
    "patch_upgrade_maintenance": {
      "enabled": true,
      "duration_hours": 0,
      "start_hour": 12,
      "week_day": "Mon",
      "tz": "UTC"
    }
  },
  "admin_whitelist": [
    "string"
  ],
  "quirks": [
    "string"
  ],
  "disable_api_termination": true,
  "version": "string"
}

Path:

Path Parameter Type Description
cluster_id (required) string The ID of the cluster.

Body (ClusterUpdate):

Body Parameter Type Description
description string or null The updated description of the cluster.
admission_flags AdmissionFlagsInput or null The updated configuration for the Kubernetes admission controllers.
disable_admission_plugins [string] The list of Kubernetes admission plugins to disable.
Default: [].
enable_admission_plugins [string] The list of Kubernetes admission plugins to enable.
Default: [].
tags object or null The updated key/value combinations of the tags associated with the cluster's metadata, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
auto_maintenances AutoMaintenances or null The updated configuration for the automated maintenance windows.
minor_upgrade_maintenance (required) MaintenanceWindow The maintenance window configuration for minor Kubernetes upgrades.
enabled boolean If true, a maintenance window is enabled.
Default: true.
duration_hours integer The duration of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun | string. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
patch_upgrade_maintenance (required) MaintenanceWindow The maintenance window configuration for patch Kubernetes upgrades.
enabled boolean If true, a maintenance window is enabled.
Default: true.
duration_hours integer The duration of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun | string. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
admin_whitelist [string] or null The updated list of CIDR blocks or IP addresses allowed to access the cluster via the Kubernetes API.
quirks [string] or null The updated list of special configurations or behaviors for the cluster.
disable_api_termination boolean or null If true, cluster deletion through the API is disabled. If false, it is enabled.
version string or null The updated version of Kubernetes for the cluster. For more information, see GetKubernetesVersions.

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Cluster": {
    "project_id": "string",
    "id": "string",
    "name": "string",
    "description": "string",
    "cp_subregions": [
      "string"
    ],
    "version": "string",
    "cni": "string",
    "admin_lbu": true,
    "admission_flags": {
      "disable_admission_plugins": [],
      "enable_admission_plugins": [],
      "applied_admission_plugins": [
        "CertificateApproval",
        "CertificateSigning",
        "CertificateSubjectRestriction",
        "ClusterTrustBundleAttest",
        "DefaultIngressClass",
        "DefaultStorageClass",
        "DefaultTolerationSeconds",
        "LimitRanger",
        "MutatingAdmissionWebhook",
        "NamespaceLifecycle",
        "PersistentVolumeClaimResize",
        "PodSecurity",
        "Priority",
        "ResourceQuota",
        "RuntimeClass",
        "ServiceAccount",
        "StorageObjectInUseProtection",
        "TaintNodesByCondition",
        "ValidatingAdmissionPolicy",
        "ValidatingAdmissionWebhook"
      ]
    },
    "cidr_pods": "string",
    "cidr_service": "string",
    "cluster_dns": "string",
    "tags": {
      "key": "value"
    },
    "auto_maintenances": {
      "minor_upgrade_maintenance": {
        "enabled": true,
        "duration_hours": 0,
        "start_hour": 12,
        "week_day": "Mon",
        "tz": "UTC"
      },
      "patch_upgrade_maintenance": {
        "enabled": true,
        "duration_hours": 0,
        "start_hour": 12,
        "week_day": "Mon",
        "tz": "UTC"
      }
    },
    "control_planes": "string",
    "admin_whitelist": [
      "string"
    ],
    "statuses": {
      "created_at": "2019-08-24T14:15:22Z",
      "deleted_at": "2019-08-24T14:15:22Z",
      "updated_at": "2019-08-24T14:15:22Z",
      "status": "string",
      "available_upgrade": ""
    },
    "disable_api_termination": false
  }
}

Response 200 (ClusterResponse):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext
RequestId string The ID of the API request.
Cluster Cluster
project_id string The ID of the project this cluster belongs to.
id string The Universally Unique Identifier (UUID) of the cluster.
name string A unique name for the cluster within the project.
description string or null An optional description of the cluster.
cp_subregions [string] The Subregions on which the control plane components are deployed.
version string The Kubernetes version deployed for the cluster. For more information, see GetKubernetesVersions.
cni string The Container Network Interface (CNI) used in the cluster.
admin_lbu boolean If true, load balancer administration is enabled for cluster management. If false, it is disabled.
admission_flags AdmissionFlags The configuration of the Kubernetes admission controllers.
Default: {"disable_admission_plugins": [], "enable_admission_plugins": [], "applied_admission_plugins": ["CertificateApproval", "CertificateSigning", "CertificateSubjectRestriction", "ClusterTrustBundleAttest", "DefaultIngressClass", "DefaultStorageClass", "DefaultTolerationSeconds", "LimitRanger", "MutatingAdmissionWebhook", "NamespaceLifecycle", "PersistentVolumeClaimResize", "PodSecurity", "Priority", "ResourceQuota", "RuntimeClass", "ServiceAccount", "StorageObjectInUseProtection", "TaintNodesByCondition", "ValidatingAdmissionPolicy", "ValidatingAdmissionWebhook"]}.
disable_admission_plugins [string] The list of Kubernetes admission plugins that are disabled.
Default: [].
enable_admission_plugins [string] The list of Kubernetes admission plugins that are enabled.
Default: [].
applied_admission_plugins [string] The list of admission plugins that are currently applied to the cluster.
Default: ["CertificateApproval", "CertificateSigning", "CertificateSubjectRestriction", "ClusterTrustBundleAttest", "DefaultIngressClass", "DefaultStorageClass", "DefaultTolerationSeconds", "LimitRanger", "MutatingAdmissionWebhook", "NamespaceLifecycle", "PersistentVolumeClaimResize", "PodSecurity", "Priority", "ResourceQuota", "RuntimeClass", "ServiceAccount", "StorageObjectInUseProtection", "TaintNodesByCondition", "ValidatingAdmissionPolicy", "ValidatingAdmissionWebhook"].
cidr_pods string or null The CIDR block of the Kubernetes pods' network.
cidr_service string or null The CIDR block of the Kubernetes services' network.
cluster_dns string or null The IP address of the cluster's DNS service.
tags object The key/value combinations of the tags associated with the cluster, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
auto_maintenances AutoMaintenances The configuration of the automated maintenance windows.
minor_upgrade_maintenance MaintenanceWindow The maintenance window configuration for minor Kubernetes upgrades.
enabled boolean If true, a maintenance window is enabled.
Default: true.
duration_hours integer The duration of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun | string. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
patch_upgrade_maintenance MaintenanceWindow The maintenance window configuration for patch Kubernetes upgrades.
enabled boolean If true, a maintenance window is enabled.
Default: true.
duration_hours integer The duration of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun | string. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
control_planes string The control plane sizing of the cluster.
admin_whitelist [string] The list of CIDR blocks or IP addresses allowed to access the cluster via the Kubernetes API.
statuses Statuses The status information of the cluster.
created_at string (date-time) The timestamp when the cluster was created.
deleted_at string (date-time) or null The timestamp when the cluster was deleted (if applicable).
updated_at string (date-time) or null The timestamp when the cluster was last updated.
status string or null The status of the cluster.
available_upgrade string Any available version of Kubernetes for upgrade (if applicable). For more information, see GetKubernetesVersions.
Default: .
disable_api_termination boolean If true, cluster deletion through the API is disabled. If false, it is enabled.
Default: false.

Other responses:

DeleteCluster

DELETE /clusters/{cluster_id}

Deletes a specific cluster.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X DELETE https://api.eu-west-2.oks.outscale.com/api/v2/clusters/{cluster_id} \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

DELETE /clusters/{cluster_id} HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY

Path:

Path Parameter Type Description
cluster_id (required) string The ID of the cluster.

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "detail": "string"
}

Response 200 (DetailResponse):

Response Element Type Description
ResponseContext projects__project_schema__ResponseContext
RequestId string The ID of the API request.
detail string A detailed message related to the API response.

Other responses:

GetKubeconfig

GET /clusters/{cluster_id}/kubeconfig

Gets the kubeconfig file for a specific cluster. You can specify query parameters for the kubeconfig file.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X GET https://api.eu-west-2.oks.outscale.com/api/v2/clusters/{cluster_id}/kubeconfig?user=string&group=string&ttl=string \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

GET /clusters/{cluster_id}/kubeconfig?user=string&group=string&ttl=string HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY

Path:

Path Parameter Type Description
cluster_id (required) string The ID of the cluster.

Query:

Query Parameter Type Description
user string or null The user of the kubeconfig file.
group string or null The group of the kubeconfig file.
ttl string or null The time to live (TTL) of the kubeconfig file.

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Cluster": {
    "request_id": "string",
    "data": {
      "name": "string",
      "kubeconfig": "string"
    }
  }
}

Response 200 (KubeconfigResponse):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext
RequestId string The ID of the API request.
Cluster clusters__cluster_schema__RPCResponse
request_id string The ID of the API request.
data KubeconfigData The kubeconfig data for the cluster.
name string The name of the cluster.
kubeconfig string A file containing access configuration to the cluster.

Other responses:

GetKubeconfigWithPubkeyNACL

POST /clusters/{cluster_id}/kubeconfig

Gets the kubeconfig file for a specific cluster, optionally encrypted with a NaCl public key. For more information, see the NaCl website. You can specify query parameters for the kubeconfig file.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X POST https://api.eu-west-2.oks.outscale.com/api/v2/clusters/{cluster_id}/kubeconfig?user=string&group=string&ttl=string \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY' \
  --header 'x-encrypt-nacl: string'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

POST /clusters/{cluster_id}/kubeconfig?user=string&group=string&ttl=string HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY
x-encrypt-nacl: string

Path:

Path Parameter Type Description
cluster_id (required) string The ID of the cluster.

Query:

Query Parameter Type Description
user string or null The user of the kubeconfig file.
group string or null The group of the kubeconfig file.
ttl string or null The time to live (TTL) of the kubeconfig file.

Headers:

Header Parameter Type Description
x-encrypt-nacl string or null The header to encrypt the kubeconfig file.

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Cluster": {
    "request_id": "string",
    "data": {
      "name": "string",
      "kubeconfig": "string"
    }
  }
}

Response 200 (KubeconfigResponse):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext
RequestId string The ID of the API request.
Cluster clusters__cluster_schema__RPCResponse
request_id string The ID of the API request.
data KubeconfigData The kubeconfig data for the cluster.
name string The name of the cluster.
kubeconfig string A file containing access configuration to the cluster.

Other responses:

UpgradeCluster

PATCH /clusters/{cluster_id}/upgrade

Upgrades a specific cluster to the latest available version of Kubernetes. For more information, see GetKubernetesVersions.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X PATCH https://api.eu-west-2.oks.outscale.com/api/v2/clusters/{cluster_id}/upgrade \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

PATCH /clusters/{cluster_id}/upgrade HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY

Path:

Path Parameter Type Description
cluster_id (required) string The ID of the cluster.

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Cluster": {
    "project_id": "string",
    "id": "string",
    "name": "string",
    "description": "string",
    "cp_subregions": [
      "string"
    ],
    "version": "string",
    "cni": "string",
    "admin_lbu": true,
    "admission_flags": {
      "disable_admission_plugins": [],
      "enable_admission_plugins": [],
      "applied_admission_plugins": [
        "CertificateApproval",
        "CertificateSigning",
        "CertificateSubjectRestriction",
        "ClusterTrustBundleAttest",
        "DefaultIngressClass",
        "DefaultStorageClass",
        "DefaultTolerationSeconds",
        "LimitRanger",
        "MutatingAdmissionWebhook",
        "NamespaceLifecycle",
        "PersistentVolumeClaimResize",
        "PodSecurity",
        "Priority",
        "ResourceQuota",
        "RuntimeClass",
        "ServiceAccount",
        "StorageObjectInUseProtection",
        "TaintNodesByCondition",
        "ValidatingAdmissionPolicy",
        "ValidatingAdmissionWebhook"
      ]
    },
    "cidr_pods": "string",
    "cidr_service": "string",
    "cluster_dns": "string",
    "tags": {
      "key": "value"
    },
    "auto_maintenances": {
      "minor_upgrade_maintenance": {
        "enabled": true,
        "duration_hours": 0,
        "start_hour": 12,
        "week_day": "Mon",
        "tz": "UTC"
      },
      "patch_upgrade_maintenance": {
        "enabled": true,
        "duration_hours": 0,
        "start_hour": 12,
        "week_day": "Mon",
        "tz": "UTC"
      }
    },
    "control_planes": "string",
    "admin_whitelist": [
      "string"
    ],
    "statuses": {
      "created_at": "2019-08-24T14:15:22Z",
      "deleted_at": "2019-08-24T14:15:22Z",
      "updated_at": "2019-08-24T14:15:22Z",
      "status": "string",
      "available_upgrade": ""
    },
    "disable_api_termination": false
  }
}

Response 200 (ClusterResponse):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext
RequestId string The ID of the API request.
Cluster Cluster
project_id string The ID of the project this cluster belongs to.
id string The Universally Unique Identifier (UUID) of the cluster.
name string A unique name for the cluster within the project.
description string or null An optional description of the cluster.
cp_subregions [string] The Subregions on which the control plane components are deployed.
version string The Kubernetes version deployed for the cluster. For more information, see GetKubernetesVersions.
cni string The Container Network Interface (CNI) used in the cluster.
admin_lbu boolean If true, load balancer administration is enabled for cluster management. If false, it is disabled.
admission_flags AdmissionFlags The configuration of the Kubernetes admission controllers.
Default: {"disable_admission_plugins": [], "enable_admission_plugins": [], "applied_admission_plugins": ["CertificateApproval", "CertificateSigning", "CertificateSubjectRestriction", "ClusterTrustBundleAttest", "DefaultIngressClass", "DefaultStorageClass", "DefaultTolerationSeconds", "LimitRanger", "MutatingAdmissionWebhook", "NamespaceLifecycle", "PersistentVolumeClaimResize", "PodSecurity", "Priority", "ResourceQuota", "RuntimeClass", "ServiceAccount", "StorageObjectInUseProtection", "TaintNodesByCondition", "ValidatingAdmissionPolicy", "ValidatingAdmissionWebhook"]}.
disable_admission_plugins [string] The list of Kubernetes admission plugins that are disabled.
Default: [].
enable_admission_plugins [string] The list of Kubernetes admission plugins that are enabled.
Default: [].
applied_admission_plugins [string] The list of admission plugins that are currently applied to the cluster.
Default: ["CertificateApproval", "CertificateSigning", "CertificateSubjectRestriction", "ClusterTrustBundleAttest", "DefaultIngressClass", "DefaultStorageClass", "DefaultTolerationSeconds", "LimitRanger", "MutatingAdmissionWebhook", "NamespaceLifecycle", "PersistentVolumeClaimResize", "PodSecurity", "Priority", "ResourceQuota", "RuntimeClass", "ServiceAccount", "StorageObjectInUseProtection", "TaintNodesByCondition", "ValidatingAdmissionPolicy", "ValidatingAdmissionWebhook"].
cidr_pods string or null The CIDR block of the Kubernetes pods' network.
cidr_service string or null The CIDR block of the Kubernetes services' network.
cluster_dns string or null The IP address of the cluster's DNS service.
tags object The key/value combinations of the tags associated with the cluster, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
auto_maintenances AutoMaintenances The configuration of the automated maintenance windows.
minor_upgrade_maintenance MaintenanceWindow The maintenance window configuration for minor Kubernetes upgrades.
enabled boolean If true, a maintenance window is enabled.
Default: true.
duration_hours integer The duration of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun | string. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
patch_upgrade_maintenance MaintenanceWindow The maintenance window configuration for patch Kubernetes upgrades.
enabled boolean If true, a maintenance window is enabled.
Default: true.
duration_hours integer The duration of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun | string. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
control_planes string The control plane sizing of the cluster.
admin_whitelist [string] The list of CIDR blocks or IP addresses allowed to access the cluster via the Kubernetes API.
statuses Statuses The status information of the cluster.
created_at string (date-time) The timestamp when the cluster was created.
deleted_at string (date-time) or null The timestamp when the cluster was deleted (if applicable).
updated_at string (date-time) or null The timestamp when the cluster was last updated.
status string or null The status of the cluster.
available_upgrade string Any available version of Kubernetes for upgrade (if applicable). For more information, see GetKubernetesVersions.
Default: .
disable_api_termination boolean If true, cluster deletion through the API is disabled. If false, it is enabled.
Default: false.

Other responses:

GetKubenetesVersions

GET /clusters/limits/kubernetes_versions

Gets the available Kubernetes versions for cluster creation or upgrades.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X GET https://api.eu-west-2.oks.outscale.com/api/v2/clusters/limits/kubernetes_versions \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

GET /clusters/limits/kubernetes_versions HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Versions": [
    "string"
  ]
}

Response 200 (KubernetesVersionsResponse):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext
RequestId string The ID of the API request.
Versions [string] A list of available Kubernetes versions.

Other responses:

GetCPSubregions

GET /clusters/limits/cp_subregions

Gets the Subregions where you can deploy control planes for your clusters.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X GET https://api.eu-west-2.oks.outscale.com/api/v2/clusters/limits/cp_subregions \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

GET /clusters/limits/cp_subregions HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "CPSubregions": [
    "string"
  ]
}

Response 200 (CPSubregionsResponse):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext Information about the context of the response.
RequestId string The ID of the API request.
CPSubregions [string] The list of Subregions where you can deploy control planes for your clusters.

Other responses:

GetControlPlanePlans

GET /clusters/limits/control_plane_plans

Gets the control plane types that you can use to create your clusters.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X GET https://api.eu-west-2.oks.outscale.com/api/v2/clusters/limits/control_plane_plans \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

GET /clusters/limits/control_plane_plans HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "ControlPlanes": [
    "string"
  ]
}

Response 200 (ControlPlanesResponse):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext
RequestId string The ID of the API request.
ControlPlanes [string] The list of available control plane types.

Other responses:

Projects

CreateProject

POST /projects

Creates a new project.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X POST https://api.eu-west-2.oks.outscale.com/api/v2/projects \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY' \
  --data '{
    "name": "awesome-project",
    "description": "string",
    "cidr": "string",
    "region": "string",
    "tags": {
      "key": "value"
    },
    "quirks": ["string"],
    "disable_api_termination": false
  }'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

POST /projects HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY
Content-Type: application/json

{
  "name": "awesome-project",
  "description": "string",
  "cidr": "string",
  "region": "string",
  "tags": {
    "key": "value"
  },
  "quirks": [
    "string"
  ],
  "disable_api_termination": false
}

Body (ProjectInput):

Body Parameter Type Description
name (required) string A unique name for the project. Must start with a letter and contain only lowercase letters, numbers, or hyphens.
Length: 1 to 40 characters. Pattern: ^[a-z][a-z0-9-]*[a-z0-9]$.
description string A description for the project.
cidr (required) string The CIDR block to associate with the Net of the project.
region (required) string The Region on which the project is deployed.
tags object The key/value combinations of the tags associated with the resource, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
quirks [string] or null A list of special configurations or behaviors for the project.
disable_api_termination boolean If true, cluster deletion through the API is disabled. If false, it is enabled.
Default: false.

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Project": {
    "id": "string",
    "name": "string",
    "description": "string",
    "cidr": "string",
    "region": "string",
    "status": "string",
    "tags": {
      "property1": "string",
      "property2": "string"
    },
    "disable_api_termination": false,
    "created_at": "2019-08-24T14:15:22Z",
    "updated_at": "2019-08-24T14:15:22Z",
    "deleted_at": "2019-08-24T14:15:22Z"
  }
}

Response 200 (ProjectResponse):

Response Element Type Description
ResponseContext projects__project_schema__ResponseContext
RequestId string The ID of the API request.
Project Project
id string The ID of the project.
name string The name of the project.
description string or null A description for the project.
cidr string The CIDR block associated with the Net of the project.
region string The Region on which the project is deployed.
status string The status of the project.
tags object The key/value combinations of the tags associated with the resource, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
disable_api_termination boolean If true, cluster deletion through the API is disabled. If false, it is enabled.
Default: false.
created_at string (date-time) The timestamp when the project was created.
updated_at string (date-time) The timestamp when the project was last updated.
deleted_at string (date-time) or null The timestamp when the project was deleted (if applicable).

Other responses:

ListProjects

GET /projects

Lists one or more of your projects. The response can be filtered using the parameters.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X GET https://api.eu-west-2.oks.outscale.com/api/v2/projects?name=string&status=pending&cidr=10.50.0.0%2F16&deleted=true \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

GET /projects?name=string&status=pending&cidr=10.50.0.0%2F16&deleted=true HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY

Query:

Query Parameter Type Description
name string or null The name of the projects.
status string or null The status of the projects.
Possible values: pending | ready | deploying | updating | upgrading | failed | deleting.
cidr string or null The IP ranges for the projects, IN CIDR notation (for example, 192.0.2.0/16).
Default: 10.50.0.0/16.
deleted boolean or null If true, returns deleted projects.

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Projects": [
    {
      "id": "string",
      "name": "string",
      "description": "string",
      "cidr": "string",
      "region": "string",
      "status": "string",
      "tags": {
        "property1": "string",
        "property2": "string"
      },
      "disable_api_termination": false,
      "created_at": "2019-08-24T14:15:22Z",
      "updated_at": "2019-08-24T14:15:22Z",
      "deleted_at": "2019-08-24T14:15:22Z"
    }
  ]
}

Response 200 (ProjectResponseList):

Response Element Type Description
ResponseContext projects__project_schema__ResponseContext
RequestId string The ID of the API request.
Projects [Project] The list of retrieved projects.
item Project
id string The ID of the project.
name string The name of the project.
description string or null A description for the project.
cidr string The CIDR block associated with the Net of the project.
region string The Region on which the project is deployed.
status string The status of the project.
tags object The key/value combinations of the tags associated with the resource, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
disable_api_termination boolean If true, cluster deletion through the API is disabled. If false, it is enabled.
Default: false.
created_at string (date-time) The timestamp when the project was created.
updated_at string (date-time) The timestamp when the project was last updated.
deleted_at string (date-time) or null The timestamp when the project was deleted (if applicable).

Other responses:

GetProject

GET /projects/{project_id}

Gets information about a specific project.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X GET https://api.eu-west-2.oks.outscale.com/api/v2/projects/{project_id} \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

GET /projects/{project_id} HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY

Path:

Path Parameter Type Description
project_id (required) string The ID of the project.

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Project": {
    "id": "string",
    "name": "string",
    "description": "string",
    "cidr": "string",
    "region": "string",
    "status": "string",
    "tags": {
      "property1": "string",
      "property2": "string"
    },
    "disable_api_termination": false,
    "created_at": "2019-08-24T14:15:22Z",
    "updated_at": "2019-08-24T14:15:22Z",
    "deleted_at": "2019-08-24T14:15:22Z"
  }
}

Response 200 (ProjectResponse):

Response Element Type Description
ResponseContext projects__project_schema__ResponseContext
RequestId string The ID of the API request.
Project Project
id string The ID of the project.
name string The name of the project.
description string or null A description for the project.
cidr string The CIDR block associated with the Net of the project.
region string The Region on which the project is deployed.
status string The status of the project.
tags object The key/value combinations of the tags associated with the resource, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
disable_api_termination boolean If true, cluster deletion through the API is disabled. If false, it is enabled.
Default: false.
created_at string (date-time) The timestamp when the project was created.
updated_at string (date-time) The timestamp when the project was last updated.
deleted_at string (date-time) or null The timestamp when the project was deleted (if applicable).

Other responses:

UpdateProject

PATCH /projects/{project_id}

Updates the details of an existing project.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X PATCH https://api.eu-west-2.oks.outscale.com/api/v2/projects/{project_id} \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY' \
  --data '{
    "description": "string",
    "tags": {
      "key": "value"
    },
    "quirks": ["string"],
    "disable_api_termination": true
  }'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

PATCH /projects/{project_id} HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY
Content-Type: application/json

{
  "description": "string",
  "tags": {
    "key": "value"
  },
  "quirks": [
    "string"
  ],
  "disable_api_termination": true
}

Path:

Path Parameter Type Description
project_id (required) string The ID of the project.

Body (ProjectUpdate):

Body Parameter Type Description
description string or null The updated description for the project.
tags object or null The updated key/value combinations of the tags associated with the project’s metadata, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
quirks [string] or null The updated list of special configurations or behaviors for the project.
disable_api_termination boolean or null If true, cluster deletion through the API is disabled. If false, it is enabled.

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Project": {
    "id": "string",
    "name": "string",
    "description": "string",
    "cidr": "string",
    "region": "string",
    "status": "string",
    "tags": {
      "property1": "string",
      "property2": "string"
    },
    "disable_api_termination": false,
    "created_at": "2019-08-24T14:15:22Z",
    "updated_at": "2019-08-24T14:15:22Z",
    "deleted_at": "2019-08-24T14:15:22Z"
  }
}

Response 200 (ProjectResponse):

Response Element Type Description
ResponseContext projects__project_schema__ResponseContext
RequestId string The ID of the API request.
Project Project
id string The ID of the project.
name string The name of the project.
description string or null A description for the project.
cidr string The CIDR block associated with the Net of the project.
region string The Region on which the project is deployed.
status string The status of the project.
tags object The key/value combinations of the tags associated with the resource, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
disable_api_termination boolean If true, cluster deletion through the API is disabled. If false, it is enabled.
Default: false.
created_at string (date-time) The timestamp when the project was created.
updated_at string (date-time) The timestamp when the project was last updated.
deleted_at string (date-time) or null The timestamp when the project was deleted (if applicable).

Other responses:

DeleteProject

DELETE /projects/{project_id}

Deletes a specific project.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X DELETE https://api.eu-west-2.oks.outscale.com/api/v2/projects/{project_id} \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

DELETE /projects/{project_id} HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY

Path:

Path Parameter Type Description
project_id (required) string The ID of the project.

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "detail": "string"
}

Response 200 (DetailResponse):

Response Element Type Description
ResponseContext projects__project_schema__ResponseContext
RequestId string The ID of the API request.
detail string A detailed message related to the API response.

Other responses:

GetProjectQuotas

GET /projects/{project_id}/quotas

Gets the quota details for a specific project.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X GET https://api.eu-west-2.oks.outscale.com/api/v2/projects/{project_id}/quotas \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

GET /projects/{project_id}/quotas HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY

Path:

Path Parameter Type Description
project_id (required) string The ID of the project.

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Project": {
    "request_id": "string",
    "data": {
      "quotas": [
        {
          "ShortDescription": "string",
          "QuotaCollection": "string",
          "AccountId": "string",
          "Description": "string",
          "MaxValue": 0,
          "UsedValue": 0,
          "Name": "string"
        }
      ]
    }
  }
}

Response 200 (QuotasResponse):

Response Element Type Description
ResponseContext projects__project_schema__ResponseContext
RequestId string The ID of the API request.
Project projects__project_schema__RPCResponse The quota details associated with the project.
request_id string The ID of the API request.
data QuotasData The quota information related to the request.
quotas [Quotas] A list of quota details.
item Quotas
ShortDescription string A brief summary of the quota.
QuotaCollection string A category or group to which the quota belongs to.
AccountId string The ID of the account.
Description string A detailed description of the quota.
MaxValue integer The maximum allowed value for the quota.
UsedValue integer The current usage value for the quota.
Name string The name of the quota.

Other responses:

Templates

GetProjectTemplate

GET /templates/project

Gets the default project template, including the predefined network configurations, Region, and metadata.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X GET https://api.eu-west-2.oks.outscale.com/api/v2/templates/project \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

GET /templates/project HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Template": {
    "name": "awesome-project",
    "description": "string",
    "cidr": "string",
    "region": "string",
    "tags": {
      "key": "value"
    },
    "quirks": [
      "string"
    ],
    "disable_api_termination": false
  }
}

Response 200 (TemplateResponse_ProjectInput_):

Response Element Type Description
ResponseContext templates__template_schema__ResponseContext
RequestId string The ID of the API request.
Template ProjectInput The returned template resource.
name string A unique name for the project. Must start with a letter and contain only lowercase letters, numbers, or hyphens.
Length: 1 to 40 characters. Pattern: ^[a-z][a-z0-9-]*[a-z0-9]$.
description string A description for the project.
cidr string The CIDR block to associate with the Net of the project.
region string The Region on which the project is deployed.
tags object The key/value combinations of the tags associated with the resource, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
quirks [string] or null A list of special configurations or behaviors for the project.
disable_api_termination boolean If true, cluster deletion through the API is disabled. If false, it is enabled.
Default: false.

Other responses:

GetClusterTemplate

GET /templates/cluster

Gets the default cluster template, including the predefined control plane configurations, networking settings, and maintenance schedules.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X GET https://api.eu-west-2.oks.outscale.com/api/v2/templates/cluster \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

GET /templates/cluster HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Template": {
    "name": "awesome-cluster",
    "project_id": "string",
    "description": "string",
    "cp_subregions": [
      "2a"
    ],
    "version": "1.30",
    "admin_lbu": false,
    "admission_flags": {
      "disable_admission_plugins": [],
      "enable_admission_plugins": []
    },
    "cidr_pods": "10.91.0.0/16",
    "cidr_service": "10.92.0.0/16",
    "cluster_dns": "10.92.0.10",
    "tags": {
      "key": "value"
    },
    "auto_maintenances": {
      "minor_upgrade_maintenance": {
        "enabled": true,
        "duration_hours": 0,
        "start_hour": 12,
        "week_day": "Mon",
        "tz": "UTC"
      },
      "patch_upgrade_maintenance": {
        "enabled": true,
        "duration_hours": 0,
        "start_hour": 12,
        "week_day": "Mon",
        "tz": "UTC"
      }
    },
    "control_planes": "cp.3.masters.small",
    "admin_whitelist": [
      "string"
    ],
    "quirks": [
      "string"
    ],
    "disable_api_termination": false
  }
}

Response 200 (TemplateResponse_ClusterInput_):

Response Element Type Description
ResponseContext templates__template_schema__ResponseContext
RequestId string The ID of the API request.
Template ClusterInput-Output The returned template resource.
name string A unique cluster name per project. Must start with a letter and contain only lowercase letters, numbers, or hyphens.
Length: 1 to 40 characters. Pattern: ^[a-z][a-z0-9-]*[a-z0-9]$.
project_id string The ID of the project to which this cluster belongs to.
description string or null The description of the cluster.
cp_subregions [string] A list of Subregions where control plane components are deployed.
Default: ["2a"].
version string The Kubernetes version deployed for the cluster. For more information, see GetKubernetesVersions.
Default: 1.30.
admin_lbu boolean If true, the admin load balancer for cluster management is enabled.
Default: false.
admission_flags AdmissionFlagsInput The configuration for the Kubernetes admission controllers.
Default: {"disable_admission_plugins": [], "enable_admission_plugins": []}.
disable_admission_plugins [string] The list of Kubernetes admission plugins to disable.
Default: [].
enable_admission_plugins [string] The list of Kubernetes admission plugins to enable.
Default: [].
cidr_pods string The CIDR block of the Kubernetes pods' network.
cidr_service string The CIDR block of the Kubernetes pods' network.
cluster_dns string The IP address for the cluster DNS service.
tags object The key/value combinations of the tags associated with the cluster's metadata, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
auto_maintenances AutoMaintenances The configuration for the automated maintenance windows.
minor_upgrade_maintenance MaintenanceWindow The maintenance window configuration for minor Kubernetes upgrades.
enabled boolean If true, a maintenance window is enabled.
Default: true.
duration_hours integer The duration of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun | string. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
patch_upgrade_maintenance MaintenanceWindow The maintenance window configuration for patch Kubernetes upgrades.
enabled boolean If true, a maintenance window is enabled.
Default: true.
duration_hours integer The duration of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun | string. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
control_planes string The control plane type of the cluster.
Default: cp.3.masters.small.
admin_whitelist [string] The list of CIDR blocks or IP addresses allowed to access the cluster via the Kubernetes API.
quirks [string] or null A list of special configurations or behaviors for the cluster.
disable_api_termination boolean If true, cluster deletion through the API is disabled. If false, it is enabled.
Default: false.

Other responses:

GetNodepoolTemplate

GET /templates/nodepool

Gets the default node pool template, including the predefined configurations for node scaling, storage, and upgrade strategies.

Request Parameters

Examples

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

curl -X GET https://api.eu-west-2.oks.outscale.com/api/v2/templates/nodepool \
  --header 'AccessKey: XXXX' \
  --header 'SecretKey: YYYY'

# Example with access key/secret key authentication
# (See the "Authentication Schemes" section for other authentications)

GET /templates/nodepool HTTP/1.1
Host: https://api.eu-west-2.oks.outscale.com/api/v2
AccessKey: XXXX
SecretKey: YYYY

Response Elements

Examples

200 Response

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Template": {
    "apiVersion": "string",
    "kind": "string",
    "metadata": {
      "name": "string"
    },
    "spec": {
      "desiredNodes": "string",
      "nodeType": "string",
      "zones": [
        "string"
      ],
      "volumes": [
        {
          "device": "string",
          "type": "string",
          "size": 0,
          "dir": "string"
        }
      ],
      "upgradeStrategy": {
        "maxUnavailable": 0,
        "maxSurge": 0,
        "autoUpgradeEnabled": true,
        "autoUpgradeMaintenance": {
          "durationHours": 0,
          "startHour": 23,
          "weekDay": "Mon"
        }
      },
      "autoHealing": true
    }
  }
}

Response 200 (TemplateResponse_Nodepool_):

Response Element Type Description
ResponseContext templates__template_schema__ResponseContext
RequestId string The ID of the API request.
Template Nodepool The returned template resource.
apiVersion string The node pool API version in use.
kind string The resource type, always Nodepool for node pool resources.
metadata Metadata The metadata information for the node pool.
name string An ID for the node pool.
spec Spec The specification for the node pool configuration.
desiredNodes string The number of desired nodes in the node pool.
nodeType string The type of VM for the nodes.
zones [string] A list of Subregions where nodes should be deployed.
volumes [Volume] A list of volume configurations for the nodes.
item Volume
device string The device name for the volume.
type string The type of the volume (gp2, io1, standard).
size integer The size of the volume.
dir string The mount point directory path for the volume.
upgradeStrategy UpgradeStrategy The configuration for managing node pool upgrades.
maxUnavailable integer The maximum number of nodes that can be unavailable during an upgrade.
maxSurge integer The maximum number of extra nodes that can be created during an upgrade.
autoUpgradeEnabled boolean If true, automatic upgrades for the node pool are enabled.
autoUpgradeMaintenance AutoUpgradeMaintenance The configuration for the automated upgrade maintenance window.
durationHours integer The duration of the maintenance window, in hours.
startHour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included).
weekDay string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun.
autoHealing boolean If true, the automatic healing of failed nodes is enabled.

Other responses:

Schemas

AdmissionFlags

Property Type Description
disable_admission_plugins [string] The list of Kubernetes admission plugins that are disabled.
Default: [].
enable_admission_plugins [string] The list of Kubernetes admission plugins that are enabled.
Default: [].
applied_admission_plugins [string] The list of admission plugins that are currently applied to the cluster.
Default: ["CertificateApproval", "CertificateSigning", "CertificateSubjectRestriction", "ClusterTrustBundleAttest", "DefaultIngressClass", "DefaultStorageClass", "DefaultTolerationSeconds", "LimitRanger", "MutatingAdmissionWebhook", "NamespaceLifecycle", "PersistentVolumeClaimResize", "PodSecurity", "Priority", "ResourceQuota", "RuntimeClass", "ServiceAccount", "StorageObjectInUseProtection", "TaintNodesByCondition", "ValidatingAdmissionPolicy", "ValidatingAdmissionWebhook"].

Schema

{
  "disable_admission_plugins": [],
  "enable_admission_plugins": [],
  "applied_admission_plugins": [
    "CertificateApproval",
    "CertificateSigning",
    "CertificateSubjectRestriction",
    "ClusterTrustBundleAttest",
    "DefaultIngressClass",
    "DefaultStorageClass",
    "DefaultTolerationSeconds",
    "LimitRanger",
    "MutatingAdmissionWebhook",
    "NamespaceLifecycle",
    "PersistentVolumeClaimResize",
    "PodSecurity",
    "Priority",
    "ResourceQuota",
    "RuntimeClass",
    "ServiceAccount",
    "StorageObjectInUseProtection",
    "TaintNodesByCondition",
    "ValidatingAdmissionPolicy",
    "ValidatingAdmissionWebhook"
  ]
}

AdmissionFlagsInput

Property Type Description
disable_admission_plugins [string] The list of Kubernetes admission plugins to disable.
Default: [].
enable_admission_plugins [string] The list of Kubernetes admission plugins to enable.
Default: [].

Schema

{
  "disable_admission_plugins": [],
  "enable_admission_plugins": []
}

AutoMaintenances

Property Type Description
minor_upgrade_maintenance MaintenanceWindow The maintenance window configuration for minor Kubernetes upgrades.
patch_upgrade_maintenance MaintenanceWindow The maintenance window configuration for patch Kubernetes upgrades.

Schema

{
  "minor_upgrade_maintenance": {
    "enabled": true,
    "duration_hours": 0,
    "start_hour": 12,
    "week_day": "Mon",
    "tz": "UTC"
  },
  "patch_upgrade_maintenance": {
    "enabled": true,
    "duration_hours": 0,
    "start_hour": 12,
    "week_day": "Mon",
    "tz": "UTC"
  }
}

AutoUpgradeMaintenance

Property Type Description
durationHours integer The duration of the maintenance window, in hours.
startHour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included).
weekDay string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun.

Schema

{
  "durationHours": 0,
  "startHour": 23,
  "weekDay": "Mon"
}

CPSubregionsResponse

Property Type Description
ResponseContext clusters__cluster_schema__ResponseContext Information about the context of the response.
CPSubregions [string] The list of Subregions where you can deploy control planes for your clusters.

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "CPSubregions": [
    "string"
  ]
}

Cluster

Property Type Description
project_id string The ID of the project this cluster belongs to.
id string The Universally Unique Identifier (UUID) of the cluster.
name string A unique name for the cluster within the project.
description string or null An optional description of the cluster.
cp_subregions [string] The Subregions on which the control plane components are deployed.
version string The Kubernetes version deployed for the cluster. For more information, see GetKubernetesVersions.
cni string The Container Network Interface (CNI) used in the cluster.
admin_lbu boolean If true, load balancer administration is enabled for cluster management. If false, it is disabled.
admission_flags AdmissionFlags The configuration of the Kubernetes admission controllers.
Default: {"disable_admission_plugins": [], "enable_admission_plugins": [], "applied_admission_plugins": ["CertificateApproval", "CertificateSigning", "CertificateSubjectRestriction", "ClusterTrustBundleAttest", "DefaultIngressClass", "DefaultStorageClass", "DefaultTolerationSeconds", "LimitRanger", "MutatingAdmissionWebhook", "NamespaceLifecycle", "PersistentVolumeClaimResize", "PodSecurity", "Priority", "ResourceQuota", "RuntimeClass", "ServiceAccount", "StorageObjectInUseProtection", "TaintNodesByCondition", "ValidatingAdmissionPolicy", "ValidatingAdmissionWebhook"]}.
cidr_pods string or null The CIDR block of the Kubernetes pods' network.
cidr_service string or null The CIDR block of the Kubernetes services' network.
cluster_dns string or null The IP address of the cluster's DNS service.
tags object The key/value combinations of the tags associated with the cluster, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
auto_maintenances AutoMaintenances The configuration of the automated maintenance windows.
control_planes string The control plane sizing of the cluster.
admin_whitelist [string] The list of CIDR blocks or IP addresses allowed to access the cluster via the Kubernetes API.
statuses Statuses The status information of the cluster.
disable_api_termination boolean If true, cluster deletion through the API is disabled. If false, it is enabled.
Default: false.

Schema

{
  "project_id": "string",
  "id": "string",
  "name": "string",
  "description": "string",
  "cp_subregions": [
    "string"
  ],
  "version": "string",
  "cni": "string",
  "admin_lbu": true,
  "admission_flags": {
    "disable_admission_plugins": [],
    "enable_admission_plugins": [],
    "applied_admission_plugins": [
      "CertificateApproval",
      "CertificateSigning",
      "CertificateSubjectRestriction",
      "ClusterTrustBundleAttest",
      "DefaultIngressClass",
      "DefaultStorageClass",
      "DefaultTolerationSeconds",
      "LimitRanger",
      "MutatingAdmissionWebhook",
      "NamespaceLifecycle",
      "PersistentVolumeClaimResize",
      "PodSecurity",
      "Priority",
      "ResourceQuota",
      "RuntimeClass",
      "ServiceAccount",
      "StorageObjectInUseProtection",
      "TaintNodesByCondition",
      "ValidatingAdmissionPolicy",
      "ValidatingAdmissionWebhook"
    ]
  },
  "cidr_pods": "string",
  "cidr_service": "string",
  "cluster_dns": "string",
  "tags": {
    "key": "value"
  },
  "auto_maintenances": {
    "minor_upgrade_maintenance": {
      "enabled": true,
      "duration_hours": 0,
      "start_hour": 12,
      "week_day": "Mon",
      "tz": "UTC"
    },
    "patch_upgrade_maintenance": {
      "enabled": true,
      "duration_hours": 0,
      "start_hour": 12,
      "week_day": "Mon",
      "tz": "UTC"
    }
  },
  "control_planes": "string",
  "admin_whitelist": [
    "string"
  ],
  "statuses": {
    "created_at": "2019-08-24T14:15:22Z",
    "deleted_at": "2019-08-24T14:15:22Z",
    "updated_at": "2019-08-24T14:15:22Z",
    "status": "string",
    "available_upgrade": ""
  },
  "disable_api_termination": false
}

ClusterInput-Input

Property Type Description
name string A unique name for the cluster within the project.
Length: 1 to 40 characters. Pattern: ^[a-z][a-z0-9-]*[a-z0-9]$.
project_id string The ID of the project in which you want to create a cluster.
description string or null A description of the cluster.
cp_subregions [string] The list of Subregions where control plane components are deployed.
Default: ["2a"].
version string The Kubernetes version to be deployed for the cluster. For more information, see GetKubernetesVersions.
Default: 1.30.
admin_lbu boolean If true, load balancer administration is enabled for cluster management. If false, it is disabled.
Default: false.
admission_flags AdmissionFlagsInput The configuration for Kubernetes admission controllers.
Default: {"disable_admission_plugins": [], "enable_admission_plugins": []}.
cidr_pods string The CIDR block for Kubernetes pods' network.
cidr_service string The CIDR block for the Kubernetes services' network.
cluster_dns string The IP address for the cluster's DNS service.
tags object The key/value combinations of the tags associated with the cluster's metadata, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
auto_maintenances AutoMaintenances The configurations for automated maintenance windows.
control_planes string The size of control plane deployment for the cluster. For more information, see About OKS > Control Planes.
Default: cp.3.masters.small.
admin_whitelist [string] The list of CIDR blocks or IP addresses allowed to access the cluster via the Kubernetes API.
quirks [string] or null The list of special configurations or behaviors for the cluster.
disable_api_termination boolean If true, cluster deletion through the API is disabled. If false, it is enabled.
Default: false.

Schema

{
  "name": "awesome-cluster",
  "project_id": "string",
  "description": "string",
  "cp_subregions": [
    "2a"
  ],
  "version": "1.30",
  "admin_lbu": false,
  "admission_flags": {
    "disable_admission_plugins": [],
    "enable_admission_plugins": []
  },
  "cidr_pods": "10.91.0.0/16",
  "cidr_service": "10.92.0.0/16",
  "cluster_dns": "10.92.0.10",
  "tags": {
    "key": "value"
  },
  "auto_maintenances": {
    "minor_upgrade_maintenance": {
      "enabled": true,
      "duration_hours": 0,
      "start_hour": 12,
      "week_day": "Mon",
      "tz": "UTC"
    },
    "patch_upgrade_maintenance": {
      "enabled": true,
      "duration_hours": 0,
      "start_hour": 12,
      "week_day": "Mon",
      "tz": "UTC"
    }
  },
  "control_planes": "cp.3.masters.small",
  "admin_whitelist": [
    "string"
  ],
  "quirks": [
    "string"
  ],
  "disable_api_termination": false
}

ClusterInput-Output

Property Type Description
name string A unique cluster name per project. Must start with a letter and contain only lowercase letters, numbers, or hyphens.
Length: 1 to 40 characters. Pattern: ^[a-z][a-z0-9-]*[a-z0-9]$.
project_id string The ID of the project to which this cluster belongs to.
description string or null The description of the cluster.
cp_subregions [string] A list of Subregions where control plane components are deployed.
Default: ["2a"].
version string The Kubernetes version deployed for the cluster. For more information, see GetKubernetesVersions.
Default: 1.30.
admin_lbu boolean If true, the admin load balancer for cluster management is enabled.
Default: false.
admission_flags AdmissionFlagsInput The configuration for the Kubernetes admission controllers.
Default: {"disable_admission_plugins": [], "enable_admission_plugins": []}.
cidr_pods string The CIDR block of the Kubernetes pods' network.
cidr_service string The CIDR block of the Kubernetes pods' network.
cluster_dns string The IP address for the cluster DNS service.
tags object The key/value combinations of the tags associated with the cluster's metadata, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
auto_maintenances AutoMaintenances The configuration for the automated maintenance windows.
control_planes string The control plane type of the cluster.
Default: cp.3.masters.small.
admin_whitelist [string] The list of CIDR blocks or IP addresses allowed to access the cluster via the Kubernetes API.
quirks [string] or null A list of special configurations or behaviors for the cluster.
disable_api_termination boolean If true, cluster deletion through the API is disabled. If false, it is enabled.
Default: false.

Schema

{
  "name": "awesome-cluster",
  "project_id": "string",
  "description": "string",
  "cp_subregions": [
    "2a"
  ],
  "version": "1.30",
  "admin_lbu": false,
  "admission_flags": {
    "disable_admission_plugins": [],
    "enable_admission_plugins": []
  },
  "cidr_pods": "10.91.0.0/16",
  "cidr_service": "10.92.0.0/16",
  "cluster_dns": "10.92.0.10",
  "tags": {
    "key": "value"
  },
  "auto_maintenances": {
    "minor_upgrade_maintenance": {
      "enabled": true,
      "duration_hours": 0,
      "start_hour": 12,
      "week_day": "Mon",
      "tz": "UTC"
    },
    "patch_upgrade_maintenance": {
      "enabled": true,
      "duration_hours": 0,
      "start_hour": 12,
      "week_day": "Mon",
      "tz": "UTC"
    }
  },
  "control_planes": "cp.3.masters.small",
  "admin_whitelist": [
    "string"
  ],
  "quirks": [
    "string"
  ],
  "disable_api_termination": false
}

ClusterResponse

Property Type Description
ResponseContext clusters__cluster_schema__ResponseContext Information about the context of the response.
Cluster Cluster

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Cluster": {
    "project_id": "string",
    "id": "string",
    "name": "string",
    "description": "string",
    "cp_subregions": [
      "string"
    ],
    "version": "string",
    "cni": "string",
    "admin_lbu": true,
    "admission_flags": {
      "disable_admission_plugins": [],
      "enable_admission_plugins": [],
      "applied_admission_plugins": [
        "CertificateApproval",
        "CertificateSigning",
        "CertificateSubjectRestriction",
        "ClusterTrustBundleAttest",
        "DefaultIngressClass",
        "DefaultStorageClass",
        "DefaultTolerationSeconds",
        "LimitRanger",
        "MutatingAdmissionWebhook",
        "NamespaceLifecycle",
        "PersistentVolumeClaimResize",
        "PodSecurity",
        "Priority",
        "ResourceQuota",
        "RuntimeClass",
        "ServiceAccount",
        "StorageObjectInUseProtection",
        "TaintNodesByCondition",
        "ValidatingAdmissionPolicy",
        "ValidatingAdmissionWebhook"
      ]
    },
    "cidr_pods": "string",
    "cidr_service": "string",
    "cluster_dns": "string",
    "tags": {
      "key": "value"
    },
    "auto_maintenances": {
      "minor_upgrade_maintenance": {
        "enabled": true,
        "duration_hours": 0,
        "start_hour": 12,
        "week_day": "Mon",
        "tz": "UTC"
      },
      "patch_upgrade_maintenance": {
        "enabled": true,
        "duration_hours": 0,
        "start_hour": 12,
        "week_day": "Mon",
        "tz": "UTC"
      }
    },
    "control_planes": "string",
    "admin_whitelist": [
      "string"
    ],
    "statuses": {
      "created_at": "2019-08-24T14:15:22Z",
      "deleted_at": "2019-08-24T14:15:22Z",
      "updated_at": "2019-08-24T14:15:22Z",
      "status": "string",
      "available_upgrade": ""
    },
    "disable_api_termination": false
  }
}

ClusterResponseList

Property Type Description
ResponseContext clusters__cluster_schema__ResponseContext Information about the context of the response.
Clusters [Cluster]

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Clusters": [
    {
      "project_id": "string",
      "id": "string",
      "name": "string",
      "description": "string",
      "cp_subregions": [
        "string"
      ],
      "version": "string",
      "cni": "string",
      "admin_lbu": true,
      "admission_flags": {
        "disable_admission_plugins": [],
        "enable_admission_plugins": [],
        "applied_admission_plugins": [
          "CertificateApproval",
          "CertificateSigning",
          "CertificateSubjectRestriction",
          "ClusterTrustBundleAttest",
          "DefaultIngressClass",
          "DefaultStorageClass",
          "DefaultTolerationSeconds",
          "LimitRanger",
          "MutatingAdmissionWebhook",
          "NamespaceLifecycle",
          "PersistentVolumeClaimResize",
          "PodSecurity",
          "Priority",
          "ResourceQuota",
          "RuntimeClass",
          "ServiceAccount",
          "StorageObjectInUseProtection",
          "TaintNodesByCondition",
          "ValidatingAdmissionPolicy",
          "ValidatingAdmissionWebhook"
        ]
      },
      "cidr_pods": "string",
      "cidr_service": "string",
      "cluster_dns": "string",
      "tags": {
        "key": "value"
      },
      "auto_maintenances": {
        "minor_upgrade_maintenance": {
          "enabled": true,
          "duration_hours": 0,
          "start_hour": 12,
          "week_day": "Mon",
          "tz": "UTC"
        },
        "patch_upgrade_maintenance": {
          "enabled": true,
          "duration_hours": 0,
          "start_hour": 12,
          "week_day": "Mon",
          "tz": "UTC"
        }
      },
      "control_planes": "string",
      "admin_whitelist": [
        "string"
      ],
      "statuses": {
        "created_at": "2019-08-24T14:15:22Z",
        "deleted_at": "2019-08-24T14:15:22Z",
        "updated_at": "2019-08-24T14:15:22Z",
        "status": "string",
        "available_upgrade": ""
      },
      "disable_api_termination": false
    }
  ]
}

ClusterUpdate

Property Type Description
description string or null The updated description of the cluster.
admission_flags AdmissionFlagsInput The updated configuration for the Kubernetes admission controllers.
tags object or null The updated key/value combinations of the tags associated with the cluster's metadata, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
auto_maintenances AutoMaintenances The updated configuration for the automated maintenance windows.
admin_whitelist [string] or null The updated list of CIDR blocks or IP addresses allowed to access the cluster via the Kubernetes API.
quirks [string] or null The updated list of special configurations or behaviors for the cluster.
disable_api_termination boolean or null If true, cluster deletion through the API is disabled. If false, it is enabled.
version string or null The updated version of Kubernetes for the cluster. For more information, see GetKubernetesVersions.

Schema

{
  "description": "string",
  "admission_flags": {
    "disable_admission_plugins": [],
    "enable_admission_plugins": []
  },
  "tags": {
    "property1": "string",
    "property2": "string"
  },
  "auto_maintenances": {
    "minor_upgrade_maintenance": {
      "enabled": true,
      "duration_hours": 0,
      "start_hour": 12,
      "week_day": "Mon",
      "tz": "UTC"
    },
    "patch_upgrade_maintenance": {
      "enabled": true,
      "duration_hours": 0,
      "start_hour": 12,
      "week_day": "Mon",
      "tz": "UTC"
    }
  },
  "admin_whitelist": [
    "string"
  ],
  "quirks": [
    "string"
  ],
  "disable_api_termination": true,
  "version": "string"
}

ControlPlanesResponse

Property Type Description
ResponseContext clusters__cluster_schema__ResponseContext Information about the context of the response.
ControlPlanes [string] The list of available control plane types.

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "ControlPlanes": [
    "string"
  ]
}

DetailResponse

Property Type Description
ResponseContext projects__project_schema__ResponseContext Information about the context of the response.
detail string A detailed message related to the API response.

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "detail": "string"
}

HTTPValidationError

Property Type Description
detail [ValidationError]

Schema

{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}

KubeconfigData

Property Type Description
name string The name of the cluster.
kubeconfig string A file containing access configuration to the cluster.

Schema

{
  "name": "string",
  "kubeconfig": "string"
}

KubeconfigResponse

Property Type Description
ResponseContext clusters__cluster_schema__ResponseContext Information about the context of the response.
Cluster clusters__cluster_schema__RPCResponse

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Cluster": {
    "request_id": "string",
    "data": {
      "name": "string",
      "kubeconfig": "string"
    }
  }
}

KubernetesVersionsResponse

Property Type Description
ResponseContext clusters__cluster_schema__ResponseContext Information about the context of the response.
Versions [string] A list of available Kubernetes versions.

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Versions": [
    "string"
  ]
}

MaintenanceWindow

Property Type Description
enabled boolean If true, a maintenance window is enabled.
Default: true.
duration_hours integer The duration of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum: 0 (included). Maximum: 23 (included). Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun | string. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.

Schema

{
  "enabled": true,
  "duration_hours": 0,
  "start_hour": 12,
  "week_day": "Mon",
  "tz": "UTC"
}

Metadata

Property Type Description
name string An ID for the node pool.

Schema

{
  "name": "string"
}

Nodepool

Property Type Description
apiVersion string The node pool API version in use.
kind string The resource type, always Nodepool for node pool resources.
metadata Metadata The metadata information for the node pool.
spec Spec The specification for the node pool configuration.

Schema

{
  "apiVersion": "string",
  "kind": "string",
  "metadata": {
    "name": "string"
  },
  "spec": {
    "desiredNodes": "string",
    "nodeType": "string",
    "zones": [
      "string"
    ],
    "volumes": [
      {
        "device": "string",
        "type": "string",
        "size": 0,
        "dir": "string"
      }
    ],
    "upgradeStrategy": {
      "maxUnavailable": 0,
      "maxSurge": 0,
      "autoUpgradeEnabled": true,
      "autoUpgradeMaintenance": {
        "durationHours": 0,
        "startHour": 23,
        "weekDay": "Mon"
      }
    },
    "autoHealing": true
  }
}

Project

Property Type Description
id string The ID of the project.
name string The name of the project.
description string or null A description for the project.
cidr string The CIDR block associated with the Net of the project.
region string The Region on which the project is deployed.
status string The status of the project.
tags object The key/value combinations of the tags associated with the resource, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
disable_api_termination boolean If true, cluster deletion through the API is disabled. If false, it is enabled.
Default: false.
created_at string (date-time) The timestamp when the project was created.
updated_at string (date-time) The timestamp when the project was last updated.
deleted_at string (date-time) or null The timestamp when the project was deleted (if applicable).

Schema

{
  "id": "string",
  "name": "string",
  "description": "string",
  "cidr": "string",
  "region": "string",
  "status": "string",
  "tags": {
    "property1": "string",
    "property2": "string"
  },
  "disable_api_termination": false,
  "created_at": "2019-08-24T14:15:22Z",
  "updated_at": "2019-08-24T14:15:22Z",
  "deleted_at": "2019-08-24T14:15:22Z"
}

ProjectInput

Property Type Description
name string A unique name for the project. Must start with a letter and contain only lowercase letters, numbers, or hyphens.
Length: 1 to 40 characters. Pattern: ^[a-z][a-z0-9-]*[a-z0-9]$.
description string A description for the project.
cidr string The CIDR block to associate with the Net of the project.
region string The Region on which the project is deployed.
tags object The key/value combinations of the tags associated with the resource, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
quirks [string] or null A list of special configurations or behaviors for the project.
disable_api_termination boolean If true, cluster deletion through the API is disabled. If false, it is enabled.
Default: false.

Schema

{
  "name": "awesome-project",
  "description": "string",
  "cidr": "string",
  "region": "string",
  "tags": {
    "key": "value"
  },
  "quirks": [
    "string"
  ],
  "disable_api_termination": false
}

ProjectResponse

Property Type Description
ResponseContext projects__project_schema__ResponseContext Information about the context of the response.
Project Project

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Project": {
    "id": "string",
    "name": "string",
    "description": "string",
    "cidr": "string",
    "region": "string",
    "status": "string",
    "tags": {
      "property1": "string",
      "property2": "string"
    },
    "disable_api_termination": false,
    "created_at": "2019-08-24T14:15:22Z",
    "updated_at": "2019-08-24T14:15:22Z",
    "deleted_at": "2019-08-24T14:15:22Z"
  }
}

ProjectResponseList

Property Type Description
ResponseContext projects__project_schema__ResponseContext Information about the context of the response.
Projects [Project] The list of retrieved projects.

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Projects": [
    {
      "id": "string",
      "name": "string",
      "description": "string",
      "cidr": "string",
      "region": "string",
      "status": "string",
      "tags": {
        "property1": "string",
        "property2": "string"
      },
      "disable_api_termination": false,
      "created_at": "2019-08-24T14:15:22Z",
      "updated_at": "2019-08-24T14:15:22Z",
      "deleted_at": "2019-08-24T14:15:22Z"
    }
  ]
}

ProjectUpdate

Property Type Description
description string or null The updated description for the project.
tags object or null The updated key/value combinations of the tags associated with the project’s metadata, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
additional properties string Additional information about tags.
quirks [string] or null The updated list of special configurations or behaviors for the project.
disable_api_termination boolean or null If true, cluster deletion through the API is disabled. If false, it is enabled.

Schema

{
  "description": "string",
  "tags": {
    "key": "value"
  },
  "quirks": [
    "string"
  ],
  "disable_api_termination": true
}

Quotas

Property Type Description
ShortDescription string A brief summary of the quota.
QuotaCollection string A category or group to which the quota belongs to.
AccountId string The ID of the account.
Description string A detailed description of the quota.
MaxValue integer The maximum allowed value for the quota.
UsedValue integer The current usage value for the quota.
Name string The name of the quota.

Schema

{
  "ShortDescription": "string",
  "QuotaCollection": "string",
  "AccountId": "string",
  "Description": "string",
  "MaxValue": 0,
  "UsedValue": 0,
  "Name": "string"
}

QuotasData

Property Type Description
quotas [Quotas] A list of quota details.

Schema

{
  "quotas": [
    {
      "ShortDescription": "string",
      "QuotaCollection": "string",
      "AccountId": "string",
      "Description": "string",
      "MaxValue": 0,
      "UsedValue": 0,
      "Name": "string"
    }
  ]
}

QuotasResponse

Property Type Description
ResponseContext projects__project_schema__ResponseContext Information about the context of the response.
Project projects__project_schema__RPCResponse The quota details associated with the project.

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Project": {
    "request_id": "string",
    "data": {
      "quotas": [
        {
          "ShortDescription": "string",
          "QuotaCollection": "string",
          "AccountId": "string",
          "Description": "string",
          "MaxValue": 0,
          "UsedValue": 0,
          "Name": "string"
        }
      ]
    }
  }
}

Spec

Property Type Description
desiredNodes string The number of desired nodes in the node pool.
nodeType string The type of VM for the nodes.
zones [string] A list of Subregions where nodes should be deployed.
volumes [Volume] A list of volume configurations for the nodes.
upgradeStrategy UpgradeStrategy The configuration for managing node pool upgrades.
autoHealing boolean If true, the automatic healing of failed nodes is enabled.

Schema

{
  "desiredNodes": "string",
  "nodeType": "string",
  "zones": [
    "string"
  ],
  "volumes": [
    {
      "device": "string",
      "type": "string",
      "size": 0,
      "dir": "string"
    }
  ],
  "upgradeStrategy": {
    "maxUnavailable": 0,
    "maxSurge": 0,
    "autoUpgradeEnabled": true,
    "autoUpgradeMaintenance": {
      "durationHours": 0,
      "startHour": 23,
      "weekDay": "Mon"
    }
  },
  "autoHealing": true
}

Statuses

Property Type Description
created_at string (date-time) The timestamp when the cluster was created.
deleted_at string (date-time) or null The timestamp when the cluster was deleted (if applicable).
updated_at string (date-time) or null The timestamp when the cluster was last updated.
status string or null The status of the cluster.
available_upgrade string Any available version of Kubernetes for upgrade (if applicable). For more information, see GetKubernetesVersions.
Default: .

Schema

{
  "created_at": "2019-08-24T14:15:22Z",
  "deleted_at": "2019-08-24T14:15:22Z",
  "updated_at": "2019-08-24T14:15:22Z",
  "status": "string",
  "available_upgrade": ""
}

TemplateResponse_ClusterInput_

TemplateResponse[ClusterInput]

Property Type Description
ResponseContext templates__template_schema__ResponseContext Information about the context of the response.
Template ClusterInput-Output The returned template resource.

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Template": {
    "name": "awesome-cluster",
    "project_id": "string",
    "description": "string",
    "cp_subregions": [
      "2a"
    ],
    "version": "1.30",
    "admin_lbu": false,
    "admission_flags": {
      "disable_admission_plugins": [],
      "enable_admission_plugins": []
    },
    "cidr_pods": "10.91.0.0/16",
    "cidr_service": "10.92.0.0/16",
    "cluster_dns": "10.92.0.10",
    "tags": {
      "key": "value"
    },
    "auto_maintenances": {
      "minor_upgrade_maintenance": {
        "enabled": true,
        "duration_hours": 0,
        "start_hour": 12,
        "week_day": "Mon",
        "tz": "UTC"
      },
      "patch_upgrade_maintenance": {
        "enabled": true,
        "duration_hours": 0,
        "start_hour": 12,
        "week_day": "Mon",
        "tz": "UTC"
      }
    },
    "control_planes": "cp.3.masters.small",
    "admin_whitelist": [
      "string"
    ],
    "quirks": [
      "string"
    ],
    "disable_api_termination": false
  }
}

TemplateResponse_Nodepool_

TemplateResponse[Nodepool]

Property Type Description
ResponseContext templates__template_schema__ResponseContext Information about the context of the response.
Template Nodepool The returned template resource.

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Template": {
    "apiVersion": "string",
    "kind": "string",
    "metadata": {
      "name": "string"
    },
    "spec": {
      "desiredNodes": "string",
      "nodeType": "string",
      "zones": [
        "string"
      ],
      "volumes": [
        {
          "device": "string",
          "type": "string",
          "size": 0,
          "dir": "string"
        }
      ],
      "upgradeStrategy": {
        "maxUnavailable": 0,
        "maxSurge": 0,
        "autoUpgradeEnabled": true,
        "autoUpgradeMaintenance": {
          "durationHours": 0,
          "startHour": 23,
          "weekDay": "Mon"
        }
      },
      "autoHealing": true
    }
  }
}

TemplateResponse_ProjectInput_

TemplateResponse[ProjectInput]

Property Type Description
ResponseContext templates__template_schema__ResponseContext Information about the context of the response.
Template ProjectInput The returned template resource.

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Template": {
    "name": "awesome-project",
    "description": "string",
    "cidr": "string",
    "region": "string",
    "tags": {
      "key": "value"
    },
    "quirks": [
      "string"
    ],
    "disable_api_termination": false
  }
}

UpgradeStrategy

Property Type Description
maxUnavailable integer The maximum number of nodes that can be unavailable during an upgrade.
maxSurge integer The maximum number of extra nodes that can be created during an upgrade.
autoUpgradeEnabled boolean If true, automatic upgrades for the node pool are enabled.
autoUpgradeMaintenance AutoUpgradeMaintenance The configuration for the automated upgrade maintenance window.

Schema

{
  "maxUnavailable": 0,
  "maxSurge": 0,
  "autoUpgradeEnabled": true,
  "autoUpgradeMaintenance": {
    "durationHours": 0,
    "startHour": 23,
    "weekDay": "Mon"
  }
}

ValidationError

Property Type Description
loc [string or integer]
msg string
type string

Schema

{
  "loc": [
    "string"
  ],
  "msg": "string",
  "type": "string"
}

Volume

Property Type Description
device string The device name for the volume.
type string The type of the volume (gp2, io1, standard).
size integer The size of the volume.
dir string The mount point directory path for the volume.

Schema

{
  "device": "string",
  "type": "string",
  "size": 0,
  "dir": "string"
}

clusters__cluster_schema__RPCResponse

Property Type Description
request_id string The ID of the API request.
data KubeconfigData The kubeconfig data for the cluster.

Schema

{
  "request_id": "string",
  "data": {
    "name": "string",
    "kubeconfig": "string"
  }
}

clusters__cluster_schema__ResponseContext

Property Type Description
RequestId string The ID of the API request.

Schema

{
  "RequestId": "string"
}

projects__project_schema__RPCResponse

Property Type Description
request_id string The ID of the API request.
data QuotasData The quota information related to the request.

Schema

{
  "request_id": "string",
  "data": {
    "quotas": [
      {
        "ShortDescription": "string",
        "QuotaCollection": "string",
        "AccountId": "string",
        "Description": "string",
        "MaxValue": 0,
        "UsedValue": 0,
        "Name": "string"
      }
    ]
  }
}

projects__project_schema__ResponseContext

Property Type Description
RequestId string The ID of the API request.

Schema

{
  "RequestId": "string"
}

templates__template_schema__ResponseContext

Property Type Description
RequestId string The ID of the API request.

Schema

{
  "RequestId": "string"
}