Konnect Control Planes (2.0.0)

Download OpenAPI specification:Download

The API for Kong Konnect Control Planes.

Control Planes

List Control Planes

Returns an array of control plane objects containing information about the Konnect Control Planes.

Authorizations:
personalAccessTokensystemAccountAccessToken
query Parameters
page[size]
integer
Example: page[size]=10

The maximum number of items to include per page. The last page of a collection may include fewer items.

page[number]
integer
Example: page[number]=1

Determines which page of the entities to retrieve.

object (ControlPlaneFilterParameters)

Filters a collection of control-planes.

labels
string
Example: labels=key:value,existCheck

Filter control planes in the response by associated labels.

sort
string (SortQuery)
Example: sort=name,created_at desc

Sorts a collection of control-planes. Supported sort attributes are:

  • created_at

Responses

Response samples

Content type
application/json
{
  • "meta": {
    },
  • "data": [
    ]
}

Create Control Plane

Create a control plane in the Konnect Organization.

Authorizations:
personalAccessTokensystemAccountAccessToken
Request Body schema: application/json
name
required
string

The name of the control plane.

description
string

The description of the control plane in Konnect.

cluster_type
string
Enum: "CLUSTER_TYPE_CONTROL_PLANE" "CLUSTER_TYPE_K8S_INGRESS_CONTROLLER" "CLUSTER_TYPE_CONTROL_PLANE_GROUP" "CLUSTER_TYPE_SERVERLESS"

The ClusterType value of the cluster associated with the Control Plane.

auth_type
string
Enum: "pinned_client_certs" "pki_client_certs"

The auth type value of the cluster associated with the Runtime Group.

cloud_gateway
boolean

Whether this control-plane can be used for cloud-gateways.

Array of objects (ProxyURLs)

Array of proxy URLs associated with reaching the data-planes connected to a control-plane.

object (Labels)

Labels to facilitate tagged search on control planes. Keys must be of length 1-63 characters, and cannot start with 'kong', 'konnect', 'mesh', 'kic', or '_'.

Responses

Request samples

Content type
application/json
{
  • "name": "Test Control Plane",
  • "description": "A test control plane for exploration.",
  • "cluster_type": "CLUSTER_TYPE_K8S_INGRESS_CONTROLLER",
  • "cloud_gateway": false,
  • "proxy_urls": [
    ],
  • "labels": {
    }
}

Response samples

Content type
application/json
{
  • "id": "7f9fd312-a987-4628-b4c5-bb4f4fddd5f7",
  • "name": "Test Control Plane",
  • "description": "A test control plane for exploration.",
  • "labels": {
    },
  • "config": {},
  • "created_at": "2022-11-04T20:10:06.927Z",
  • "updated_at": "2022-11-04T20:10:06.927Z"
}

Fetch Control Plane

Returns information about an individual control plane.

Authorizations:
personalAccessTokensystemAccountAccessToken
path Parameters
id
required
string <uuid>
Example: d32d905a-ed33-46a3-a093-d8f536af9a8a

The control plane ID

Responses

Response samples

Content type
application/json
{
  • "id": "7f9fd312-a987-4628-b4c5-bb4f4fddd5f7",
  • "name": "Test Control Plane",
  • "description": "A test control plane for exploration.",
  • "labels": {
    },
  • "config": {},
  • "created_at": "2022-11-04T20:10:06.927Z",
  • "updated_at": "2022-11-04T20:10:06.927Z"
}

Update Control Plane

Update an individual control plane.

Authorizations:
personalAccessTokensystemAccountAccessToken
path Parameters
id
required
string <uuid>
Example: d32d905a-ed33-46a3-a093-d8f536af9a8a

The control plane ID

Request Body schema: application/json
name
string

The name of the control plane.

description
string

The description of the control plane in Konnect.

auth_type
string
Enum: "pinned_client_certs" "pki_client_certs"

The auth type value of the cluster associated with the Runtime Group.

Array of objects (ProxyURLs)

Array of proxy URLs associated with reaching the data-planes connected to a control-plane.

object (Labels)

Labels to facilitate tagged search on control planes. Keys must be of length 1-63 characters, and cannot start with 'kong', 'konnect', 'mesh', 'kic', or '_'.

Responses

Request samples

Content type
application/json
{
  • "name": "Test Control Plane",
  • "description": "A test control plane for exploration.",
  • "proxy_urls": [
    ],
  • "labels": {
    }
}

Response samples

Content type
application/json
{
  • "id": "7f9fd312-a987-4628-b4c5-bb4f4fddd5f7",
  • "name": "Test Control Plane",
  • "description": "A test control plane for exploration.",
  • "labels": {
    },
  • "config": {},
  • "created_at": "2022-11-04T20:10:06.927Z",
  • "updated_at": "2022-11-04T20:10:06.927Z"
}

Delete Control Plane

Delete an individual control plane.

Authorizations:
personalAccessTokensystemAccountAccessToken
path Parameters
id
required
string <uuid>
Example: d32d905a-ed33-46a3-a093-d8f536af9a8a

The control plane ID

Responses

Response samples

Content type
application/problem+json
Example
{
  • "status": 400,
  • "title": "Bad Request",
  • "detail": "Invalid request format",
  • "instance": "konnect:trace:3674017986744198214",
  • "invalid_parameters": [
    ]
}

Control Plane Groups

List Control Plane Group Memberships

Returns an array of control planes that are a member of this control plane group.

Authorizations:
personalAccessTokensystemAccountAccessToken
path Parameters
id
required
string

ID of a control plane group

query Parameters
page[size]
integer
Example: page[size]=10

The maximum number of items to include per page. The last page of a collection may include fewer items.

page[after]
string
Example: page[after]=ewogICJpZCI6ICJoZWxsbyB3b3JsZCIKfQ

Request the next page of data, starting with the item after this parameter.

Responses

Response samples

Content type
application/json
{
  • "meta": {
    },
  • "data": [
    ]
}

Upsert Control Plane Group Members

Adds one or more control planes as a member of a control plane group.

Authorizations:
personalAccessTokensystemAccountAccessToken
path Parameters
id
required
string

ID of a control plane group

Request Body schema: application/json

Request body for upserting a list of child control planes to a control plane group membership.

required
Array of objects

Responses

Request samples

Content type
application/json
{
  • "members": [
    ]
}

Response samples

Content type
application/problem+json
{
  • "status": 0,
  • "title": "string",
  • "type": "string",
  • "instance": "string",
  • "detail": "string",
  • "invalid_parameters": [
    ]
}

Add Control Plane Group Members

Adds one or more control planes as a member of a control plane group.

Authorizations:
personalAccessTokensystemAccountAccessToken
path Parameters
id
required
string

ID of a control plane group

Request Body schema: application/json

Request body for adding a list of child control planes to a control plane group membership.

required
Array of objects

Responses

Request samples

Content type
application/json
{
  • "members": [
    ]
}

Response samples

Content type
application/problem+json
{
  • "status": 0,
  • "title": "string",
  • "type": "string",
  • "instance": "string",
  • "detail": "string",
  • "invalid_parameters": [
    ]
}

Remove Control Plane Group Members

Removes one or more control planes from the members of a control plane group.

Authorizations:
personalAccessTokensystemAccountAccessToken
path Parameters
id
required
string

ID of a control plane group

Request Body schema: application/json

Request body for removing a list of child control planes from a control plane group membership.

required
Array of objects

Responses

Request samples

Content type
application/json
{
  • "members": [
    ]
}

Response samples

Content type
application/problem+json
{
  • "status": 0,
  • "title": "string",
  • "type": "string",
  • "instance": "string",
  • "detail": "string",
  • "invalid_parameters": [
    ]
}

Control Plane Group Member Status

Determines the group membership status of a control plane.

Authorizations:
personalAccessTokensystemAccountAccessToken
path Parameters
id
required
string

ID of a control plane

Responses

Response samples

Content type
application/json
{
  • "is_member": true
}

Get Control Plane Group Status

Returns the status of a control plane group, including existing conflicts.

Authorizations:
personalAccessTokensystemAccountAccessToken
path Parameters
id
required
string

ID of a control plane group

Responses

Response samples

Content type
application/json
Example
{
  • "item": {
    }
}

Control Plane Resource Quotas

List default resource quotas with organisational override

Returns a paginated collection of default resource quotas for control planes, along with organizationally-defined overrides for those resource quotas.

Authorizations:
personalAccessTokensystemAccountAccessToken

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

List all control plane resource quota overrides

Returns a list of control plane quota override values created by the user.

Authorizations:
personalAccessTokensystemAccountAccessToken

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Create a control plane resource quota

Creates a control plane resource quota scoped to a given resource, for an organization.

Authorizations:
personalAccessTokensystemAccountAccessToken
Request Body schema: application/json

Request body for creating the control plane override resource quota value.

name
string (ControlPlaneResourceQuotaName)

The human-readable name of this resource quota.

description
string (ControlPlaneResourceQuotaDescription)

A more verbose description of what this resource quota enforces.

resource
required
string (ControlPlaneResourceQuotaResourceName)

Identifier value of resources available for quota enforcement.

value
required
integer (ControlPlaneResourceQuotaValue) >= 1

The aggregate non-negative integer count of this resource that's allowed for the organization.

Responses

Request samples

Content type
application/json
{
  • "name": "consumer override",
  • "description": "Increase for consumer resource quota",
  • "resource": "count/control-plane.consumer",
  • "value": 40000
}

Response samples

Content type
application/json
{
  • "id": "7cdad5ef-1738-4781-8d71-9c5bbc99b187",
  • "name": "consumer override",
  • "description": "Increase for consumer resource quota",
  • "resource": "count/control-plane.consumer",
  • "value": 50000,
  • "created_at": "2022-11-04T20:10:06.927Z",
  • "updated_at": "2022-11-04T20:10:06.927Z"
}

Get a control plane resource quota value corresponding to the ID

Returns the control plane resource quota for the ID.

Authorizations:
personalAccessTokensystemAccountAccessToken
path Parameters
resourceQuotaId
required
string <uuid>
Example: 7f9fd312-a987-4628-b4c5-bb4f4fddd5f7

The UUID for the control plane resource quota.

Responses

Response samples

Content type
application/json
{
  • "id": "7cdad5ef-1738-4781-8d71-9c5bbc99b187",
  • "name": "consumer override",
  • "description": "Increase for consumer resource quota",
  • "resource": "count/control-plane.consumer",
  • "value": 50000,
  • "created_at": "2022-11-04T20:10:06.927Z",
  • "updated_at": "2022-11-04T20:10:06.927Z"
}

Update the control plane resource quota for the corresponding ID

Update the control plane resource quota for the corresponding ID.

Authorizations:
personalAccessTokensystemAccountAccessToken
path Parameters
resourceQuotaId
required
string <uuid>
Example: 7f9fd312-a987-4628-b4c5-bb4f4fddd5f7

The UUID for the control plane resource quota.

Request Body schema: application/json

Request body for updating the control plane override resource quota value.

value
required
integer (ControlPlaneResourceQuotaValue) >= 1

The aggregate non-negative integer count of this resource that's allowed for the organization.

Responses

Request samples

Content type
application/json
{
  • "value": 50000
}

Response samples

Content type
application/json
{
  • "id": "7cdad5ef-1738-4781-8d71-9c5bbc99b187",
  • "name": "consumer override",
  • "description": "Increase for consumer resource quota",
  • "resource": "count/control-plane.consumer",
  • "value": 50000,
  • "created_at": "2022-11-04T20:10:06.927Z",
  • "updated_at": "2022-11-04T20:10:06.927Z"
}

Delete the control plane resource quota

Deletes the created control plane resource quota which matches the ID provided.

Authorizations:
personalAccessTokensystemAccountAccessToken
path Parameters
resourceQuotaId
required
string <uuid>
Example: 7f9fd312-a987-4628-b4c5-bb4f4fddd5f7

The UUID for the control plane resource quota.

Responses

Response samples

Content type
application/problem+json
{
  • "status": 0,
  • "title": "string",
  • "type": "string",
  • "instance": "string",
  • "detail": "string",
  • "invalid_parameters": [
    ]
}