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:

Endpoints

Base URL
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

Element Description
Authorization header A header in the form Basic XXXX, where XXXX is the Base64 encoding of the root user'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 header (optional) If multi-factor authentication (MFA) is set up on your account, a header with your OTP token.

Access Key/Secret Key

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

Access Token/Refresh Token

Element Description
AccessToken header In the case of JWT authentication, a header with an access token.
RefreshToken header 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.'$OSC_REGION'.oks.outscale.com/api/v2/clusters' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY \
  --header 'Content-Type: application/json' \
  --data '{
    "name": "awesome-cluster",
    "project_id": "string",
    "description": "",
    "cp_multi_az": false,
    "cp_subregions": [],
    "version": "string",
    "admin_lbu": false,
    "admission_flags": {},
    "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 /api/v2/clusters HTTP/1.1
Host: api.eu-west-2.oks.outscale.com
Content-Type: application/json
AccessKey: XXXX
SecretKey: YYYY

{
  "name": "awesome-cluster",
  "project_id": "string",
  "description": "",
  "cp_multi_az": false,
  "cp_subregions": [],
  "version": "string",
  "admin_lbu": false,
  "admission_flags": {},
  "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 object):

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]$.
Example: awesome-cluster.
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.
Default: .
cp_multi_az boolean If true, multi-Subregion deployment is enabled for the control plane. If false, it is disabled.
Default: false.
cp_subregions [string] The list of Subregions where control plane components are deployed.
Default: [].
version (required) string The Kubernetes version to be deployed for the cluster. For more information, see GetKubernetesVersions.
admin_lbu boolean If true, load balancer administration is enabled for cluster management. If false, it is disabled.
Default: false.
admission_flags AdmissionFlagsInput object The configuration for Kubernetes admission controllers.
Default: {}.
disable_admission_plugins [string] The list of Kubernetes admission plugins to disable.
enable_admission_plugins [string] The list of Kubernetes admission plugins to enable.
cidr_pods (required) string The CIDR block for Kubernetes pods' network.
Example: 10.91.0.0/16.
cidr_service (required) string The CIDR block for the Kubernetes services' network.
Example: 10.92.0.0/16.
cluster_dns string The IP for the cluster's DNS service.
Example: 10.92.0.10.
tags object,
or null
The key/value combinations of the tags associated with the cluster's metadata, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
Example: {"key": "value"}.
additional properties string
auto_maintenances AutoMaintenances object The configurations for automated maintenance windows.
minor_upgrade_maintenance (required) MaintenanceWindow object 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 value: 0. Maximum value: 23. Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum value: 0. Maximum value: 23. Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
patch_upgrade_maintenance (required) MaintenanceWindow object 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 value: 0. Maximum value: 23. Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum value: 0. Maximum value: 23. Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun. 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 IPs 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

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Cluster": {
    "project_id": "string",
    "id": "string",
    "name": "string",
    "description": "",
    "cp_multi_az": true,
    "cp_subregions": [
      "string"
    ],
    "version": "string",
    "expected_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",
    "expected_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
  }
}

200 response (ClusterResponse object):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
Cluster Cluster object Information about the 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 An optional description of the cluster.
Default: .
cp_multi_az boolean If true, multi-Subregion deployment is enabled for the control plane. If false, it is disabled.
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.
expected_version string,
or null
The version of Kubernetes that is expected to be deployed during maintenance.
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 object The configuration of the Kubernetes admission controllers.
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 The CIDR block of the Kubernetes pods' network.
cidr_service string The CIDR block of the Kubernetes services' network.
cluster_dns string The IP 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"}.
Example: {"key": "value"}.
additional properties string
auto_maintenances AutoMaintenances object The configuration of the automated maintenance windows.
minor_upgrade_maintenance MaintenanceWindow object 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 value: 0. Maximum value: 23. Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum value: 0. Maximum value: 23. Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
patch_upgrade_maintenance MaintenanceWindow object 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 value: 0. Maximum value: 23. Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum value: 0. Maximum value: 23. Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
control_planes string The control plane sizing of the cluster.
expected_control_planes string,
or null
The type of control plane size that is expected.
admin_whitelist [string] The list of CIDR blocks or IPs allowed to access the cluster via the Kubernetes API.
statuses Statuses object 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:

  • 400 response (ErrorResponse object): The HTTP 400 response (Bad Request).
  • 403 response (ErrorResponse object): The HTTP 403 response (Forbidden).
  • 404 response (ErrorResponse object): The HTTP 404 response (Not Found).
  • 409 response (ErrorResponse object): The HTTP 409 response (Conflict).
  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).
  • 423 response (ErrorResponse object): The HTTP 423 response (Locked Resource).
  • 500 response (ErrorResponse object): The HTTP 500 response (Internal Server Error).
  • 501 response (ErrorResponse object): The HTTP 501 response (Not Implemented).
  • 503 response (ErrorResponse object): The HTTP 503 response (Service Unavailable).

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.'$OSC_REGION'.oks.outscale.com/api/v2/clusters?project_id=string&name=string&status=string&version=string&deleted=true' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY

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

GET /api/v2/clusters?project_id=string&name=string&status=string&version=string&deleted=true HTTP/1.1
Host: api.eu-west-2.oks.outscale.com
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

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Clusters": [
    {
      "project_id": "string",
      "id": "string",
      "name": "string",
      "description": "",
      "cp_multi_az": true,
      "cp_subregions": [
        "string"
      ],
      "version": "string",
      "expected_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",
      "expected_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
    }
  ]
}

200 response (ClusterResponseList object):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
Clusters [Cluster object] Information about the clusters.
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 An optional description of the cluster.
Default: .
cp_multi_az boolean If true, multi-Subregion deployment is enabled for the control plane. If false, it is disabled.
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.
expected_version string,
or null
The version of Kubernetes that is expected to be deployed during maintenance.
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 object The configuration of the Kubernetes admission controllers.
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 The CIDR block of the Kubernetes pods' network.
cidr_service string The CIDR block of the Kubernetes services' network.
cluster_dns string The IP 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"}.
Example: {"key": "value"}.
additional properties string
auto_maintenances AutoMaintenances object The configuration of the automated maintenance windows.
minor_upgrade_maintenance MaintenanceWindow object 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 value: 0. Maximum value: 23. Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum value: 0. Maximum value: 23. Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
patch_upgrade_maintenance MaintenanceWindow object 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 value: 0. Maximum value: 23. Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum value: 0. Maximum value: 23. Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
control_planes string The control plane sizing of the cluster.
expected_control_planes string,
or null
The type of control plane size that is expected.
admin_whitelist [string] The list of CIDR blocks or IPs allowed to access the cluster via the Kubernetes API.
statuses Statuses object 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:

  • 400 response (ErrorResponse object): The HTTP 400 response (Bad Request).
  • 404 response (ErrorResponse object): The HTTP 404 response (Not Found).
  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).
  • 500 response (ErrorResponse object): The HTTP 500 response (Internal Server Error).

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.'$OSC_REGION'.oks.outscale.com/api/v2/clusters/all?name=string&status=string&version=string&deleted=true' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY

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

GET /api/v2/clusters/all?name=string&status=string&version=string&deleted=true HTTP/1.1
Host: api.eu-west-2.oks.outscale.com
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

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Clusters": [
    {
      "project_id": "string",
      "id": "string",
      "name": "string",
      "description": "",
      "cp_multi_az": true,
      "cp_subregions": [
        "string"
      ],
      "version": "string",
      "expected_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",
      "expected_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
    }
  ]
}

200 response (ClusterResponseList object):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
Clusters [Cluster object] Information about the clusters.
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 An optional description of the cluster.
Default: .
cp_multi_az boolean If true, multi-Subregion deployment is enabled for the control plane. If false, it is disabled.
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.
expected_version string,
or null
The version of Kubernetes that is expected to be deployed during maintenance.
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 object The configuration of the Kubernetes admission controllers.
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 The CIDR block of the Kubernetes pods' network.
cidr_service string The CIDR block of the Kubernetes services' network.
cluster_dns string The IP 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"}.
Example: {"key": "value"}.
additional properties string
auto_maintenances AutoMaintenances object The configuration of the automated maintenance windows.
minor_upgrade_maintenance MaintenanceWindow object 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 value: 0. Maximum value: 23. Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum value: 0. Maximum value: 23. Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
patch_upgrade_maintenance MaintenanceWindow object 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 value: 0. Maximum value: 23. Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum value: 0. Maximum value: 23. Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
control_planes string The control plane sizing of the cluster.
expected_control_planes string,
or null
The type of control plane size that is expected.
admin_whitelist [string] The list of CIDR blocks or IPs allowed to access the cluster via the Kubernetes API.
statuses Statuses object 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:

  • 400 response (ErrorResponse object): The HTTP 400 response (Bad Request).
  • 404 response (ErrorResponse object): The HTTP 404 response (Not Found).
  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).
  • 500 response (ErrorResponse object): The HTTP 500 response (Internal Server Error).

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.'$OSC_REGION'.oks.outscale.com/api/v2/clusters/{cluster_id}' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY

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

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

Path:

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

Response Elements

Examples

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Cluster": {
    "project_id": "string",
    "id": "string",
    "name": "string",
    "description": "",
    "cp_multi_az": true,
    "cp_subregions": [
      "string"
    ],
    "version": "string",
    "expected_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",
    "expected_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
  }
}

200 response (ClusterResponse object):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
Cluster Cluster object Information about the 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 An optional description of the cluster.
Default: .
cp_multi_az boolean If true, multi-Subregion deployment is enabled for the control plane. If false, it is disabled.
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.
expected_version string,
or null
The version of Kubernetes that is expected to be deployed during maintenance.
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 object The configuration of the Kubernetes admission controllers.
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 The CIDR block of the Kubernetes pods' network.
cidr_service string The CIDR block of the Kubernetes services' network.
cluster_dns string The IP 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"}.
Example: {"key": "value"}.
additional properties string
auto_maintenances AutoMaintenances object The configuration of the automated maintenance windows.
minor_upgrade_maintenance MaintenanceWindow object 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 value: 0. Maximum value: 23. Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum value: 0. Maximum value: 23. Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
patch_upgrade_maintenance MaintenanceWindow object 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 value: 0. Maximum value: 23. Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum value: 0. Maximum value: 23. Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
control_planes string The control plane sizing of the cluster.
expected_control_planes string,
or null
The type of control plane size that is expected.
admin_whitelist [string] The list of CIDR blocks or IPs allowed to access the cluster via the Kubernetes API.
statuses Statuses object 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:

  • 400 response (ErrorResponse object): The HTTP 400 response (Bad Request).
  • 404 response (ErrorResponse object): The HTTP 404 response (Not Found).
  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).
  • 500 response (ErrorResponse object): The HTTP 500 response (Internal Server Error).

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.'$OSC_REGION'.oks.outscale.com/api/v2/clusters/{cluster_id}' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY \
  --header 'Content-Type: application/json' \
  --data '{
    "description": "string",
    "admission_flags": {
      "disable_admission_plugins": ["string"],
      "enable_admission_plugins": ["string"]
    },
    "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",
    "control_planes": "string"
  }'

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

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

{
  "description": "string",
  "admission_flags": {
    "disable_admission_plugins": ["string"],
    "enable_admission_plugins": ["string"]
  },
  "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",
  "control_planes": "string"
}

Path:

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

Body (ClusterUpdate object):

Body Parameter Type Description
description string,
or null
The updated description of the cluster.
admission_flags AdmissionFlagsInput object,
or null
The updated configuration for the Kubernetes admission controllers.
disable_admission_plugins [string] The list of Kubernetes admission plugins to disable.
enable_admission_plugins [string] The list of Kubernetes admission plugins to enable.
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
auto_maintenances AutoMaintenances object,
or null
The updated configuration for the automated maintenance windows.
minor_upgrade_maintenance (required) MaintenanceWindow object 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 value: 0. Maximum value: 23. Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum value: 0. Maximum value: 23. Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
patch_upgrade_maintenance (required) MaintenanceWindow object 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 value: 0. Maximum value: 23. Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum value: 0. Maximum value: 23. Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
admin_whitelist [string],
or null
The updated list of CIDR blocks or IPs 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.
control_planes string The size of the control plane deployment for the cluster.

Response Elements

Examples

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Cluster": {
    "project_id": "string",
    "id": "string",
    "name": "string",
    "description": "",
    "cp_multi_az": true,
    "cp_subregions": [
      "string"
    ],
    "version": "string",
    "expected_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",
    "expected_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
  }
}

200 response (ClusterResponse object):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
Cluster Cluster object Information about the 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 An optional description of the cluster.
Default: .
cp_multi_az boolean If true, multi-Subregion deployment is enabled for the control plane. If false, it is disabled.
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.
expected_version string,
or null
The version of Kubernetes that is expected to be deployed during maintenance.
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 object The configuration of the Kubernetes admission controllers.
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 The CIDR block of the Kubernetes pods' network.
cidr_service string The CIDR block of the Kubernetes services' network.
cluster_dns string The IP 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"}.
Example: {"key": "value"}.
additional properties string
auto_maintenances AutoMaintenances object The configuration of the automated maintenance windows.
minor_upgrade_maintenance MaintenanceWindow object 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 value: 0. Maximum value: 23. Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum value: 0. Maximum value: 23. Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
patch_upgrade_maintenance MaintenanceWindow object 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 value: 0. Maximum value: 23. Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum value: 0. Maximum value: 23. Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
control_planes string The control plane sizing of the cluster.
expected_control_planes string,
or null
The type of control plane size that is expected.
admin_whitelist [string] The list of CIDR blocks or IPs allowed to access the cluster via the Kubernetes API.
statuses Statuses object 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:

  • 400 response (ErrorResponse object): The HTTP 400 response (Bad Request).
  • 404 response (ErrorResponse object): The HTTP 404 response (Not Found).
  • 409 response (ErrorResponse object): The HTTP 409 response (Conflict).
  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).
  • 423 response (ErrorResponse object): The HTTP 423 response (Locked Resource).
  • 500 response (ErrorResponse object): The HTTP 500 response (Internal Server Error).
  • 503 response (ErrorResponse object): The HTTP 503 response (Service Unavailable).

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.'$OSC_REGION'.oks.outscale.com/api/v2/clusters/{cluster_id}' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY

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

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

Path:

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

Response Elements

Examples

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

200 response (DetailResponse object):

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

Other responses:

  • 403 response (ErrorResponse object): The HTTP 403 response (Forbidden).
  • 404 response (ErrorResponse object): The HTTP 404 response (Not Found).
  • 409 response (ErrorResponse object): The HTTP 409 response (Conflict).
  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).
  • 423 response (ErrorResponse object): The HTTP 423 response (Locked Resource).
  • 500 response (ErrorResponse object): The HTTP 500 response (Internal Server Error).
  • 503 response (ErrorResponse object): The HTTP 503 response (Service Unavailable).

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.'$OSC_REGION'.oks.outscale.com/api/v2/clusters/{cluster_id}/kubeconfig?user=string&group=string&ttl=string' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY

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

GET /api/v2/clusters/{cluster_id}/kubeconfig?user=string&group=string&ttl=string HTTP/1.1
Host: api.eu-west-2.oks.outscale.com
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

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

200 response (KubeconfigResponse object):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
Cluster clusters__cluster_schema__RPCResponse object The kubeconfig details associated with the cluster.
request_id string The ID of the API request.
data KubeconfigData object The kubeconfig data for the cluster.
kubeconfig string A file containing access configuration to the cluster.

Other responses:

  • 400 response (ErrorResponse object): The HTTP 400 response (Bad Request).
  • 404 response (ErrorResponse object): The HTTP 404 response (Not Found).
  • 408 response (ErrorResponse object): The HTTP 408 response (Timeout)
  • 409 response (ErrorResponse object): The HTTP 409 response (Conflict).
  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).
  • 500 response (ErrorResponse object): The HTTP 500 response (Internal Server Error).
  • 503 response (ErrorResponse object): The HTTP 503 response (Service Unavailable).

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.'$OSC_REGION'.oks.outscale.com/api/v2/clusters/{cluster_id}/kubeconfig?user=string&group=string&ttl=string' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY \
  --header 'x-encrypt-nacl: string'

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

POST /api/v2/clusters/{cluster_id}/kubeconfig?user=string&group=string&ttl=string HTTP/1.1
Host: api.eu-west-2.oks.outscale.com
x-encrypt-nacl: string
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.

Headers:

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

Response Elements

Examples

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

200 response (KubeconfigResponse object):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
Cluster clusters__cluster_schema__RPCResponse object The kubeconfig details associated with the cluster.
request_id string The ID of the API request.
data KubeconfigData object The kubeconfig data for the cluster.
kubeconfig string A file containing access configuration to the cluster.

Other responses:

  • 400 response (ErrorResponse object): The HTTP 400 response (Bad Request).
  • 404 response (ErrorResponse object): The HTTP 404 response (Not Found).
  • 408 response (ErrorResponse object): The HTTP 408 response (Timeout)
  • 409 response (ErrorResponse object): The HTTP 409 response (Conflict).
  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).
  • 500 response (ErrorResponse object): The HTTP 500 response (Internal Server Error).
  • 503 response (ErrorResponse object): The HTTP 503 response (Service Unavailable).

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.'$OSC_REGION'.oks.outscale.com/api/v2/clusters/{cluster_id}/upgrade' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY

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

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

Path:

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

Response Elements

Examples

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Cluster": {
    "project_id": "string",
    "id": "string",
    "name": "string",
    "description": "",
    "cp_multi_az": true,
    "cp_subregions": [
      "string"
    ],
    "version": "string",
    "expected_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",
    "expected_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
  }
}

200 response (ClusterResponse object):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
Cluster Cluster object Information about the 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 An optional description of the cluster.
Default: .
cp_multi_az boolean If true, multi-Subregion deployment is enabled for the control plane. If false, it is disabled.
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.
expected_version string,
or null
The version of Kubernetes that is expected to be deployed during maintenance.
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 object The configuration of the Kubernetes admission controllers.
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 The CIDR block of the Kubernetes pods' network.
cidr_service string The CIDR block of the Kubernetes services' network.
cluster_dns string The IP 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"}.
Example: {"key": "value"}.
additional properties string
auto_maintenances AutoMaintenances object The configuration of the automated maintenance windows.
minor_upgrade_maintenance MaintenanceWindow object 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 value: 0. Maximum value: 23. Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum value: 0. Maximum value: 23. Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
patch_upgrade_maintenance MaintenanceWindow object 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 value: 0. Maximum value: 23. Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum value: 0. Maximum value: 23. Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
control_planes string The control plane sizing of the cluster.
expected_control_planes string,
or null
The type of control plane size that is expected.
admin_whitelist [string] The list of CIDR blocks or IPs allowed to access the cluster via the Kubernetes API.
statuses Statuses object 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:

  • 404 response (ErrorResponse object): The HTTP 404 response (Not Found).
  • 409 response (ErrorResponse object): The HTTP 409 response (Conflict).
  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).
  • 423 response (ErrorResponse object): The HTTP 423 response (Locked Resource).
  • 500 response (ErrorResponse object): The HTTP 500 response (Internal Server Error).
  • 503 response (ErrorResponse object): The HTTP 503 response (Service Unavailable).

GetKubernetesVersions

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.'$OSC_REGION'.oks.outscale.com/api/v2/clusters/limits/kubernetes_versions' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY

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

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

Response Elements

Examples

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

200 response (KubernetesVersionsResponse object):

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

Other responses:

  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).

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.'$OSC_REGION'.oks.outscale.com/api/v2/clusters/limits/cp_subregions' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY

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

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

Response Elements

Examples

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

200 response (CPSubregionsResponse object):

Response Element Type Description
ResponseContext clusters__cluster_schema__ResponseContext object 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:

  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).

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.'$OSC_REGION'.oks.outscale.com/api/v2/clusters/limits/control_plane_plans' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY

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

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

Response Elements

Examples

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

200 response (ControlPlanesResponse object):

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

Other responses:

  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).

MyIp

GetClientIP

GET /myip

Gets the IP of the client making the request.

Request Parameters

Examples

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

curl -X GET 'https://api.'$OSC_REGION'.oks.outscale.com/api/v2/myip' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY \
  --header 'X-Real-IP: string'

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

GET /api/v2/myip HTTP/1.1
Host: api.eu-west-2.oks.outscale.com
X-Real-IP: string
AccessKey: XXXX
SecretKey: YYYY

Headers:

Header Parameter Type Description
X-Real-IP string,
or null
The IP of the client.

Response Elements

Examples

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "IP": {
    "x_real_ip": "string"
  }
}

200 response (IPResponse object):

Response Element Type Description
ResponseContext myip__myip_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
IP IPDetails object Details related to the IP.
x_real_ip string,
or null
The IP associated with the incoming request.

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.'$OSC_REGION'.oks.outscale.com/api/v2/projects' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY \
  --header 'Content-Type: application/json' \
  --data '{
    "name": "awesome-project",
    "description": "",
    "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 /api/v2/projects HTTP/1.1
Host: api.eu-west-2.oks.outscale.com
Content-Type: application/json
AccessKey: XXXX
SecretKey: YYYY

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

Body (ProjectInput object):

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]$.
Example: awesome-project.
description string A description for the project.
Default: .
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,
or null
The key/value combinations of the tags associated with the resource, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
Example: {"key": "value"}.
additional properties string
quirks [string],
or null
A list of special configurations or behaviors for the project.
disable_api_termination boolean If true, project deletion through the API is disabled. If false, it is enabled.
Default: false.

Response Elements

Examples

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Project": {
    "id": "string",
    "name": "string",
    "description": "",
    "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"
  }
}

200 response (ProjectResponse object):

Response Element Type Description
ResponseContext projects__project_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
Project Project object Information about the project.
id string The ID of the project.
name string The name of the project.
description string A description for the project.
Default: .
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 (pending | ready | updating | failed | deleting).
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
disable_api_termination boolean If true, project 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:

  • 403 response (ErrorResponse object): The HTTP 403 response (Forbidden).
  • 409 response (ErrorResponse object): The HTTP 409 response (Conflict).
  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).
  • 423 response (ErrorResponse object): The HTTP 423 response (Locked Resource).
  • 500 response (ErrorResponse object): The HTTP 500 response (Internal Server Error).
  • 503 response (ErrorResponse object): The HTTP 503 response (Service Unavailable).

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.'$OSC_REGION'.oks.outscale.com/api/v2/projects?name=string&status=string&cidr=string&deleted=true' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY

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

GET /api/v2/projects?name=string&status=string&cidr=string&deleted=true HTTP/1.1
Host: api.eu-west-2.oks.outscale.com
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 (pending | ready | updating | failed | deleting).
cidr string,
or null
The IP ranges for the projects, IN CIDR notation (for example, 192.0.2.0/16).
deleted boolean,
or null
If true, returns deleted projects.

Response Elements

Examples

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Projects": [
    {
      "id": "string",
      "name": "string",
      "description": "",
      "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"
    }
  ]
}

200 response (ProjectResponseList object):

Response Element Type Description
ResponseContext projects__project_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
Projects [Project object] The list of retrieved projects.
id string The ID of the project.
name string The name of the project.
description string A description for the project.
Default: .
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 (pending | ready | updating | failed | deleting).
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
disable_api_termination boolean If true, project 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:

  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).
  • 500 response (ErrorResponse object): The HTTP 500 response (Internal Server Error).

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.'$OSC_REGION'.oks.outscale.com/api/v2/projects/{project_id}' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY

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

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

Path:

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

Response Elements

Examples

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Project": {
    "id": "string",
    "name": "string",
    "description": "",
    "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"
  }
}

200 response (ProjectResponse object):

Response Element Type Description
ResponseContext projects__project_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
Project Project object Information about the project.
id string The ID of the project.
name string The name of the project.
description string A description for the project.
Default: .
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 (pending | ready | updating | failed | deleting).
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
disable_api_termination boolean If true, project 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:

  • 400 response (ErrorResponse object): The HTTP 400 response (Bad Request).
  • 404 response (ErrorResponse object): The HTTP 404 response (Not Found).
  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).
  • 500 response (ErrorResponse object): The HTTP 500 response (Internal Server Error).

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.'$OSC_REGION'.oks.outscale.com/api/v2/projects/{project_id}' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY \
  --header 'Content-Type: application/json' \
  --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 /api/v2/projects/{project_id} HTTP/1.1
Host: api.eu-west-2.oks.outscale.com
Content-Type: application/json
AccessKey: XXXX
SecretKey: YYYY

{
  "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 object):

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"}.
Example: {"key": "value"}.
additional properties string
quirks [string],
or null
The updated list of special configurations or behaviors for the project.
disable_api_termination boolean,
or null
If true, project deletion through the API is disabled. If false, it is enabled.

Response Elements

Examples

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Project": {
    "id": "string",
    "name": "string",
    "description": "",
    "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"
  }
}

200 response (ProjectResponse object):

Response Element Type Description
ResponseContext projects__project_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
Project Project object Information about the project.
id string The ID of the project.
name string The name of the project.
description string A description for the project.
Default: .
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 (pending | ready | updating | failed | deleting).
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
disable_api_termination boolean If true, project 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:

  • 404 response (ErrorResponse object): The HTTP 404 response (Not Found).
  • 409 response (ErrorResponse object): The HTTP 409 response (Conflict).
  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).
  • 423 response (ErrorResponse object): The HTTP 423 response (Locked Resource).
  • 500 response (ErrorResponse object): The HTTP 500 response (Internal Server Error).
  • 503 response (ErrorResponse object): The HTTP 503 response (Service Unavailable).

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.'$OSC_REGION'.oks.outscale.com/api/v2/projects/{project_id}' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY

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

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

Path:

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

Response Elements

Examples

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

200 response (DetailResponse object):

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

Other responses:

  • 403 response (ErrorResponse object): The HTTP 403 response (Forbidden).
  • 404 response (ErrorResponse object): The HTTP 404 response (Not Found).
  • 409 response (ErrorResponse object): The HTTP 409 response (Conflict).
  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).
  • 423 response (ErrorResponse object): The HTTP 423 response (Locked Resource).
  • 503 response (ErrorResponse object): The HTTP 503 response (Service Unavailable).

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.'$OSC_REGION'.oks.outscale.com/api/v2/projects/{project_id}/quotas' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY

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

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

Path:

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

Response Elements

Examples

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

200 response (projects__project_schema__QuotasResponse object):

Response Element Type Description
ResponseContext projects__project_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
Project projects__project_schema__RPCResponse object The quota details associated with the project.
request_id string The ID of the API request.
data QuotasData object The quota information related to the request.
quotas [Quotas object] A list of quota details.
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.
subregions [Subregion object] A list of Subregion details.
State string The state of the Subregion.
RegionName string The name of the Region containing the Subregion.
SubregionName string The name of the Subregion.
LocationCode string The location code (physical zone) of the Subregion.

Other responses:

  • 404 response (ErrorResponse object): The HTTP 404 response (Not Found).
  • 408 response (ErrorResponse object): The HTTP 408 response (Timeout)
  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).
  • 500 response (ErrorResponse object): The HTTP 500 response (Internal Server Error).

GetProjectSnapshots

GET /projects/{project_id}/snapshots

Retrieves the snapshot details for a specific project by its ID. Returns the snapshot information associated with the specified project.

Request Parameters

Examples

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

curl -X GET 'https://api.'$OSC_REGION'.oks.outscale.com/api/v2/projects/{project_id}/snapshots' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY

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

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

Path:

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

Response Elements

Examples

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Snapshots": [
    {
      "VolumeSize": 0,
      "AccountId": "string",
      "VolumeId": "string",
      "CreationDate": "string",
      "Progress": 0,
      "SnapshotId": "string",
      "State": "string",
      "Description": "string",
      "Tags": [
        {
          "Key": "string",
          "Value": "string"
        }
      ],
      "PermissionsToCreateVolume": {
        "GlobalPermission": 0,
        "AccountIds": [
          "string"
        ]
      }
    }
  ]
}

200 response (SnapshotsResponse object):

Response Element Type Description
ResponseContext projects__project_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
Snapshots [Snapshot object] Snapshot details associated with the project.
VolumeSize integer The size of the volume used to create the snapshot, in gibibytes (GiB).
AccountId string The account ID of the owner of the snapshot.
VolumeId string The ID of the volume used to create the snapshot.
CreationDate string The date and time (UTC) at which the snapshot was created.
Progress integer The progress of the snapshot, as a percentage.
SnapshotId string The ID of the snapshot.
State string The state of the snapshot (in-queue | pending | completed | error | deleting).
Description string The description of the snapshot.
Tags [ResourceTag object] One or more tags associated with the snapshot.
Key string The key for the tag.
Value string The value for the tag.
PermissionsToCreateVolume PermissionsOnResource object Permissions for the resource.
GlobalPermission integer A global permission for all accounts.
AccountIds [string] One or more account IDs that the permission is associated with.

Other responses:

  • 404 response (ErrorResponse object): The HTTP 404 response (Not Found).
  • 408 response (ErrorResponse object): The HTTP 408 response (Timeout)
  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).
  • 500 response (ErrorResponse object): The HTTP 500 response (Internal Server Error).

GetProjectPublicIps

GET /projects/{project_id}/public_ips

Retrieves the Public IP details for a specific project by its ID. Returns the public IP information associated with the specified project.

Request Parameters

Examples

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

curl -X GET 'https://api.'$OSC_REGION'.oks.outscale.com/api/v2/projects/{project_id}/public_ips' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY

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

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

Path:

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

Response Elements

Examples

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "PublicIps": [
    {
      "Tags": [
        {
          "Key": "string",
          "Value": "string"
        }
      ],
      "PublicIp": "string",
      "PublicIpId": "string"
    }
  ]
}

200 response (PublicIpsResponse object):

Response Element Type Description
ResponseContext projects__project_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
PublicIps [PublicIp object] The public IP details associated with the project.
Tags [ResourceTag object] One or more tags associated with the public IP.
Key string The key for the tag.
Value string The value for the tag.
PublicIp string The address of the public IP.
PublicIpId string The allocation ID of the public IP.

Other responses:

  • 404 response (ErrorResponse object): The HTTP 404 response (Not Found).
  • 408 response (ErrorResponse object): The HTTP 408 response (Timeout)
  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).
  • 500 response (ErrorResponse object): The HTTP 500 response (Internal Server Error).

GetProjectNets

GET /projects/{project_id}/nets

Retrieves the Net details for a specific project by its ID. Returns the Net information associated with the specified project.

Request Parameters

Examples

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

curl -X GET 'https://api.'$OSC_REGION'.oks.outscale.com/api/v2/projects/{project_id}/nets' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY

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

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

Path:

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

Response Elements

Examples

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Nets": [
    {
      "DhcpOptionsSetId": "string",
      "IpRange": "string",
      "NetId": "string",
      "State": "string",
      "Tenancy": "string"
    }
  ]
}

200 response (NetsResponse object):

Response Element Type Description
ResponseContext projects__project_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
Nets [Net object] Net details associated with the project.
DhcpOptionsSetId string The ID of the DHCP options set.
IpRange string The IP range for the Net, in CIDR notation (for example, 10.0.0.0/16)
NetId string The ID of the Net.
State string The state of the Net (pending | available | deleting).
Tenancy string The VM tenancy in the Net.

Other responses:

  • 404 response (ErrorResponse object): The HTTP 404 response (Not Found).
  • 408 response (ErrorResponse object): The HTTP 408 response (Timeout)
  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).
  • 500 response (ErrorResponse object): The HTTP 500 response (Internal Server Error).

Quotas

GetQuotas

GET /quotas

Get OKS Quotas.

Request Parameters

Examples

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

curl -X GET 'https://api.'$OSC_REGION'.oks.outscale.com/api/v2/quotas' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY

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

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

Response Elements

Examples

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Quotas": {
    "Projects": 0,
    "ClustersPerProject": 0,
    "KubeVersions": [
      "string"
    ],
    "CPSubregions": [
      "string"
    ]
  }
}

200 response (quotas__quota_schema__QuotasResponse object):

Response Element Type Description
ResponseContext quotas__quota_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
Quotas OKSQuotas object Information about your quotas.
Projects integer The maximum allowed number of projects.
ClustersPerProject integer The maximum allowed number of clusters per project.
KubeVersions [string] The list of available Kubernetes versions.
CPSubregions [string] The list of available Subregions.

Other responses:

  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).
  • 500 response (ErrorResponse object): The HTTP 500 response (Internal Server Error).

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.'$OSC_REGION'.oks.outscale.com/api/v2/templates/project' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY

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

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

Response Elements

Examples

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

200 response (TemplateResponse_ProjectInput_ object):

Response Element Type Description
ResponseContext templates__template_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
Template ProjectInput object 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]$.
Example: awesome-project.
description string A description for the project.
Default: .
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,
or null
The key/value combinations of the tags associated with the resource, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
Example: {"key": "value"}.
additional properties string
quirks [string],
or null
A list of special configurations or behaviors for the project.
disable_api_termination boolean If true, project deletion through the API is disabled. If false, it is enabled.
Default: false.

Other responses:

  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).

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.'$OSC_REGION'.oks.outscale.com/api/v2/templates/cluster' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY \
  --header 'X-Real-IP: string'

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

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

Headers:

Header Parameter Type Description
X-Real-IP string,
or null
A header with the IP of the client making the request.

Response Elements

Examples

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Template": {
    "project_id": "string",
    "description": "",
    "cp_multi_az": false,
    "cp_subregions": [],
    "version": "string",
    "admin_lbu": false,
    "admission_flags": {},
    "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
  }
}

200 response (TemplateResponse_ClusterInputTemplate_ object):

Response Element Type Description
ResponseContext templates__template_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
Template ClusterInputTemplate object The returned template resource.
project_id string The ID of the project to which this cluster belongs to.
description string,
or null
The description of the cluster.
Default: .
cp_multi_az boolean If true, multi-Subregion deployment is enabled for the control plane. If false, it is disabled.
Default: false.
cp_subregions [string] A list of Subregions where control plane components are deployed.
Default: [].
version string The Kubernetes version deployed for the cluster. For more information, see GetKubernetesVersions.
admin_lbu boolean If true, the admin load balancer for cluster management is enabled. If false, it is disabled.
Default: false.
admission_flags AdmissionFlagsInput object The configuration for the Kubernetes admission controllers.
Default: {}.
disable_admission_plugins [string] The list of Kubernetes admission plugins to disable.
enable_admission_plugins [string] The list of Kubernetes admission plugins to enable.
cidr_pods string The CIDR block of the Kubernetes pods' network.
Example: 10.91.0.0/16.
cidr_service string The CIDR block of the Kubernetes pods' network.
Example: 10.92.0.0/16.
cluster_dns string The IP for the cluster DNS service.
Example: 10.92.0.10.
tags object The key/value combinations of the tags associated with the cluster's metadata, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
Example: {"key": "value"}.
additional properties string
auto_maintenances AutoMaintenances object,
or null
The configuration for the automated maintenance windows.
minor_upgrade_maintenance MaintenanceWindow object 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 value: 0. Maximum value: 23. Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum value: 0. Maximum value: 23. Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun. Default: Tue.
tz string The timezone for the maintenance window.
Default: UTC.
patch_upgrade_maintenance MaintenanceWindow object 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 value: 0. Maximum value: 23. Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum value: 0. Maximum value: 23. Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun. 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 IPs 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:

  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).

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.'$OSC_REGION'.oks.outscale.com/api/v2/templates/nodepool' \
  --header 'AccessKey: '$OSC_ACCESS_KEY \
  --header 'SecretKey: '$OSC_SECRET_KEY

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

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

Response Elements

Examples

{
  "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
    }
  }
}

200 response (TemplateResponse_Nodepool_ object):

Response Element Type Description
ResponseContext templates__template_schema__ResponseContext object Information about the context of the response.
RequestId string The ID of the API request.
Template Nodepool object 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 object The metadata information for the node pool.
name string An ID for the node pool.
spec Spec object 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 object] A list of volume configurations for the nodes.
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 object 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 object 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 value: 0. Maximum value: 23.
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:

  • 422 response (ErrorResponse object): The HTTP 422 response (Unprocessable Content).

Schemas

AdmissionFlags

Information about the Kubernetes admission plugins configuration.

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

Information about the Kubernetes admission plugins.

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

Schema

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

AutoMaintenances

Information about the automated maintenance windows.

Property Type Description
minor_upgrade_maintenance MaintenanceWindow object The maintenance window configuration for minor Kubernetes upgrades.
patch_upgrade_maintenance MaintenanceWindow object 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

Information about the window of the automated upgrade maintenance.

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 value: 0. Maximum value: 23.
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 object 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

Information about the 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 An optional description of the cluster.
Default: .
cp_multi_az boolean If true, multi-Subregion deployment is enabled for the control plane. If false, it is disabled.
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.
expected_version string,
or null
The version of Kubernetes that is expected to be deployed during maintenance.
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 object The configuration of the Kubernetes admission controllers.
cidr_pods string The CIDR block of the Kubernetes pods' network.
cidr_service string The CIDR block of the Kubernetes services' network.
cluster_dns string The IP 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"}.
Example: {"key": "value"}.
additional properties string
auto_maintenances AutoMaintenances object The configuration of the automated maintenance windows.
control_planes string The control plane sizing of the cluster.
expected_control_planes string,
or null
The type of control plane size that is expected.
admin_whitelist [string] The list of CIDR blocks or IPs allowed to access the cluster via the Kubernetes API.
statuses Statuses object 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": "",
  "cp_multi_az": true,
  "cp_subregions": [
    "string"
  ],
  "version": "string",
  "expected_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",
  "expected_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

Information about the cluster configuration.

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]$.
Example: awesome-cluster.
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.
Default: .
cp_multi_az boolean If true, multi-Subregion deployment is enabled for the control plane. If false, it is disabled.
Default: false.
cp_subregions [string] The list of Subregions where control plane components are deployed.
Default: [].
version string The Kubernetes version to be deployed for the cluster. For more information, see GetKubernetesVersions.
admin_lbu boolean If true, load balancer administration is enabled for cluster management. If false, it is disabled.
Default: false.
admission_flags AdmissionFlagsInput object The configuration for Kubernetes admission controllers.
Default: {}.
cidr_pods string The CIDR block for Kubernetes pods' network.
Example: 10.91.0.0/16.
cidr_service string The CIDR block for the Kubernetes services' network.
Example: 10.92.0.0/16.
cluster_dns string The IP for the cluster's DNS service.
Example: 10.92.0.10.
tags object,
or null
The key/value combinations of the tags associated with the cluster's metadata, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
Example: {"key": "value"}.
additional properties string
auto_maintenances AutoMaintenances object 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 IPs 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": "",
  "cp_multi_az": false,
  "cp_subregions": [],
  "version": "string",
  "admin_lbu": false,
  "admission_flags": {},
  "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
}

ClusterInputTemplate

Information about the default cluster template.

Property Type Description
project_id string The ID of the project to which this cluster belongs to.
description string,
or null
The description of the cluster.
Default: .
cp_multi_az boolean If true, multi-Subregion deployment is enabled for the control plane. If false, it is disabled.
Default: false.
cp_subregions [string] A list of Subregions where control plane components are deployed.
Default: [].
version string The Kubernetes version deployed for the cluster. For more information, see GetKubernetesVersions.
admin_lbu boolean If true, the admin load balancer for cluster management is enabled. If false, it is disabled.
Default: false.
admission_flags AdmissionFlagsInput object The configuration for the Kubernetes admission controllers.
Default: {}.
cidr_pods string The CIDR block of the Kubernetes pods' network.
Example: 10.91.0.0/16.
cidr_service string The CIDR block of the Kubernetes pods' network.
Example: 10.92.0.0/16.
cluster_dns string The IP for the cluster DNS service.
Example: 10.92.0.10.
tags object The key/value combinations of the tags associated with the cluster's metadata, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
Example: {"key": "value"}.
additional properties string
auto_maintenances AutoMaintenances object,
or null
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 IPs 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

{
  "project_id": "string",
  "description": "",
  "cp_multi_az": false,
  "cp_subregions": [],
  "version": "string",
  "admin_lbu": false,
  "admission_flags": {},
  "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 object Information about the context of the response.
Cluster Cluster object Information about the cluster.

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Cluster": {
    "project_id": "string",
    "id": "string",
    "name": "string",
    "description": "",
    "cp_multi_az": true,
    "cp_subregions": [
      "string"
    ],
    "version": "string",
    "expected_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",
    "expected_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

Information about the clusters associated with a project.

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

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Clusters": [
    {
      "project_id": "string",
      "id": "string",
      "name": "string",
      "description": "",
      "cp_multi_az": true,
      "cp_subregions": [
        "string"
      ],
      "version": "string",
      "expected_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",
      "expected_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

Information about the updated cluster configuration.

Property Type Description
description string,
or null
The updated description of the cluster.
admission_flags AdmissionFlagsInput object,
or null
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
auto_maintenances AutoMaintenances object,
or null
The updated configuration for the automated maintenance windows.
admin_whitelist [string],
or null
The updated list of CIDR blocks or IPs 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.
control_planes string The size of the control plane deployment for the cluster.

Schema

{
  "description": "string",
  "admission_flags": {
    "disable_admission_plugins": [
      "string"
    ],
    "enable_admission_plugins": [
      "string"
    ]
  },
  "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",
  "control_planes": "string"
}

ControlPlanesResponse

Property Type Description
ResponseContext clusters__cluster_schema__ResponseContext object 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 object Information about the context of the response.
detail string A detailed message related to the API response.

Schema

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

ErrorItem

Information about the error.

Property Type Description
Type string The type of error.
Details string,
or [ValidationDetail object]
Details about the error.
Code string The error code.

Schema

{
  "Type": "string",
  "Details": "string",
  "Code": "string"
}

ErrorResponse

Property Type Description
Errors [ErrorItem object] A list of errors.
ResponseContext ResponseContext-Input object Information about the context of the response.

Schema

{
  "Errors": [
    {
      "Type": "string",
      "Details": "string",
      "Code": "string"
    }
  ],
  "ResponseContext": {
    "RequestId": "string"
  }
}

HTTPValidationError

Information about the HTTP 422 validation error.

Property Type Description
detail [ValidationError object] The details of the HTTP 422 validation error.

Schema

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

IPDetails

Details related to the IP.

Property Type Description
x_real_ip string,
or null
The IP associated with the incoming request.

Schema

{
  "x_real_ip": "string"
}

IPResponse

Property Type Description
ResponseContext myip__myip_schema__ResponseContext object Information about the context of the response.
IP IPDetails object Details related to the IP.

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "IP": {
    "x_real_ip": "string"
  }
}

KubeconfigData

Information about the kubeconfig for the cluster.

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

Schema

{
  "kubeconfig": "string"
}

KubeconfigResponse

Property Type Description
ResponseContext clusters__cluster_schema__ResponseContext object Information about the context of the response.
Cluster clusters__cluster_schema__RPCResponse object The kubeconfig details associated with the cluster.

Schema

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

KubernetesVersionsResponse

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

Schema

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

MaintenanceWindow

Information about the maintenance window configuration.

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 value: 0. Maximum value: 23. Default: 0.
start_hour integer The starting time of the maintenance window, in hours.
Minimum value: 0. Maximum value: 23. Default: 12.
week_day string The weekday on which the maintenance window begins.
Possible values: Mon | Tue | Wed | Thu | Fri | Sat | Sun. 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

Information about the node pool's metadata.

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

Schema

{
  "name": "string"
}

Net

Information about the Net.

Property Type Description
DhcpOptionsSetId string The ID of the DHCP options set.
IpRange string The IP range for the Net, in CIDR notation (for example, 10.0.0.0/16)
NetId string The ID of the Net.
State string The state of the Net (pending | available | deleting).
Tenancy string The VM tenancy in the Net.

Schema

{
  "DhcpOptionsSetId": "string",
  "IpRange": "string",
  "NetId": "string",
  "State": "string",
  "Tenancy": "string"
}

NetsResponse

Property Type Description
ResponseContext projects__project_schema__ResponseContext object Information about the context of the response.
Nets [Net object] Net details associated with the project.

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Nets": [
    {
      "DhcpOptionsSetId": "string",
      "IpRange": "string",
      "NetId": "string",
      "State": "string",
      "Tenancy": "string"
    }
  ]
}

Nodepool

Information about the node pool.

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 object The metadata information for the node pool.
spec Spec object 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
  }
}

OKSQuotas

Information about your quotas.

Property Type Description
Projects integer The maximum allowed number of projects.
ClustersPerProject integer The maximum allowed number of clusters per project.
KubeVersions [string] The list of available Kubernetes versions.
CPSubregions [string] The list of available Subregions.

Schema

{
  "Projects": 0,
  "ClustersPerProject": 0,
  "KubeVersions": [
    "string"
  ],
  "CPSubregions": [
    "string"
  ]
}

PermissionsOnResource

Information about the permissions for a resource.

Property Type Description
GlobalPermission integer A global permission for all accounts.
AccountIds [string] One or more account IDs that the permission is associated with.

Schema

{
  "GlobalPermission": 0,
  "AccountIds": [
    "string"
  ]
}

Project

Information about the project.

Property Type Description
id string The ID of the project.
name string The name of the project.
description string A description for the project.
Default: .
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 (pending | ready | updating | failed | deleting).
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
disable_api_termination boolean If true, project 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": "",
  "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

Information about the project configuration.

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]$.
Example: awesome-project.
description string A description for the project.
Default: .
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,
or null
The key/value combinations of the tags associated with the resource, in the following format: "tags":{"TAGKEY1":"TAGVALUE1","TAGKEY2":"TAGVALUE2"}.
Example: {"key": "value"}.
additional properties string
quirks [string],
or null
A list of special configurations or behaviors for the project.
disable_api_termination boolean If true, project deletion through the API is disabled. If false, it is enabled.
Default: false.

Schema

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

ProjectResponse

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

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Project": {
    "id": "string",
    "name": "string",
    "description": "",
    "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

Information about the retrieved projects.

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

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Projects": [
    {
      "id": "string",
      "name": "string",
      "description": "",
      "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

Information about the updated project configuration.

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"}.
Example: {"key": "value"}.
additional properties string
quirks [string],
or null
The updated list of special configurations or behaviors for the project.
disable_api_termination boolean,
or null
If true, project deletion through the API is disabled. If false, it is enabled.

Schema

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

PublicIp

Information about the public IP.

Property Type Description
Tags [ResourceTag object] One or more tags associated with the public IP.
PublicIp string The address of the public IP.
PublicIpId string The allocation ID of the public IP.

Schema

{
  "Tags": [
    {
      "Key": "string",
      "Value": "string"
    }
  ],
  "PublicIp": "string",
  "PublicIpId": "string"
}

PublicIpsResponse

Property Type Description
ResponseContext projects__project_schema__ResponseContext object Information about the context of the response.
PublicIps [PublicIp object] The public IP details associated with the project.

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "PublicIps": [
    {
      "Tags": [
        {
          "Key": "string",
          "Value": "string"
        }
      ],
      "PublicIp": "string",
      "PublicIpId": "string"
    }
  ]
}

Quotas

Information about the 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

Information about the quotas for a project.

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

Schema

{
  "quotas": [
    {
      "ShortDescription": "string",
      "QuotaCollection": "string",
      "AccountId": "string",
      "Description": "string",
      "MaxValue": 0,
      "UsedValue": 0,
      "Name": "string"
    }
  ],
  "subregions": [
    {
      "State": "string",
      "RegionName": "string",
      "SubregionName": "string",
      "LocationCode": "string"
    }
  ]
}

ResourceTag

Information about the tags associated with a resource.

Property Type Description
Key string The key for the tag.
Value string The value for the tag.

Schema

{
  "Key": "string",
  "Value": "string"
}

ResponseContext-Input

Information about the context of the response.

Property Type Description
RequestId string The ID of the request.

Schema

{
  "RequestId": "string"
}

Snapshot

Information about the Snapshot.

Property Type Description
VolumeSize integer The size of the volume used to create the snapshot, in gibibytes (GiB).
AccountId string The account ID of the owner of the snapshot.
VolumeId string The ID of the volume used to create the snapshot.
CreationDate string The date and time (UTC) at which the snapshot was created.
Progress integer The progress of the snapshot, as a percentage.
SnapshotId string The ID of the snapshot.
State string The state of the snapshot (in-queue | pending | completed | error | deleting).
Description string The description of the snapshot.
Tags [ResourceTag object] One or more tags associated with the snapshot.
PermissionsToCreateVolume PermissionsOnResource object Permissions for the resource.

Schema

{
  "VolumeSize": 0,
  "AccountId": "string",
  "VolumeId": "string",
  "CreationDate": "string",
  "Progress": 0,
  "SnapshotId": "string",
  "State": "string",
  "Description": "string",
  "Tags": [
    {
      "Key": "string",
      "Value": "string"
    }
  ],
  "PermissionsToCreateVolume": {
    "GlobalPermission": 0,
    "AccountIds": [
      "string"
    ]
  }
}

SnapshotsResponse

Property Type Description
ResponseContext projects__project_schema__ResponseContext object Information about the context of the response.
Snapshots [Snapshot object] Snapshot details associated with the project.

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Snapshots": [
    {
      "VolumeSize": 0,
      "AccountId": "string",
      "VolumeId": "string",
      "CreationDate": "string",
      "Progress": 0,
      "SnapshotId": "string",
      "State": "string",
      "Description": "string",
      "Tags": [
        {
          "Key": "string",
          "Value": "string"
        }
      ],
      "PermissionsToCreateVolume": {
        "GlobalPermission": 0,
        "AccountIds": [
          "string"
        ]
      }
    }
  ]
}

Spec

Information about the specification for the node pool configuration.

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 object] A list of volume configurations for the nodes.
upgradeStrategy UpgradeStrategy object 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

Information about the status of the cluster.

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": ""
}

Subregion

Information about the Subregion.

Property Type Description
State string The state of the Subregion.
RegionName string The name of the Region containing the Subregion.
SubregionName string The name of the Subregion.
LocationCode string The location code (physical zone) of the Subregion.

Schema

{
  "State": "string",
  "RegionName": "string",
  "SubregionName": "string",
  "LocationCode": "string"
}

TemplateResponse_ClusterInputTemplate_

Information about the default cluster template.

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

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Template": {
    "project_id": "string",
    "description": "",
    "cp_multi_az": false,
    "cp_subregions": [],
    "version": "string",
    "admin_lbu": false,
    "admission_flags": {},
    "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_

Information about the default node pool template.

Property Type Description
ResponseContext templates__template_schema__ResponseContext object Information about the context of the response.
Template Nodepool object 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_

Information about the default project template.

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

Schema

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

UpgradeStrategy

Information for the management of node pool upgrades.

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 object The configuration for the automated upgrade maintenance window.

Schema

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

ValidationDetail

Information about the validation error.

Property Type Description
loc array The location of the validation error in the request.
msg string A descriptive message about the error.
type string The identifier for the type of validation error.

Schema

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

ValidationError

Information about the validation error.

Property Type Description
loc array The location of the validation error in the request.
msg string A descriptive message about the error.
type string The identifier for the type of validation error.

Schema

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

Volume

Information about the volume configuration.

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 object The kubeconfig data for the cluster.

Schema

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

clusters__cluster_schema__ResponseContext

Information about the context of the response.

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

Schema

{
  "RequestId": "string"
}

myip__myip_schema__ResponseContext

Information about the context of the response.

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

Schema

{
  "RequestId": "string"
}

projects__project_schema__QuotasResponse

Property Type Description
ResponseContext projects__project_schema__ResponseContext object Information about the context of the response.
Project projects__project_schema__RPCResponse object 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"
        }
      ],
      "subregions": [
        {
          "State": "string",
          "RegionName": "string",
          "SubregionName": "string",
          "LocationCode": "string"
        }
      ]
    }
  }
}

projects__project_schema__RPCResponse

Property Type Description
request_id string The ID of the API request.
data QuotasData object 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"
      }
    ],
    "subregions": [
      {
        "State": "string",
        "RegionName": "string",
        "SubregionName": "string",
        "LocationCode": "string"
      }
    ]
  }
}

projects__project_schema__ResponseContext

Information about the context of the response.

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

Schema

{
  "RequestId": "string"
}

quotas__quota_schema__QuotasResponse

Property Type Description
ResponseContext quotas__quota_schema__ResponseContext object Information about the context of the response.
Quotas OKSQuotas object Information about your quotas.

Schema

{
  "ResponseContext": {
    "RequestId": "string"
  },
  "Quotas": {
    "Projects": 0,
    "ClustersPerProject": 0,
    "KubeVersions": [
      "string"
    ],
    "CPSubregions": [
      "string"
    ]
  }
}

quotas__quota_schema__ResponseContext

Information about the context of the response.

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

Schema

{
  "RequestId": "string"
}

templates__template_schema__ResponseContext

Information about the context of the response.

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

Schema

{
  "RequestId": "string"
}