Skip to main content

API7 Cloud OpenAPI Specification (0.11.0)

Download OpenAPI specification:Download

The OpenAPI specification for API7 Cloud APIs. All APIs are built around Rest. They accept JSON-encoded request body (if necessary) and return JSON-encoded response. The actual API response payload is decorated with some metadata fields:

{
  "status": {
    "code": <ERROR CODE>,
    "message": "<ERROR MESSAGE>"
  },
  "error": "ERROR DETAILS",
  "payload": <SPECIFIC API RESPONSE>
}

The status and error fields indicate the error code and error message for this API call. payload field contains the specific API response and should be decoded according to the given schema.

Organizations

Create Organization

Authorizations:
token
Request Body schema: application/json
name
required
string [ 1 .. 32 ] characters \S+

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Get Organization Information

Authorizations:
token
path Parameters
id
required
string non-empty ^[1-9][0-9]*$

ID is the organization id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Delete Organization

Authorizations:
token
path Parameters
id
required
string non-empty ^[1-9][0-9]*$

ID is the organization id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Create a new subscription

Authorizations:
token
path Parameters
id
required
string non-empty ^[1-9][0-9]*$

ID is the organization id

Request Body schema: application/json
plan
required
string non-empty

Responses

Request samples

Content type
application/json
{
  • "plan": "string"
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {}
}

Get Upcoming Invoice

Authorizations:
token
path Parameters
id
required
string non-empty ^[1-9][0-9]*$

ID is the organization id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Redirect to stripe customer portal

Authorizations:
token
path Parameters
id
required
string non-empty ^[1-9][0-9]*$

ID is the organization id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Initialize Organization

Authorizations:
token
Request Body schema: application/json
name
required
string [ 1 .. 32 ] characters \S+

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

List Available Plugins

Authorizations:
token
path Parameters
id
required
string non-empty ^[1-9][0-9]*$

ID is the organization id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Clusters

List Clusters

Authorizations:
token
path Parameters
id
required
string non-empty ^[1-9][0-9]*$

ID is the organization id

query Parameters
order_by
string
Default: "updated_at"
Enum: "created_at" "updated_at"
direction
string
Default: "DESC"
Enum: "ASC" "DESC"

Direction should be ASC or DESC (case-insensitive). Default value is DESC.

page_size
integer <int64> >= 1
Default: 10

PageSize is the page size. Must greater than 0.

page
integer <int64> >= 1
Default: 1

Page is the page number, starting from 1.

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Create Cluster

Authorizations:
token
path Parameters
id
required
string non-empty ^[1-9][0-9]*$

ID is the organization id

Request Body schema: application/json
object

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Get Cluster Details

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Update Cluster

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

Request Body schema: application/json
object
object
object

Responses

Request samples

Content type
application/json
{
  • "client_settings": {
    },
  • "observability_settings": {
    },
  • "api_proxy_settings": {
    }
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Update Cluster Plugins

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

Request Body schema: application/json
(object or object)
object

LoggingPolicy is used to decide how to handle the access log of the gateway instance instances.

object or object or object or object or object

AuthenticationPlugin is the definition of the authentication plugin.

property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "acl": {
    },
  • "logging": {
    },
  • "authentication": {
    }
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Generate a client certificate for communicating with the cluster for the given cluster.

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

List Gateway Instances

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Get Gateway Instance Configuration Template

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

config_type
required
string
Enum: "apisix" "helm"

config_type is used to filter the config

  • apisix is the key of apisix startup config.
  • helm is the key of apisix helm chart values config.

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Get Cluster Metrics

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

metric_type
required
string
Enum: "api-requests" "api-failure-requests" "api-status-dist" "api-latency" "api-bandwidth" "api-connections" "api-qps"

metrics_type is used to filter the metrics

  • api-requests is the key of api requests metrics.
  • api-failure-requests is the key of failed api requests (status code >= 400) metrics.
  • api-status-dist is the key of api http status metrics.
  • api-latency is the key of api latency metrics.
  • api-bandwidth is the key of api bandwidth metrics.
  • api-connections is the key of api connections metrics.
  • api-qps is the key of api qps metrics.
query Parameters
start
required
string <date-time>
Example: start=2022-09-19T12:57:08.177Z

Start time of query time range, the date-time notation as defined by RFC 3339.

end
required
string <date-time>
Example: end=2022-09-19T12:57:08.177Z

End time of query time range, the date-time notation as defined by RFC 3339.

step
required
integer <int64>
Example: step=15

Query resolution step width in the number of seconds.

api_id
string^[1-9][0-9]*$

api_id is used to filter by specific the api id

app_id
string^[1-9][0-9]*$

app_id is used to filter by specific application id

instance_id
string^[A-Za-z0-9_-]*$

instance_id is used to filter by specific instance id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Load Plugin

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

Request Body schema: application/json
plugin_management_id
string

The id of the data.

name
required
string non-empty

The name of the plugin.

type
string

The category of the plugin.

object

The metadata of the plugin in Apache APISIX

Responses

Request samples

Content type
application/json
{
  • "plugin_management_id": "string",
  • "name": "string",
  • "type": "string",
  • "metadata": { }
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

List Loaded Plugins

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

query Parameters
order_by
string
Default: "updated_at"
Enum: "created_at" "updated_at"
direction
string
Default: "DESC"
Enum: "ASC" "DESC"

Direction should be ASC or DESC (case-insensitive). Default value is DESC.

page_size
integer <int64> >= 1
Default: 10

PageSize is the page size. Must greater than 0.

page
integer <int64> >= 1
Default: 1

Page is the page number, starting from 1.

search
string

search is used to filter the result

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Update Loaded Plugin

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

plugin_management_id
required
string non-empty

PluginManagementId is the plugin management id

Request Body schema: application/json
object

The metadata of the plugin in Apache APISIX

property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "metadata": { }
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Delete Loaded Plugin

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

plugin_management_id
required
string non-empty

PluginManagementId is the plugin management id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Get Plugin Reference

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

plugin_management_id
required
string non-empty

PluginManagementId is the plugin management id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Applications

List Applications

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

query Parameters
order_by
string
Enum: "created_at" "updated_at" "name" "path_prefix"
direction
string
Default: "DESC"
Enum: "ASC" "DESC"

Direction should be ASC or DESC (case-insensitive). Default value is DESC.

page_size
integer <int64> >= 1
Default: 10

PageSize is the page size. Must greater than 0.

page
integer <int64> >= 1
Default: 1

Page is the page number, starting from 1.

search
string

search is used to filter the result

labels
Array of strings [ 0 .. 32 ] items [ items [ 1 .. 32 ] characters ^[0-9a-zA-Z-_]+$ ]

Labels are used to filter the result

active
string
Default: "-1"
Enum: "-1" "0" "1"

Active is the status of the Application 0 stands for active 1 stands for inactive

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Create Application

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

Request Body schema: application/json
non-empty
description
string <= 256 characters
hosts
required
Array of strings non-empty unique
name
required
string [ 1 .. 64 ] characters
path_prefix
required
string [ 1 .. 4096 ] characters ^/

The listening path prefix for this application

object

Plugins contains a collect of polices like CORS.

protocol
string
Enum: "HTTP" "HTTPS"

The API Protocol definition

protocols
Array of strings [ 1 .. 2 ] items unique
Items Enum: "HTTP" "HTTPS"
required
Array of objects [ 1 .. 10 ] items unique

Upstream settings for the Application

default_upstream_version
string [ 0 .. 64 ] characters
Default: "default"
labels
Array of strings [ 0 .. 32 ] items unique [ items [ 1 .. 32 ] characters ^[0-9a-zA-Z-_]+$ ]

Labels are used for resources classification and indexing

active
integer
Default: 0
Enum: 0 1

Active is the status of the Application 0 stands for active 1 stands for inactive

Responses

Request samples

Content type
application/json
{
  • "description": "string",
  • "hosts": [
    ],
  • "name": "string",
  • "path_prefix": "string",
  • "plugins": {
    },
  • "protocol": "HTTP",
  • "protocols": [
    ],
  • "upstreams": [
    ],
  • "default_upstream_version": "default",
  • "labels": [
    ],
  • "active": 0
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Delete All Applications

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

query Parameters
cascade
boolean
Default: false

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Get Application Details

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

app_id
required
string^[1-9][0-9]*$

The id of the pet to retrieve

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Update Application

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

app_id
required
string^[1-9][0-9]*$

The id of the pet to retrieve

Request Body schema: application/json
non-empty
description
string <= 256 characters
hosts
required
Array of strings non-empty unique
name
required
string [ 1 .. 64 ] characters
path_prefix
required
string [ 1 .. 4096 ] characters ^/

The listening path prefix for this application

object

Plugins contains a collect of polices like CORS.

protocol
string
Enum: "HTTP" "HTTPS"

The API Protocol definition

protocols
Array of strings [ 1 .. 2 ] items unique
Items Enum: "HTTP" "HTTPS"
required
Array of objects [ 1 .. 10 ] items unique

Upstream settings for the Application

default_upstream_version
string [ 0 .. 64 ] characters
Default: "default"
labels
Array of strings [ 0 .. 32 ] items unique [ items [ 1 .. 32 ] characters ^[0-9a-zA-Z-_]+$ ]

Labels are used for resources classification and indexing

active
integer
Default: 0
Enum: 0 1

Active is the status of the Application 0 stands for active 1 stands for inactive

Responses

Request samples

Content type
application/json
{
  • "description": "string",
  • "hosts": [
    ],
  • "name": "string",
  • "path_prefix": "string",
  • "plugins": {
    },
  • "protocol": "HTTP",
  • "protocols": [
    ],
  • "upstreams": [
    ],
  • "default_upstream_version": "default",
  • "labels": [
    ],
  • "active": 0
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Patch Application

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

app_id
required
string^[1-9][0-9]*$

The id of the pet to retrieve

Request Body schema: application/json
non-empty
description
string <= 256 characters
hosts
Array of strings non-empty unique
name
string [ 1 .. 64 ] characters
path_prefix
string [ 1 .. 4096 ] characters ^/

The listening path prefix for this application

object

Plugins contains a collect of polices like CORS.

protocol
string
Enum: "HTTP" "HTTPS"

The API Protocol definition

protocols
Array of strings [ 1 .. 2 ] items unique
Items Enum: "HTTP" "HTTPS"
Array of objects [ 1 .. 10 ] items unique

Upstream settings for the Application

default_upstream_version
string [ 0 .. 64 ] characters
Default: "default"
labels
Array of strings [ 0 .. 32 ] items unique [ items [ 1 .. 32 ] characters ^[0-9a-zA-Z-_]+$ ]

Labels are used for resources classification and indexing

active
integer
Default: 0
Enum: 0 1

Active is the status of the Application 0 stands for active 1 stands for inactive

Responses

Request samples

Content type
application/json
{
  • "description": "string",
  • "hosts": [
    ],
  • "name": "string",
  • "path_prefix": "string",
  • "plugins": {
    },
  • "protocol": "HTTP",
  • "protocols": [
    ],
  • "upstreams": [
    ],
  • "default_upstream_version": "default",
  • "labels": [
    ],
  • "active": 0
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Delete Application

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

app_id
required
string^[1-9][0-9]*$

The id of the pet to retrieve

query Parameters
cascade
boolean
Default: false

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Create Application

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

Request Body schema: application/json
openapi
required
string

Responses

Request samples

Content type
application/json
{
  • "openapi": "string"
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

APIs

List APIs

Authorizations:
token
path Parameters
app_id
required
string^[1-9][0-9]*$

The id of the pet to retrieve

query Parameters
order_by
string
Default: "updated_at"
Enum: "created_at" "updated_at" "name"
direction
string
Default: "DESC"
Enum: "ASC" "DESC"

Direction should be ASC or DESC (case-insensitive). Default value is DESC.

page_size
integer <int64> >= 1
Default: 10

PageSize is the page size. Must greater than 0.

page
integer <int64> >= 1
Default: 1

Page is the page number, starting from 1.

search
string

search is used to filter the result

labels
Array of strings [ 0 .. 32 ] items [ items [ 1 .. 32 ] characters ^[0-9a-zA-Z-_]+$ ]

Labels are used to filter the result

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Create API

Authorizations:
token
path Parameters
app_id
required
string^[1-9][0-9]*$

The id of the pet to retrieve

Request Body schema: application/json
non-empty
active
integer <int64>
Enum: 0 1

Active is the status of the API 0 stands for active 1 stands for inactive

description
string <= 256 characters
Array of strings or Array of strings

Allowed HTTP methods to access this API, if absent, all HTTP methods are allowed

name
required
string [ 1 .. 64 ] characters
required
Array of objects [ 1 .. 64 ] items

Which URI paths can be matched to this API

object

Fine grained route control settings.

object

Plugins contains a collect of polices like CORS.

strip_path_prefix
boolean

Whether to strip the path prefix (defined in the Application)

labels
Array of strings [ 0 .. 32 ] items unique [ items [ 1 .. 32 ] characters ^[0-9a-zA-Z-_]+$ ]

Labels are used for resources classification and indexing

type
string
Default: "Rest"
Enum: "Rest" "WebSocket"

Type is the type of the API Rest means this is a Rest API. WebSocket means this is a WebSocket API.

Responses

Request samples

Content type
application/json
{
  • "active": 0,
  • "description": "string",
  • "methods": [
    ],
  • "name": "string",
  • "paths": [
    ],
  • "fine_grained_route_control": {
    },
  • "plugins": {
    },
  • "strip_path_prefix": true,
  • "labels": [
    ],
  • "type": "Rest"
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Delete All APIs

Authorizations:
token
path Parameters
app_id
required
string^[1-9][0-9]*$

The id of the pet to retrieve

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Get API Details

Authorizations:
token
path Parameters
app_id
required
string^[1-9][0-9]*$

The id of the pet to retrieve

api_id
required
string^[1-9][0-9]*$

APIID is the API id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Update API

Authorizations:
token
path Parameters
app_id
required
string^[1-9][0-9]*$

The id of the pet to retrieve

api_id
required
string^[1-9][0-9]*$

APIID is the API id

Request Body schema: application/json
non-empty
active
integer <int64>
Enum: 0 1

Active is the status of the API 0 stands for active 1 stands for inactive

description
string <= 256 characters
Array of strings or Array of strings

Allowed HTTP methods to access this API, if absent, all HTTP methods are allowed

name
required
string [ 1 .. 64 ] characters
required
Array of objects [ 1 .. 64 ] items

Which URI paths can be matched to this API

object

Fine grained route control settings.

object

Plugins contains a collect of polices like CORS.

strip_path_prefix
boolean

Whether to strip the path prefix (defined in the Application)

labels
Array of strings [ 0 .. 32 ] items unique [ items [ 1 .. 32 ] characters ^[0-9a-zA-Z-_]+$ ]

Labels are used for resources classification and indexing

type
string
Default: "Rest"
Enum: "Rest" "WebSocket"

Type is the type of the API Rest means this is a Rest API. WebSocket means this is a WebSocket API.

Responses

Request samples

Content type
application/json
{
  • "active": 0,
  • "description": "string",
  • "methods": [
    ],
  • "name": "string",
  • "paths": [
    ],
  • "fine_grained_route_control": {
    },
  • "plugins": {
    },
  • "strip_path_prefix": true,
  • "labels": [
    ],
  • "type": "Rest"
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Patch API

Authorizations:
token
path Parameters
app_id
required
string^[1-9][0-9]*$

The id of the pet to retrieve

api_id
required
string^[1-9][0-9]*$

APIID is the API id

Request Body schema: application/json
non-empty
active
integer <int64>
Enum: 0 1

Active is the status of the API 0 stands for active 1 stands for inactive

description
string <= 256 characters
Array of strings or Array of strings

Allowed HTTP methods to access this API, if absent, all HTTP methods are allowed

name
string [ 1 .. 64 ] characters
Array of objects [ 1 .. 64 ] items

Which URI paths can be matched to this API

object

Fine grained route control settings.

object

Plugins contains a collect of polices like CORS.

strip_path_prefix
boolean

Whether to strip the path prefix (defined in the Application)

labels
Array of strings [ 0 .. 32 ] items unique [ items [ 1 .. 32 ] characters ^[0-9a-zA-Z-_]+$ ]

Labels are used for resources classification and indexing

type
string
Default: "Rest"
Enum: "Rest" "WebSocket"

Type is the type of the API Rest means this is a Rest API. WebSocket means this is a WebSocket API.

Responses

Request samples

Content type
application/json
{
  • "active": 0,
  • "description": "string",
  • "methods": [
    ],
  • "name": "string",
  • "paths": [
    ],
  • "fine_grained_route_control": {
    },
  • "plugins": {
    },
  • "strip_path_prefix": true,
  • "labels": [
    ],
  • "type": "Rest"
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Delete API

Authorizations:
token
path Parameters
app_id
required
string^[1-9][0-9]*$

The id of the pet to retrieve

api_id
required
string^[1-9][0-9]*$

APIID is the API id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Search APIs in current cluster (also include their parent applications)

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

query Parameters
search
string

search is used to filter the result

order_by
string
Default: "updated_at"
Enum: "created_at" "updated_at" "name"
direction
string
Default: "DESC"
Enum: "ASC" "DESC"

Direction should be ASC or DESC (case-insensitive). Default value is DESC.

page_size
integer <int64> >= 1
Default: 10

PageSize is the page size. Must greater than 0.

page
integer <int64> >= 1
Default: 1

Page is the page number, starting from 1.

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Consumers

List Consumers

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

query Parameters
direction
string
Default: "DESC"
Enum: "ASC" "DESC"

Direction should be ASC or DESC (case-insensitive). Default value is DESC.

page_size
integer <int64> >= 1
Default: 10

PageSize is the page size. Must greater than 0.

page
integer <int64> >= 1
Default: 1

Page is the page number, starting from 1.

order_by
string
Default: "updated_at"
Enum: "created_at" "updated_at" "name"
search
string

search is used to filter the result

labels
Array of strings [ 0 .. 32 ] items [ items [ 1 .. 32 ] characters ^[0-9a-zA-Z-_]+$ ]

Labels are used to filter the result

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Create Consumer

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

Request Body schema: application/json
non-empty
description
string <= 256 characters

Description for this consumer.

name
required
string [ 1 .. 100 ] characters ^[a-zA-Z0-9_]+$

Name of the consumer, should be unique among all applications in the same cluster.

object or null

ConsumerCredentials contains a collect of policies can be configured on the consumer.

object

Policies contains a collect of polices like CORS, but exclude authentication policy

labels
Array of strings [ 0 .. 32 ] items unique [ items [ 1 .. 32 ] characters ^[0-9a-zA-Z-_]+$ ]

Labels are used for resources classification and indexing

Responses

Request samples

Content type
application/json
{
  • "description": "jack is the most important API consumer.",
  • "name": "jack",
  • "credentials": {
    },
  • "plugins": {
    },
  • "labels": [
    ]
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Get Consumer Details

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

consumer_id
required
string non-empty ^[1-9][0-9]*$

ConsumerId is the consumer id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Update Consumer

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

consumer_id
required
string non-empty ^[1-9][0-9]*$

ConsumerId is the consumer id

Request Body schema: application/json
non-empty
description
string <= 256 characters

Description for this consumer.

name
required
string [ 1 .. 100 ] characters ^[a-zA-Z0-9_]+$

Name of the consumer, should be unique among all applications in the same cluster.

object or null

ConsumerCredentials contains a collect of policies can be configured on the consumer.

object

Policies contains a collect of polices like CORS, but exclude authentication policy

labels
Array of strings [ 0 .. 32 ] items unique [ items [ 1 .. 32 ] characters ^[0-9a-zA-Z-_]+$ ]

Labels are used for resources classification and indexing

Responses

Request samples

Content type
application/json
{
  • "description": "jack is the most important API consumer.",
  • "name": "jack",
  • "credentials": {
    },
  • "plugins": {
    },
  • "labels": [
    ]
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Patch Consumer

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

consumer_id
required
string non-empty ^[1-9][0-9]*$

ConsumerId is the consumer id

Request Body schema: application/json
non-empty
description
string <= 256 characters

Description for this consumer.

name
string [ 1 .. 100 ] characters ^[a-zA-Z0-9_]+$

Name of the consumer, should be unique among all applications in the same cluster.

object or null

ConsumerCredentials contains a collect of policies can be configured on the consumer.

object

Policies contains a collect of polices like CORS, but exclude authentication policy

labels
Array of strings [ 0 .. 32 ] items unique [ items [ 1 .. 32 ] characters ^[0-9a-zA-Z-_]+$ ]

Labels are used for resources classification and indexing

Responses

Request samples

Content type
application/json
{
  • "description": "jack is the most important API consumer.",
  • "name": "jack",
  • "credentials": {
    },
  • "plugins": {
    },
  • "labels": [
    ]
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Delete Consumer

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

consumer_id
required
string non-empty ^[1-9][0-9]*$

ConsumerId is the consumer id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Create an JSON Web Token

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

consumer_id
required
string non-empty ^[1-9][0-9]*$

ConsumerId is the consumer id

Request Body schema: application/json
ttl
integer <int64> >= 1
Default: 86400

TTL is the time to live of token.

custom_payload
object non-empty

CustomPayload contains some custom key-value fields. These fields will also be kept in the JSON Web Token.

Responses

Request samples

Content type
application/json
{
  • "ttl": 86400,
  • "custom_payload": { }
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Certificates

List Certificates

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

query Parameters
direction
string
Default: "DESC"
Enum: "ASC" "DESC"

Direction should be ASC or DESC (case-insensitive). Default value is DESC.

page_size
integer <int64> >= 1
Default: 10

PageSize is the page size. Must greater than 0.

page
integer <int64> >= 1
Default: 1

Page is the page number, starting from 1.

order_by
string
Default: "updated_at"
Enum: "not_after" "created_at" "updated_at"
labels
Array of strings [ 0 .. 32 ] items [ items [ 1 .. 32 ] characters ^[0-9a-zA-Z-_]+$ ]

Labels are used to filter the result

search
string

search is used to filter the result

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Create Certificate

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

Request Body schema: application/json
certificate
required
string [ 128 .. 65536 ] characters

The certificate in PEM format.

private_key
required
string [ 128 .. 65536 ] characters

The private key for the corresponding certificate in PEM format.

ca_certificate
string [ 128 .. 65536 ] characters

The client CA certificate in PEM format.

labels
Array of strings [ 0 .. 32 ] items unique [ items [ 1 .. 32 ] characters ^[0-9a-zA-Z-_]+$ ]

Labels are used for resources classification and indexing

type
string
Default: "Server"
Enum: "Server" "Client"

The certificate type.

Responses

Request samples

Content type
application/json
{
  • "certificate": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
  • "private_key": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
  • "ca_certificate": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
  • "labels": [
    ],
  • "type": "Server"
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Get Certificate Details

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

certificate_id
required
string^[1-9][0-9]*$

CertificateId is the certificate id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Update Certificate

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

certificate_id
required
string^[1-9][0-9]*$

CertificateId is the certificate id

Request Body schema: application/json
certificate
required
string [ 128 .. 65536 ] characters

The certificate in PEM format.

private_key
required
string [ 128 .. 65536 ] characters

The private key for the corresponding certificate in PEM format.

ca_certificate
string [ 128 .. 65536 ] characters

The client CA certificate in PEM format.

labels
Array of strings [ 0 .. 32 ] items unique [ items [ 1 .. 32 ] characters ^[0-9a-zA-Z-_]+$ ]

Labels are used for resources classification and indexing

type
string
Default: "Server"
Enum: "Server" "Client"

The certificate type.

Responses

Request samples

Content type
application/json
{
  • "certificate": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
  • "private_key": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
  • "ca_certificate": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
  • "labels": [
    ],
  • "type": "Server"
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Patch Certificate

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

certificate_id
required
string^[1-9][0-9]*$

CertificateId is the certificate id

Request Body schema: application/json
certificate
string [ 128 .. 65536 ] characters

The certificate in PEM format.

private_key
string [ 128 .. 65536 ] characters

The private key for the corresponding certificate in PEM format.

ca_certificate
string [ 128 .. 65536 ] characters

The client CA certificate in PEM format.

labels
Array of strings [ 0 .. 32 ] items unique [ items [ 1 .. 32 ] characters ^[0-9a-zA-Z-_]+$ ]

Labels are used for resources classification and indexing

type
string
Default: "Server"
Enum: "Server" "Client"

The certificate type.

Responses

Request samples

Content type
application/json
{
  • "certificate": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
  • "private_key": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
  • "ca_certificate": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
  • "labels": [
    ],
  • "type": "Server"
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

deleteCertificate

Delete Certificate

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

certificate_id
required
string^[1-9][0-9]*$

CertificateId is the certificate id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Members

List Members

Authorizations:
token
path Parameters
id
required
string non-empty ^[1-9][0-9]*$

ID is the organization id

query Parameters
direction
string
Default: "DESC"
Enum: "ASC" "DESC"

Direction should be ASC or DESC (case-insensitive). Default value is DESC.

page_size
integer <int64> >= 1
Default: 10

PageSize is the page size. Must greater than 0.

page
integer <int64> >= 1
Default: 1

Page is the page number, starting from 1.

order_by
string
Default: "updated_at"
Enum: "id" "org_id" "role" "user_id" "created_at" "updated_at"
role_name
string

Role name

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Create Member

Authorizations:
token
path Parameters
id
required
string non-empty ^[1-9][0-9]*$

ID is the organization id

Request Body schema: application/json
One of
email
required
string <email>

Email is the email address of the member

role_id
required
string^[1-9][0-9]*$

Role ID is the role id of the member

role_ids
Array of strings [ 1 .. 32 ] items

Role IDs specify a series of roles to be assigned to the member.

Responses

Request samples

Content type
application/json
{
  • "email": "user@example.com",
  • "role_id": "string",
  • "role_ids": [
    ]
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Get Member Details

Authorizations:
token
path Parameters
id
required
string non-empty ^[1-9][0-9]*$

ID is the organization id

member_id
required
string >= 1

MemberID is the member id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Delete Member

Authorizations:
token
path Parameters
id
required
string non-empty ^[1-9][0-9]*$

ID is the organization id

member_id
required
string >= 1

MemberID is the member id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Update Member

Authorizations:
token
path Parameters
id
required
string non-empty ^[1-9][0-9]*$

ID is the organization id

member_id
required
string >= 1

MemberID is the member id

Request Body schema: application/json
required
Array of objects
Array
role_id
string^[1-9][0-9]*$

ID is a unique identifier for an object.

cluster_id
string or null^[1-9][0-9]*$

ID is a unique identifier for an object.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Transfer Organization Ownership

Authorizations:
token
path Parameters
id
required
string non-empty ^[1-9][0-9]*$

ID is the organization id

member_id
required
string >= 1

MemberID is the member id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Re-invite a member.

Authorizations:
token
path Parameters
id
required
string non-empty ^[1-9][0-9]*$

ID is the organization id

member_id
required
string >= 1

MemberID is the member id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Plans

Get Plan Details

Authorizations:
token
path Parameters
id
required
string non-empty ^[1-9][0-9]*$

ID is the organization id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Regions

List Regions

Authorizations:
token
query Parameters
direction
string
Default: "DESC"
Enum: "ASC" "DESC"

Direction should be ASC or DESC (case-insensitive). Default value is DESC.

page_size
integer <int64> >= 1
Default: 10

PageSize is the page size. Must greater than 0.

page
integer <int64> >= 1
Default: 1

Page is the page number, starting from 1.

order_by
string
Default: "created_at"
Enum: "id" "name" "created_at" "updated_at"

OrderBy is the name of field to be sorted (case-sensitive). Default value is created_at.

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Users

Resend verification email to user

Authorizations:
token
Request Body schema: application/json
user_id
required
string non-empty

user_id of the user to send the verification email to.

Responses

Request samples

Content type
application/json
{
  • "user_id": "string"
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Callback API for the Identity Server

Authorizations:
token
query Parameters
state
required
string

State is the field of OIDC protocol

code
required
string

Code is the field of OIDC protocol

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Accept Invitation

Authorizations:
token
query Parameters
email
required
string <email>

Email is the email address of invited user

org_id
required
string

OrgID is the ID of organization

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Login

Authorizations:
token

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Login

Authorizations:
token

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Logout

Authorizations:
token

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Get User Profile

Authorizations:
token

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Delete Current User

Authorizations:
token

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Update User Profile

Authorizations:
token
Request Body schema: application/json
first_name
required
string [ 1 .. 150 ] characters
last_name
required
string [ 1 .. 150 ] characters

Responses

Request samples

Content type
application/json
{
  • "first_name": "string",
  • "last_name": "string"
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Update User Password

Authorizations:
token
Request Body schema: application/json
old_password
required
string non-empty
new_password
required
string non-empty

Responses

Request samples

Content type
application/json
{
  • "old_password": "string",
  • "new_password": "string"
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Update Product Tour Progress For the Current User

Authorizations:
token
Request Body schema: application/json
dismiss
required
boolean

Whether the user dismisses the product tour

required
Array of objects unique

Product tour checklist

Responses

Request samples

Content type
application/json
{
  • "dismiss": true,
  • "checklist": [
    ]
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

List Personal Access Tokens

Authorizations:
token

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Create Personal Access Token

Authorizations:
token
Request Body schema: application/json
expire
required
integer <int64>
notes
string <= 256 characters

Notes is the description for the token.

Responses

Request samples

Content type
application/json
{
  • "expire": 0,
  • "notes": "string"
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Delete All Personal Access Tokens

Authorizations:
token

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Delete Personal Access Token

Authorizations:
token
path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Service Discovery

Create Service Registry

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

Request Body schema: application/json
One of
type
required
string
Value: "kubernetes"
required
object or object
name
required
string non-empty

The name of service registry.

enabled
boolean
Default: false

Whether enable this service registry.

Responses

Request samples

Content type
application/json
{
  • "type": "kubernetes",
  • "kubernetes": {
    },
  • "name": "string",
  • "enabled": false
}

Response samples

Content type
ServiceRegistry/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

List Service Registries

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

query Parameters
order_by
string
Default: "updated_at"
Enum: "created_at" "updated_at"
direction
string
Default: "DESC"
Enum: "ASC" "DESC"

Direction should be ASC or DESC (case-insensitive). Default value is DESC.

page_size
integer <int64> >= 1
Default: 10

PageSize is the page size. Must greater than 0.

page
integer <int64> >= 1
Default: 1

Page is the page number, starting from 1.

search
string

search is used to filter the result

type
string
Value: "kubernetes"

Service registry type filter.

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Get Service Registry Details

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

service_registry_id
required
string non-empty ^[1-9][0-9]*$

Responses

Response samples

Content type
ServiceRegistry/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Update Service Registry

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

service_registry_id
required
string non-empty ^[1-9][0-9]*$
Request Body schema: application/json
One of
type
required
string
Value: "kubernetes"
required
object or object
name
required
string non-empty

The name of service registry.

enabled
boolean
Default: false

Whether enable this service registry.

Responses

Request samples

Content type
application/json
{
  • "type": "kubernetes",
  • "kubernetes": {
    },
  • "name": "string",
  • "enabled": false
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Delete Service Registry

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

service_registry_id
required
string non-empty ^[1-9][0-9]*$

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Labels

List Labels

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

label_source
required
string
Enum: "api" "application" "consumer" "certificate"

label_source indicates the source of the labels

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": [
    ]
}

Canary Releases

List Canary Release Rules

Authorizations:
token
path Parameters
app_id
required
string^[1-9][0-9]*$

The id of the pet to retrieve

query Parameters
order_by
string
Default: "updated_at"
Enum: "created_at" "updated_at"
direction
string
Default: "DESC"
Enum: "ASC" "DESC"

Direction should be ASC or DESC (case-insensitive). Default value is DESC.

page_size
integer <int64> >= 1
Default: 10

PageSize is the page size. Must greater than 0.

page
integer <int64> >= 1
Default: 1

Page is the page number, starting from 1.

search
string

search is used to filter the result

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Create Canary Release Rule

Authorizations:
token
path Parameters
app_id
required
string^[1-9][0-9]*$

The id of the pet to retrieve

Request Body schema: application/json
name
required
string [ 1 .. 64 ] characters

name specify the name of canary release

state
string
Enum: "paused" "in_progress" "finished"

state specify the state of the canary release

type
required
string
Enum: "percent" "rule"

type specify the type of canary release

canary_upstream_version
required
string [ 1 .. 64 ] characters

canary upstream version specify the version of canary release

percent
integer [ 1 .. 100 ]

percent specifies the percent of request will be transferred to canary upstream

Array of objects [ 1 .. 64 ] items

The route match expressions.

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "state": "paused",
  • "type": "percent",
  • "canary_upstream_version": "string",
  • "percent": 1,
  • "expressions": [
    ]
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Get Canary Release Rule

Authorizations:
token
path Parameters
canary_release_id
required
string^[1-9][0-9]*$

The id of the canary release

app_id
required
string^[1-9][0-9]*$

The id of the pet to retrieve

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Update Canary Release Rule

Authorizations:
token
path Parameters
canary_release_id
required
string^[1-9][0-9]*$

The id of the canary release

app_id
required
string^[1-9][0-9]*$

The id of the pet to retrieve

Request Body schema: application/json
name
required
string [ 1 .. 64 ] characters

name specify the name of canary release

state
string
Enum: "paused" "in_progress" "finished"

state specify the state of the canary release

type
required
string
Enum: "percent" "rule"

type specify the type of canary release

canary_upstream_version
required
string [ 1 .. 64 ] characters

canary upstream version specify the version of canary release

percent
integer [ 1 .. 100 ]

percent specifies the percent of request will be transferred to canary upstream

Array of objects [ 1 .. 64 ] items

The route match expressions.

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "state": "paused",
  • "type": "percent",
  • "canary_upstream_version": "string",
  • "percent": 1,
  • "expressions": [
    ]
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Delete Canary Release Rule

Authorizations:
token
path Parameters
canary_release_id
required
string^[1-9][0-9]*$

The id of the canary release

app_id
required
string^[1-9][0-9]*$

The id of the pet to retrieve

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Log Collections

List Log Collection Plans

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

query Parameters
direction
string
Default: "DESC"
Enum: "ASC" "DESC"

Direction should be ASC or DESC (case-insensitive). Default value is DESC.

page_size
integer <int64> >= 1
Default: 10

PageSize is the page size. Must greater than 0.

page
integer <int64> >= 1
Default: 1

Page is the page number, starting from 1.

order_by
string
Default: "updated_at"
Enum: "created_at" "updated_at" "name"
search
string

search is used to filter the result

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Create Log Collection

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

Request Body schema: application/json
One of
type
required
string
Value: "http-logger"

The type of log collection.

required
object

The specification of http logger.

name
required
string [ 1 .. 128 ] characters ^[a-zA-Z0-9_-]+$

Name of the log collection, should be unique in the same cluster.

description
string <= 256 characters

Description for this log collection.

Responses

Request samples

Content type
application/json
{
  • "type": "kafka-logger",
  • "spec": {
    },
  • "name": "my-http-logger",
  • "description": "my-http-logger is log collection for cloud team."
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Get Log Collection Plan

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

log_collection_id
required
string non-empty ^[1-9][0-9]*$

LogCollectionId is the log collection id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Update Log Collection Plan

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

log_collection_id
required
string non-empty ^[1-9][0-9]*$

LogCollectionId is the log collection id

Request Body schema: application/json
One of
type
required
string
Value: "http-logger"

The type of log collection.

required
object

The specification of http logger.

name
required
string [ 1 .. 128 ] characters ^[a-zA-Z0-9_-]+$

Name of the log collection, should be unique in the same cluster.

description
string <= 256 characters

Description for this log collection.

Responses

Request samples

Content type
application/json
{
  • "type": "kafka-logger",
  • "spec": {
    },
  • "name": "my-http-logger",
  • "description": "my-http-logger is log collection for cloud team."
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Delete Log Collection Plan

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

log_collection_id
required
string non-empty ^[1-9][0-9]*$

LogCollectionId is the log collection id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Variables

List APISIX Variables

Authorizations:
token

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Roles

List Roles

Authorizations:
token
path Parameters
id
required
string non-empty ^[1-9][0-9]*$

ID is the organization id

query Parameters
direction
string
Default: "DESC"
Enum: "ASC" "DESC"

Direction should be ASC or DESC (case-insensitive). Default value is DESC.

page_size
integer <int64> >= 1
Default: 10

PageSize is the page size. Must greater than 0.

page
integer <int64> >= 1
Default: 1

Page is the page number, starting from 1.

order_by
string
Default: "updated_at"
Enum: "created_at" "updated_at"

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": [
    ]
}

Debug

Dump the resource of the given type and id

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

type
required
string
Enum: "api" "application" "consumer" "certificate" "cluster_settings"

ResourceType is the resource type

obj_id
required
string^[1-9][0-9]*$

ObjId is the id of resource

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Plugin Metadata Schema

Get Plugin Metadata Schema

Authorizations:
token
path Parameters
plugin_name
required
string

PluginName is the plugin name of APISIX

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Plugins

Get Plugin JSON Schema

Authorizations:
token
path Parameters
plugin_name
required
string

PluginName is the plugin name of APISIX

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

AlertPolicy

Create AlertPolicy

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

Request Body schema: application/json
description
string [ 1 .. 1024 ] characters

The description info for a alert policy.

name
required
string [ 1 .. 255 ] characters

The description info for a alert policy.

Responses

Request samples

Content type
application/json
{
  • "description": "string",
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Get All Alert Policy

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

query Parameters
order_by
string
Default: "updated_at"
Enum: "created_at" "updated_at"
direction
string
Default: "DESC"
Enum: "ASC" "DESC"

Direction should be ASC or DESC (case-insensitive). Default value is DESC.

page_size
integer <int64> >= 1
Default: 10

PageSize is the page size. Must greater than 0.

page
integer <int64> >= 1
Default: 1

Page is the page number, starting from 1.

search
string

search is used to filter the result

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Get Alert Policy

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

alert_policies_id
required
string non-empty ^[1-9][0-9]*$

AlertPoliciesID is the alert policies id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Delete Alert Policy

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

alert_policies_id
required
string non-empty ^[1-9][0-9]*$

AlertPoliciesID is the alert policies id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Update AlertPolicy Basic Info

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

alert_policies_id
required
string non-empty ^[1-9][0-9]*$

AlertPoliciesID is the alert policies id

Request Body schema: application/json
description
string [ 1 .. 1024 ] characters

The policy description.

title
string [ 1 .. 128 ] characters

The policy title.

detail
string [ 1 .. 128 ] characters

The policy detail.

class
required
string [ 1 .. 128 ] characters
Value: "cluster"

The policy class.

source
required
string [ 1 .. 128 ] characters

The policy source.

check_interval
required
integer [ 60 .. 86400 ]

The check interval for this alert policy, the unit is second.

severity
required
string
Enum: "high" "medium" "low"

The alert level.

Responses

Request samples

Content type
application/json
{
  • "description": "string",
  • "title": "string",
  • "detail": "string",
  • "class": "cluster",
  • "source": "string",
  • "check_interval": 60,
  • "severity": "high"
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Update AlertPolicy Disabled

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

alert_policies_id
required
string non-empty ^[1-9][0-9]*$

AlertPoliciesID is the alert policies id

Request Body schema: application/json
disabled
boolean

The alert policy if disabled

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

AlertPolicyWebhook

Add Webhook To Alert Policy

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

alert_policies_id
required
string non-empty ^[1-9][0-9]*$

AlertPoliciesID is the alert policies id

Request Body schema: application/json
id
string non-empty

The id of the webhook

update_at
integer

The update time of webhook

create_at
integer

The create time of webhook

name
required
string [ 1 .. 20 ] characters
description
string [ 0 .. 255 ] characters
url
required
string [ 1 .. 1024 ] characters

The webhook URL.

method
string
Default: "POST"
Value: "POST"

The webhook request HTTP method.

skip_tls_verify
required
boolean
Default: false

Whether to skip the TLS verification.

Array of objects [ 1 .. 16 ] items

Extra HTTP headers to take when sending requests.

template
required
string

The alert message template, which supports the Go template syntax.

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "update_at": 0,
  • "create_at": 0,
  • "name": "string",
  • "description": "string",
  • "url": "string",
  • "method": "POST",
  • "skip_tls_verify": false,
  • "headers": [
    ],
  • "template": "string"
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Update Webhook In Alert Policy

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

alert_policies_id
required
string non-empty ^[1-9][0-9]*$

AlertPoliciesID is the alert policies id

webhook_id
required
string non-empty ^[1-9][0-9]*$
Request Body schema: application/json
id
string non-empty

The id of the webhook

update_at
integer

The update time of webhook

create_at
integer

The create time of webhook

name
required
string [ 1 .. 20 ] characters
description
string [ 0 .. 255 ] characters
url
required
string [ 1 .. 1024 ] characters

The webhook URL.

method
string
Default: "POST"
Value: "POST"

The webhook request HTTP method.

skip_tls_verify
required
boolean
Default: false

Whether to skip the TLS verification.

Array of objects [ 1 .. 16 ] items

Extra HTTP headers to take when sending requests.

template
required
string

The alert message template, which supports the Go template syntax.

Responses

Request samples

Content type
application/json
{
  • "id": "string",
  • "update_at": 0,
  • "create_at": 0,
  • "name": "string",
  • "description": "string",
  • "url": "string",
  • "method": "POST",
  • "skip_tls_verify": false,
  • "headers": [
    ],
  • "template": "string"
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Delete Webhook From Alert Policy

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

alert_policies_id
required
string non-empty ^[1-9][0-9]*$

AlertPoliciesID is the alert policies id

webhook_id
required
string non-empty ^[1-9][0-9]*$

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

AlertPolicyTrigger

Add Trigger To Alert Policy

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

alert_policies_id
required
string non-empty ^[1-9][0-9]*$

AlertPoliciesID is the alert policies id

Request Body schema: application/json
trigger_logical_operator
required
string
Enum: "All" "Any"

The logical relationship between multiple triggers.

required
Array of objects or objects or objects [ 1 .. 64 ] items

The alert trigger conditions.

Responses

Request samples

Content type
application/json
{
  • "trigger_logical_operator": "All",
  • "trigger_conditions": [
    ]
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

AlertPoliciesHistory

list alert policies history

Authorizations:
token
path Parameters
cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

query Parameters
order_by
string
Default: "updated_at"
Enum: "created_at" "updated_at"
direction
string
Default: "DESC"
Enum: "ASC" "DESC"

Direction should be ASC or DESC (case-insensitive). Default value is DESC.

page_size
integer <int64> >= 1
Default: 10

PageSize is the page size. Must greater than 0.

page
integer <int64> >= 1
Default: 1

Page is the page number, starting from 1.

search
string

search is used to filter the result

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

get alert policies history

Authorizations:
token
path Parameters
alert_history_id
required
string non-empty ^[1-9][0-9]*$

AlertHistoryID is the alert notification history id

cluster_id
required
string non-empty ^[1-9][0-9]*$

ClusterID is the cluster id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

ServiceAdmin

Get Service Admin List

Authorizations:
token
path Parameters
app_id
required
string^[1-9][0-9]*$

The id of the pet to retrieve

query Parameters
order_by
string
Default: "updated_at"
Enum: "created_at" "updated_at"
direction
string
Default: "DESC"
Enum: "ASC" "DESC"

Direction should be ASC or DESC (case-insensitive). Default value is DESC.

page_size
integer <int64> >= 1
Default: 10

PageSize is the page size. Must greater than 0.

page
integer <int64> >= 1
Default: 1

Page is the page number, starting from 1.

search
string

search is used to filter the result

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    },
  • "payload": {
    }
}

Add Service Admins

Authorizations:
token
path Parameters
app_id
required
string^[1-9][0-9]*$

The id of the pet to retrieve

Request Body schema: application/json
required
Array of objects [ 1 .. 64 ] items
Array ([ 1 .. 64 ] items)
member_id
required
string^[1-9][0-9]*$

ID is a unique identifier for an object.

Responses

Request samples

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

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

Delete Service Admin

Authorizations:
token
path Parameters
app_id
required
string^[1-9][0-9]*$

The id of the pet to retrieve

member_id
required
string >= 1

MemberID is the member id

Responses

Response samples

Content type
application/json
{
  • "error": "string",
  • "status": {
    }
}

API7.ai Logo

API Management for Modern Architectures with Edge, API Gateway, Kubernetes, and Service Mesh.

Product

API7 Cloud

SOC2 Type IRed Herring

Copyright © APISEVEN Ltd. 2019 – 2024. Apache, Apache APISIX, APISIX, and associated open source project names are trademarks of the

Apache Software Foundation