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.
Create Organization
Authorizations:
Request Body schema: application/json
name required | string [ 1 .. 32 ] characters \S+ |
Responses
Request samples
- Payload
{- "name": "string"
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "name": "string",
- "owner_id": "string",
- "plan_expire_time": "2019-08-24T14:15:22Z",
- "plan_id": "string",
- "updated_at": "2019-08-24T14:15:22Z"
}
}
Get Organization Information
Authorizations:
path Parameters
id required | string non-empty ^[1-9][0-9]*$ ID is the organization id |
Responses
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "name": "string",
- "owner_id": "string",
- "plan_expire_time": "2019-08-24T14:15:22Z",
- "plan_id": "string",
- "updated_at": "2019-08-24T14:15:22Z"
}
}
Create a new subscription
Authorizations:
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
- Payload
{- "plan": "string"
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
},
}
Initialize Organization
Authorizations:
Request Body schema: application/json
name required | string [ 1 .. 32 ] characters \S+ |
Responses
Request samples
- Payload
{- "name": "string"
}
Response samples
- 200
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
List Available Plugins
Authorizations:
path Parameters
id required | string non-empty ^[1-9][0-9]*$ ID is the organization id |
Responses
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "list": [
- {
- "plugin_name": "string",
- "apisix_plugin_name": "string",
- "description": "string",
- "type": "string"
}
]
}
}
List Clusters
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "count": 0,
- "list": [
- {
- "created_at": "2019-08-24T14:15:22Z",
- "domain": "example.com",
- "id": "string",
- "name": "string",
- "org_id": "string",
- "region_id": "string",
- "status": 1,
- "updated_at": "2019-08-24T14:15:22Z",
- "org_name": "string"
}
]
}
}
Create Cluster
Authorizations:
path Parameters
id required | string non-empty ^[1-9][0-9]*$ ID is the organization id |
Request Body schema: application/json
Responses
Request samples
- Payload
{ }
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "created_at": "2019-08-24T14:15:22Z",
- "domain": "example.com",
- "id": "string",
- "name": "string",
- "org_id": "string",
- "region_id": "string",
- "status": 1,
- "updated_at": "2019-08-24T14:15:22Z",
- "settings": {
- "client_settings": {
- "client_real_ip": {
- "replace_from": {
- "position": "header",
- "name": "string"
}, - "trusted_addresses": [
- "192.168.0.1"
], - "enabled": true
}, - "maximum_request_body_size": 0
}, - "observability_settings": {
- "metrics": {
- "enabled": true
}, - "show_upstream_status_in_response_header": true,
- "access_log_rotate": {
- "enabled": true,
- "interval": 3600,
- "maximum_kept_log_entries": 168,
- "enable_compression": true
}
}, - "api_proxy_settings": {
- "enable_request_buffering": true,
- "server_header_customization": {
- "mode": "Rewrite",
- "new_server_header": "string"
}, - "url_handling_options": [
- "Delete Tail Slash"
]
}
}
}
}
Get Cluster Details
Authorizations:
path Parameters
cluster_id required | string non-empty ^[1-9][0-9]*$ ClusterID is the cluster id |
Responses
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "created_at": "2019-08-24T14:15:22Z",
- "domain": "example.com",
- "id": "string",
- "name": "string",
- "org_id": "string",
- "region_id": "string",
- "status": 1,
- "updated_at": "2019-08-24T14:15:22Z",
- "settings": {
- "client_settings": {
- "client_real_ip": {
- "replace_from": {
- "position": "header",
- "name": "string"
}, - "trusted_addresses": [
- "192.168.0.1"
], - "enabled": true
}, - "maximum_request_body_size": 0
}, - "observability_settings": {
- "metrics": {
- "enabled": true
}, - "show_upstream_status_in_response_header": true,
- "access_log_rotate": {
- "enabled": true,
- "interval": 3600,
- "maximum_kept_log_entries": 168,
- "enable_compression": true
}
}, - "api_proxy_settings": {
- "enable_request_buffering": true,
- "server_header_customization": {
- "mode": "Rewrite",
- "new_server_header": "string"
}, - "url_handling_options": [
- "Delete Tail Slash"
]
}
}
}
}
Update Cluster
Authorizations:
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
- Payload
{- "client_settings": {
- "client_real_ip": {
- "replace_from": {
- "position": "header",
- "name": "string"
}, - "trusted_addresses": [
- "192.168.0.1"
], - "enabled": true
}, - "maximum_request_body_size": 0
}, - "observability_settings": {
- "metrics": {
- "enabled": true
}, - "show_upstream_status_in_response_header": true,
- "access_log_rotate": {
- "enabled": true,
- "interval": 3600,
- "maximum_kept_log_entries": 168,
- "enable_compression": true
}
}, - "api_proxy_settings": {
- "enable_request_buffering": true,
- "server_header_customization": {
- "mode": "Rewrite",
- "new_server_header": "string"
}, - "url_handling_options": [
- "Delete Tail Slash"
]
}
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Update Cluster Plugins
Authorizations:
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
- Payload
{- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}, - "authentication": {
- "disable": false,
- "type": "basic_auth",
- "config": {
- "strip_credentials": true
}
}
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Generate a client certificate for communicating with the cluster for the given cluster.
Authorizations:
path Parameters
cluster_id required | string non-empty ^[1-9][0-9]*$ ClusterID is the cluster id |
Responses
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "ca_certificate": "string",
- "certificate": "string",
- "private_key": "string"
}
}
List Gateway Instances
Authorizations:
path Parameters
cluster_id required | string non-empty ^[1-9][0-9]*$ ClusterID is the cluster id |
Responses
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "count": 0,
- "list": [
- {
- "api_calls": 0,
- "config_version": 0,
- "domain": "string",
- "etcd_reachable": true,
- "hostname": "string",
- "id": "string",
- "ip": "string",
- "version": "string",
- "last_seen_time": "2019-08-24T14:15:22Z",
- "register_time": "2019-08-24T14:15:22Z",
- "certificate_expire_time": "2019-08-24T14:15:22Z",
- "status": "Healthy"
}
]
}
}
Get Gateway Instance Configuration Template
Authorizations:
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
|
Responses
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "configuration": "string"
}
}
Get Cluster Metrics
Authorizations:
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
|
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "count": 0,
- "list": [
- {
- "data": { },
- "key": "string",
- "type": "string"
}
]
}
}
Load Plugin
Authorizations:
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
- Payload
{- "plugin_management_id": "string",
- "name": "string",
- "type": "string",
- "metadata": { }
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
List Loaded Plugins
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "count": 0,
- "list": [
- {
- "name": "string",
- "description": "string",
- "type": "string",
- "metadata": { },
- "has_metadata": true
}
]
}
}
Update Loaded Plugin
Authorizations:
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 | |||
|
Responses
Request samples
- Payload
{- "metadata": { }
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Delete Loaded Plugin
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Get Plugin Reference
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "associations": [
- {
- "resource_type": "APPLICATION",
- "resource_name": "string",
- "parent_id": "string",
- "resource_id": "string"
}
]
}
}
List Applications
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "count": 0,
- "list": [
- {
- "description": "string",
- "hosts": [
- "string"
], - "name": "string",
- "path_prefix": "string",
- "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}, - "authentication": {
- "disable": false,
- "type": "basic_auth",
- "config": {
- "strip_credentials": true
}
}
}, - "protocol": "HTTP",
- "protocols": [
- "HTTP"
], - "upstreams": [
- {
- "upstream": {
- "scheme": "http",
- "lb_type": "roundrobin",
- "hash_key": "string",
- "retries": 65535,
- "checks": {
- "active": {
- "type": "http",
- "http": {
- "http_probe_path": null,
- "http_probe_host": null,
- "http_probe_headers": { },
- "probe_timeout": null,
- "concurrent_probes": null,
- "probe_target_port": null,
- "healthy": { },
- "unhealthy": { }
}
}, - "passive": {
- "type": "http",
- "http": {
- "healthy": { },
- "unhealthy": { }
}
}
}, - "timeout": {
- "connect": 0,
- "send": 0,
- "read": 0
}, - "upstream_host_mode": "reserve",
- "upstream_host": "string",
- "targets": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535
}
]
}, - "version": "string",
- "client_cert_id": "string"
}
], - "default_upstream_version": "default",
- "labels": [
- "string"
], - "active": 0,
- "cluster_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z",
- "canary_release_id": [
- "string"
], - "canary_upstream_version_list": [
- "string"
]
}
]
}
}
Create Application
Authorizations:
path Parameters
cluster_id required | string non-empty ^[1-9][0-9]*$ ClusterID is the cluster id |
Request Body schema: application/json
non-emptydescription | 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
- Payload
{- "description": "string",
- "hosts": [
- "string"
], - "name": "string",
- "path_prefix": "string",
- "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}, - "authentication": {
- "disable": false,
- "type": "basic_auth",
- "config": {
- "strip_credentials": true
}
}
}, - "protocol": "HTTP",
- "protocols": [
- "HTTP"
], - "upstreams": [
- {
- "upstream": {
- "scheme": "http",
- "lb_type": "roundrobin",
- "hash_key": "string",
- "retries": 65535,
- "checks": {
- "active": {
- "type": "http",
- "http": {
- "http_probe_path": "/",
- "http_probe_host": "string",
- "http_probe_headers": {
- "property1": "string",
- "property2": "string"
}, - "probe_timeout": 1,
- "concurrent_probes": 10,
- "probe_target_port": 1,
- "healthy": {
- "http_status_codes": [
- 200,
- 302
], - "targets_check_interval": 1,
- "successes": 2
}, - "unhealthy": {
- "http_status_codes": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "targets_check_interval": 1,
- "timeouts": 3
}
}
}, - "passive": {
- "type": "http",
- "http": {
- "healthy": {
- "http_status_codes": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
]
}, - "unhealthy": {
- "http_status_codes": [
- 429,
- 500,
- 503
], - "http_failures": 5,
- "timeouts": 7
}
}
}
}, - "timeout": {
- "connect": 0,
- "send": 0,
- "read": 0
}, - "upstream_host_mode": "reserve",
- "upstream_host": "string",
- "targets": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535
}
]
}, - "version": "string",
- "client_cert_id": "string"
}
], - "default_upstream_version": "default",
- "labels": [
- "string"
], - "active": 0
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "description": "string",
- "hosts": [
- "string"
], - "name": "string",
- "path_prefix": "string",
- "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}, - "authentication": {
- "disable": false,
- "type": "basic_auth",
- "config": {
- "strip_credentials": true
}
}
}, - "protocol": "HTTP",
- "protocols": [
- "HTTP"
], - "upstreams": [
- {
- "upstream": {
- "scheme": "http",
- "lb_type": "roundrobin",
- "hash_key": "string",
- "retries": 65535,
- "checks": {
- "active": {
- "type": "http",
- "http": {
- "http_probe_path": "/",
- "http_probe_host": "string",
- "http_probe_headers": {
- "property1": "string",
- "property2": "string"
}, - "probe_timeout": 1,
- "concurrent_probes": 10,
- "probe_target_port": 1,
- "healthy": {
- "http_status_codes": [
- 200,
- 302
], - "targets_check_interval": 1,
- "successes": 2
}, - "unhealthy": {
- "http_status_codes": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "targets_check_interval": 1,
- "timeouts": 3
}
}
}, - "passive": {
- "type": "http",
- "http": {
- "healthy": {
- "http_status_codes": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
]
}, - "unhealthy": {
- "http_status_codes": [
- 429,
- 500,
- 503
], - "http_failures": 5,
- "timeouts": 7
}
}
}
}, - "timeout": {
- "connect": 0,
- "send": 0,
- "read": 0
}, - "upstream_host_mode": "reserve",
- "upstream_host": "string",
- "targets": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535
}
]
}, - "version": "string",
- "client_cert_id": "string"
}
], - "default_upstream_version": "default",
- "labels": [
- "string"
], - "active": 0,
- "cluster_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z",
- "canary_release_id": [
- "string"
], - "canary_upstream_version_list": [
- "string"
]
}
}
Delete All Applications
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Get Application Details
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "description": "string",
- "hosts": [
- "string"
], - "name": "string",
- "path_prefix": "string",
- "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}, - "authentication": {
- "disable": false,
- "type": "basic_auth",
- "config": {
- "strip_credentials": true
}
}
}, - "protocol": "HTTP",
- "protocols": [
- "HTTP"
], - "upstreams": [
- {
- "upstream": {
- "scheme": "http",
- "lb_type": "roundrobin",
- "hash_key": "string",
- "retries": 65535,
- "checks": {
- "active": {
- "type": "http",
- "http": {
- "http_probe_path": "/",
- "http_probe_host": "string",
- "http_probe_headers": {
- "property1": "string",
- "property2": "string"
}, - "probe_timeout": 1,
- "concurrent_probes": 10,
- "probe_target_port": 1,
- "healthy": {
- "http_status_codes": [
- 200,
- 302
], - "targets_check_interval": 1,
- "successes": 2
}, - "unhealthy": {
- "http_status_codes": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "targets_check_interval": 1,
- "timeouts": 3
}
}
}, - "passive": {
- "type": "http",
- "http": {
- "healthy": {
- "http_status_codes": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
]
}, - "unhealthy": {
- "http_status_codes": [
- 429,
- 500,
- 503
], - "http_failures": 5,
- "timeouts": 7
}
}
}
}, - "timeout": {
- "connect": 0,
- "send": 0,
- "read": 0
}, - "upstream_host_mode": "reserve",
- "upstream_host": "string",
- "targets": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535
}
]
}, - "version": "string",
- "client_cert_id": "string"
}
], - "default_upstream_version": "default",
- "labels": [
- "string"
], - "active": 0,
- "cluster_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z",
- "canary_release_id": [
- "string"
], - "canary_upstream_version_list": [
- "string"
]
}
}
Update Application
Authorizations:
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-emptydescription | 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
- Payload
{- "description": "string",
- "hosts": [
- "string"
], - "name": "string",
- "path_prefix": "string",
- "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}, - "authentication": {
- "disable": false,
- "type": "basic_auth",
- "config": {
- "strip_credentials": true
}
}
}, - "protocol": "HTTP",
- "protocols": [
- "HTTP"
], - "upstreams": [
- {
- "upstream": {
- "scheme": "http",
- "lb_type": "roundrobin",
- "hash_key": "string",
- "retries": 65535,
- "checks": {
- "active": {
- "type": "http",
- "http": {
- "http_probe_path": "/",
- "http_probe_host": "string",
- "http_probe_headers": {
- "property1": "string",
- "property2": "string"
}, - "probe_timeout": 1,
- "concurrent_probes": 10,
- "probe_target_port": 1,
- "healthy": {
- "http_status_codes": [
- 200,
- 302
], - "targets_check_interval": 1,
- "successes": 2
}, - "unhealthy": {
- "http_status_codes": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "targets_check_interval": 1,
- "timeouts": 3
}
}
}, - "passive": {
- "type": "http",
- "http": {
- "healthy": {
- "http_status_codes": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
]
}, - "unhealthy": {
- "http_status_codes": [
- 429,
- 500,
- 503
], - "http_failures": 5,
- "timeouts": 7
}
}
}
}, - "timeout": {
- "connect": 0,
- "send": 0,
- "read": 0
}, - "upstream_host_mode": "reserve",
- "upstream_host": "string",
- "targets": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535
}
]
}, - "version": "string",
- "client_cert_id": "string"
}
], - "default_upstream_version": "default",
- "labels": [
- "string"
], - "active": 0
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "description": "string",
- "hosts": [
- "string"
], - "name": "string",
- "path_prefix": "string",
- "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}, - "authentication": {
- "disable": false,
- "type": "basic_auth",
- "config": {
- "strip_credentials": true
}
}
}, - "protocol": "HTTP",
- "protocols": [
- "HTTP"
], - "upstreams": [
- {
- "upstream": {
- "scheme": "http",
- "lb_type": "roundrobin",
- "hash_key": "string",
- "retries": 65535,
- "checks": {
- "active": {
- "type": "http",
- "http": {
- "http_probe_path": "/",
- "http_probe_host": "string",
- "http_probe_headers": {
- "property1": "string",
- "property2": "string"
}, - "probe_timeout": 1,
- "concurrent_probes": 10,
- "probe_target_port": 1,
- "healthy": {
- "http_status_codes": [
- 200,
- 302
], - "targets_check_interval": 1,
- "successes": 2
}, - "unhealthy": {
- "http_status_codes": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "targets_check_interval": 1,
- "timeouts": 3
}
}
}, - "passive": {
- "type": "http",
- "http": {
- "healthy": {
- "http_status_codes": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
]
}, - "unhealthy": {
- "http_status_codes": [
- 429,
- 500,
- 503
], - "http_failures": 5,
- "timeouts": 7
}
}
}
}, - "timeout": {
- "connect": 0,
- "send": 0,
- "read": 0
}, - "upstream_host_mode": "reserve",
- "upstream_host": "string",
- "targets": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535
}
]
}, - "version": "string",
- "client_cert_id": "string"
}
], - "default_upstream_version": "default",
- "labels": [
- "string"
], - "active": 0,
- "cluster_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z",
- "canary_release_id": [
- "string"
], - "canary_upstream_version_list": [
- "string"
]
}
}
Patch Application
Authorizations:
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-emptydescription | 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
- Payload
{- "description": "string",
- "hosts": [
- "string"
], - "name": "string",
- "path_prefix": "string",
- "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}, - "authentication": {
- "disable": false,
- "type": "basic_auth",
- "config": {
- "strip_credentials": true
}
}
}, - "protocol": "HTTP",
- "protocols": [
- "HTTP"
], - "upstreams": [
- {
- "upstream": {
- "scheme": "http",
- "lb_type": "roundrobin",
- "hash_key": "string",
- "retries": 65535,
- "checks": {
- "active": {
- "type": "http",
- "http": {
- "http_probe_path": "/",
- "http_probe_host": "string",
- "http_probe_headers": {
- "property1": "string",
- "property2": "string"
}, - "probe_timeout": 1,
- "concurrent_probes": 10,
- "probe_target_port": 1,
- "healthy": {
- "http_status_codes": [
- 200,
- 302
], - "targets_check_interval": 1,
- "successes": 2
}, - "unhealthy": {
- "http_status_codes": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "targets_check_interval": 1,
- "timeouts": 3
}
}
}, - "passive": {
- "type": "http",
- "http": {
- "healthy": {
- "http_status_codes": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
]
}, - "unhealthy": {
- "http_status_codes": [
- 429,
- 500,
- 503
], - "http_failures": 5,
- "timeouts": 7
}
}
}
}, - "timeout": {
- "connect": 0,
- "send": 0,
- "read": 0
}, - "upstream_host_mode": "reserve",
- "upstream_host": "string",
- "targets": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535
}
]
}, - "version": "string",
- "client_cert_id": "string"
}
], - "default_upstream_version": "default",
- "labels": [
- "string"
], - "active": 0
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "description": "string",
- "hosts": [
- "string"
], - "name": "string",
- "path_prefix": "string",
- "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}, - "authentication": {
- "disable": false,
- "type": "basic_auth",
- "config": {
- "strip_credentials": true
}
}
}, - "protocol": "HTTP",
- "protocols": [
- "HTTP"
], - "upstreams": [
- {
- "upstream": {
- "scheme": "http",
- "lb_type": "roundrobin",
- "hash_key": "string",
- "retries": 65535,
- "checks": {
- "active": {
- "type": "http",
- "http": {
- "http_probe_path": "/",
- "http_probe_host": "string",
- "http_probe_headers": {
- "property1": "string",
- "property2": "string"
}, - "probe_timeout": 1,
- "concurrent_probes": 10,
- "probe_target_port": 1,
- "healthy": {
- "http_status_codes": [
- 200,
- 302
], - "targets_check_interval": 1,
- "successes": 2
}, - "unhealthy": {
- "http_status_codes": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "targets_check_interval": 1,
- "timeouts": 3
}
}
}, - "passive": {
- "type": "http",
- "http": {
- "healthy": {
- "http_status_codes": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
]
}, - "unhealthy": {
- "http_status_codes": [
- 429,
- 500,
- 503
], - "http_failures": 5,
- "timeouts": 7
}
}
}
}, - "timeout": {
- "connect": 0,
- "send": 0,
- "read": 0
}, - "upstream_host_mode": "reserve",
- "upstream_host": "string",
- "targets": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535
}
]
}, - "version": "string",
- "client_cert_id": "string"
}
], - "default_upstream_version": "default",
- "labels": [
- "string"
], - "active": 0,
- "cluster_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z",
- "canary_release_id": [
- "string"
], - "canary_upstream_version_list": [
- "string"
]
}
}
Delete Application
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Create Application
Authorizations:
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
- Payload
{- "openapi": "string"
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
List APIs
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "count": 0,
- "list": [
- {
- "active": 0,
- "description": "string",
- "methods": [
- "GET"
], - "name": "string",
- "paths": [
- {
- "path": "string",
- "path_type": "Exact"
}
], - "fine_grained_route_control": {
- "enabled": false,
- "logical_relationship": "All",
- "expressions": [
- {
- "subject": "header",
- "name": "string",
- "operator": "equal",
- "value": "string"
}
]
}, - "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}, - "authentication": {
- "disable": false,
- "type": "basic_auth",
- "config": {
- "strip_credentials": true
}
}
}, - "strip_path_prefix": true,
- "labels": [
- "string"
], - "type": "Rest",
- "app_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z"
}
]
}
}
Create API
Authorizations:
path Parameters
app_id required | string^[1-9][0-9]*$ The id of the pet to retrieve |
Request Body schema: application/json
non-emptyactive | 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
- Payload
{- "active": 0,
- "description": "string",
- "methods": [
- "GET"
], - "name": "string",
- "paths": [
- {
- "path": "string",
- "path_type": "Exact"
}
], - "fine_grained_route_control": {
- "enabled": false,
- "logical_relationship": "All",
- "expressions": [
- {
- "subject": "header",
- "name": "string",
- "operator": "equal",
- "value": "string"
}
]
}, - "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}, - "authentication": {
- "disable": false,
- "type": "basic_auth",
- "config": {
- "strip_credentials": true
}
}
}, - "strip_path_prefix": true,
- "labels": [
- "string"
], - "type": "Rest"
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Get API Details
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "active": 0,
- "description": "string",
- "methods": [
- "GET"
], - "name": "string",
- "paths": [
- {
- "path": "string",
- "path_type": "Exact"
}
], - "fine_grained_route_control": {
- "enabled": false,
- "logical_relationship": "All",
- "expressions": [
- {
- "subject": "header",
- "name": "string",
- "operator": "equal",
- "value": "string"
}
]
}, - "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}, - "authentication": {
- "disable": false,
- "type": "basic_auth",
- "config": {
- "strip_credentials": true
}
}
}, - "strip_path_prefix": true,
- "labels": [
- "string"
], - "type": "Rest",
- "app_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z"
}
}
Update API
Authorizations:
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-emptyactive | 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
- Payload
{- "active": 0,
- "description": "string",
- "methods": [
- "GET"
], - "name": "string",
- "paths": [
- {
- "path": "string",
- "path_type": "Exact"
}
], - "fine_grained_route_control": {
- "enabled": false,
- "logical_relationship": "All",
- "expressions": [
- {
- "subject": "header",
- "name": "string",
- "operator": "equal",
- "value": "string"
}
]
}, - "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}, - "authentication": {
- "disable": false,
- "type": "basic_auth",
- "config": {
- "strip_credentials": true
}
}
}, - "strip_path_prefix": true,
- "labels": [
- "string"
], - "type": "Rest"
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "active": 0,
- "description": "string",
- "methods": [
- "GET"
], - "name": "string",
- "paths": [
- {
- "path": "string",
- "path_type": "Exact"
}
], - "fine_grained_route_control": {
- "enabled": false,
- "logical_relationship": "All",
- "expressions": [
- {
- "subject": "header",
- "name": "string",
- "operator": "equal",
- "value": "string"
}
]
}, - "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}, - "authentication": {
- "disable": false,
- "type": "basic_auth",
- "config": {
- "strip_credentials": true
}
}
}, - "strip_path_prefix": true,
- "labels": [
- "string"
], - "type": "Rest",
- "app_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z"
}
}
Patch API
Authorizations:
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-emptyactive | 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
- Payload
{- "active": 0,
- "description": "string",
- "methods": [
- "GET"
], - "name": "string",
- "paths": [
- {
- "path": "string",
- "path_type": "Exact"
}
], - "fine_grained_route_control": {
- "enabled": false,
- "logical_relationship": "All",
- "expressions": [
- {
- "subject": "header",
- "name": "string",
- "operator": "equal",
- "value": "string"
}
]
}, - "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}, - "authentication": {
- "disable": false,
- "type": "basic_auth",
- "config": {
- "strip_credentials": true
}
}
}, - "strip_path_prefix": true,
- "labels": [
- "string"
], - "type": "Rest"
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "active": 0,
- "description": "string",
- "methods": [
- "GET"
], - "name": "string",
- "paths": [
- {
- "path": "string",
- "path_type": "Exact"
}
], - "fine_grained_route_control": {
- "enabled": false,
- "logical_relationship": "All",
- "expressions": [
- {
- "subject": "header",
- "name": "string",
- "operator": "equal",
- "value": "string"
}
]
}, - "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}, - "authentication": {
- "disable": false,
- "type": "basic_auth",
- "config": {
- "strip_credentials": true
}
}
}, - "strip_path_prefix": true,
- "labels": [
- "string"
], - "type": "Rest",
- "app_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z"
}
}
Search APIs in current cluster (also include their parent applications)
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "count": 0,
- "list": [
- {
- "api": {
- "active": 0,
- "description": "string",
- "methods": [
- "GET"
], - "name": "string",
- "paths": [
- {
- "path": "string",
- "path_type": "Exact"
}
], - "fine_grained_route_control": {
- "enabled": false,
- "logical_relationship": "All",
- "expressions": [
- {
- "subject": "header",
- "name": "string",
- "operator": "equal",
- "value": "string"
}
]
}, - "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}, - "authentication": {
- "disable": false,
- "type": "basic_auth",
- "config": {
- "strip_credentials": true
}
}
}, - "strip_path_prefix": true,
- "labels": [
- "string"
], - "type": "Rest",
- "app_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z"
}, - "application": {
- "id": "string",
- "name": "string"
}
}
]
}
}
List Consumers
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "count": 0,
- "list": [
- {
- "description": "jack is the most important API consumer.",
- "name": "jack",
- "credentials": {
- "basic_auth": {
- "password": "string",
- "username": "string"
}, - "hmac_auth": {
- "access_key": "string",
- "algorithm": "hmac-sha1",
- "clock_skew": 0,
- "encode_uri_params": true,
- "max_req_body": 524288,
- "secret_key": "string",
- "signed_headers": [
- "string"
], - "validate_request_body": false
}, - "key_auth": {
- "key": "d41d8cd98f00b204e9800998ecf8427e"
}, - "jwt_auth": {
- "key": "user-key",
- "base_64_secret": true,
- "secret": "string",
- "algorithm": "HS256"
}, - "ldap_auth": {
- "user_dn": "string"
}
}, - "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}
}, - "labels": [
- "string"
], - "cluster_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z"
}
]
}
}
Create Consumer
Authorizations:
path Parameters
cluster_id required | string non-empty ^[1-9][0-9]*$ ClusterID is the cluster id |
Request Body schema: application/json
non-emptydescription | 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
- Payload
{- "description": "jack is the most important API consumer.",
- "name": "jack",
- "credentials": {
- "basic_auth": {
- "password": "string",
- "username": "string"
}, - "hmac_auth": {
- "access_key": "string",
- "algorithm": "hmac-sha1",
- "clock_skew": 0,
- "encode_uri_params": true,
- "max_req_body": 524288,
- "secret_key": "string",
- "signed_headers": [
- "string"
], - "validate_request_body": false
}, - "key_auth": {
- "key": "d41d8cd98f00b204e9800998ecf8427e"
}, - "jwt_auth": {
- "key": "user-key",
- "base_64_secret": true,
- "secret": "string",
- "algorithm": "HS256"
}, - "ldap_auth": {
- "user_dn": "string"
}
}, - "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}
}, - "labels": [
- "string"
]
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "description": "jack is the most important API consumer.",
- "name": "jack",
- "credentials": {
- "basic_auth": {
- "password": "string",
- "username": "string"
}, - "hmac_auth": {
- "access_key": "string",
- "algorithm": "hmac-sha1",
- "clock_skew": 0,
- "encode_uri_params": true,
- "max_req_body": 524288,
- "secret_key": "string",
- "signed_headers": [
- "string"
], - "validate_request_body": false
}, - "key_auth": {
- "key": "d41d8cd98f00b204e9800998ecf8427e"
}, - "jwt_auth": {
- "key": "user-key",
- "base_64_secret": true,
- "secret": "string",
- "algorithm": "HS256"
}, - "ldap_auth": {
- "user_dn": "string"
}
}, - "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}
}, - "labels": [
- "string"
], - "cluster_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z"
}
}
Get Consumer Details
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "description": "jack is the most important API consumer.",
- "name": "jack",
- "credentials": {
- "basic_auth": {
- "password": "string",
- "username": "string"
}, - "hmac_auth": {
- "access_key": "string",
- "algorithm": "hmac-sha1",
- "clock_skew": 0,
- "encode_uri_params": true,
- "max_req_body": 524288,
- "secret_key": "string",
- "signed_headers": [
- "string"
], - "validate_request_body": false
}, - "key_auth": {
- "key": "d41d8cd98f00b204e9800998ecf8427e"
}, - "jwt_auth": {
- "key": "user-key",
- "base_64_secret": true,
- "secret": "string",
- "algorithm": "HS256"
}, - "ldap_auth": {
- "user_dn": "string"
}
}, - "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}
}, - "labels": [
- "string"
], - "cluster_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z"
}
}
Update Consumer
Authorizations:
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-emptydescription | 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
- Payload
{- "description": "jack is the most important API consumer.",
- "name": "jack",
- "credentials": {
- "basic_auth": {
- "password": "string",
- "username": "string"
}, - "hmac_auth": {
- "access_key": "string",
- "algorithm": "hmac-sha1",
- "clock_skew": 0,
- "encode_uri_params": true,
- "max_req_body": 524288,
- "secret_key": "string",
- "signed_headers": [
- "string"
], - "validate_request_body": false
}, - "key_auth": {
- "key": "d41d8cd98f00b204e9800998ecf8427e"
}, - "jwt_auth": {
- "key": "user-key",
- "base_64_secret": true,
- "secret": "string",
- "algorithm": "HS256"
}, - "ldap_auth": {
- "user_dn": "string"
}
}, - "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}
}, - "labels": [
- "string"
]
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Patch Consumer
Authorizations:
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-emptydescription | 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
- Payload
{- "description": "jack is the most important API consumer.",
- "name": "jack",
- "credentials": {
- "basic_auth": {
- "password": "string",
- "username": "string"
}, - "hmac_auth": {
- "access_key": "string",
- "algorithm": "hmac-sha1",
- "clock_skew": 0,
- "encode_uri_params": true,
- "max_req_body": 524288,
- "secret_key": "string",
- "signed_headers": [
- "string"
], - "validate_request_body": false
}, - "key_auth": {
- "key": "d41d8cd98f00b204e9800998ecf8427e"
}, - "jwt_auth": {
- "key": "user-key",
- "base_64_secret": true,
- "secret": "string",
- "algorithm": "HS256"
}, - "ldap_auth": {
- "user_dn": "string"
}
}, - "plugins": {
- "acl": {
- "run_mode": "allow",
- "reject_code": 403,
- "reject_msg": "The consumer is forbidden.",
- "disable": false,
- "consumer_list": [
- "string"
]
}, - "logging": {
- "log_collection_ids": [
- "string"
], - "disable": false
}
}, - "labels": [
- "string"
]
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Delete Consumer
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Create an JSON Web Token
Authorizations:
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
- Payload
{- "ttl": 86400,
- "custom_payload": { }
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
List Certificates
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "count": 0,
- "list": [
- {
- "extensions": {
- "property1": "string",
- "property2": "string"
}, - "issuer": "string",
- "not_after": "2019-08-24T14:15:22Z",
- "not_before": "2019-08-24T14:15:22Z",
- "serial_number": "string",
- "signature_algorithm": "string",
- "snis": [
- "string"
], - "subject": "string",
- "cluster_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z",
- "ca_certificate": {
- "extensions": {
- "property1": "string",
- "property2": "string"
}, - "issuer": "string",
- "not_after": "2019-08-24T14:15:22Z",
- "not_before": "2019-08-24T14:15:22Z",
- "serial_number": "string",
- "signature_algorithm": "string",
- "snis": [
- "string"
], - "subject": "string"
}, - "labels": [
- "string"
], - "type": "Server"
}
]
}
}
Create Certificate
Authorizations:
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
- Payload
{- "certificate": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
- "private_key": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
- "ca_certificate": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
- "labels": [
- "string"
], - "type": "Server"
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "extensions": {
- "property1": "string",
- "property2": "string"
}, - "issuer": "string",
- "not_after": "2019-08-24T14:15:22Z",
- "not_before": "2019-08-24T14:15:22Z",
- "serial_number": "string",
- "signature_algorithm": "string",
- "snis": [
- "string"
], - "subject": "string",
- "cluster_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z",
- "ca_certificate": {
- "extensions": {
- "property1": "string",
- "property2": "string"
}, - "issuer": "string",
- "not_after": "2019-08-24T14:15:22Z",
- "not_before": "2019-08-24T14:15:22Z",
- "serial_number": "string",
- "signature_algorithm": "string",
- "snis": [
- "string"
], - "subject": "string"
}, - "labels": [
- "string"
], - "type": "Server"
}
}
Get Certificate Details
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "extensions": {
- "property1": "string",
- "property2": "string"
}, - "issuer": "string",
- "not_after": "2019-08-24T14:15:22Z",
- "not_before": "2019-08-24T14:15:22Z",
- "serial_number": "string",
- "signature_algorithm": "string",
- "snis": [
- "string"
], - "subject": "string",
- "cluster_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z",
- "ca_certificate": {
- "extensions": {
- "property1": "string",
- "property2": "string"
}, - "issuer": "string",
- "not_after": "2019-08-24T14:15:22Z",
- "not_before": "2019-08-24T14:15:22Z",
- "serial_number": "string",
- "signature_algorithm": "string",
- "snis": [
- "string"
], - "subject": "string"
}, - "labels": [
- "string"
], - "type": "Server"
}
}
Update Certificate
Authorizations:
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
- Payload
{- "certificate": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
- "private_key": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
- "ca_certificate": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
- "labels": [
- "string"
], - "type": "Server"
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "extensions": {
- "property1": "string",
- "property2": "string"
}, - "issuer": "string",
- "not_after": "2019-08-24T14:15:22Z",
- "not_before": "2019-08-24T14:15:22Z",
- "serial_number": "string",
- "signature_algorithm": "string",
- "snis": [
- "string"
], - "subject": "string",
- "cluster_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z",
- "ca_certificate": {
- "extensions": {
- "property1": "string",
- "property2": "string"
}, - "issuer": "string",
- "not_after": "2019-08-24T14:15:22Z",
- "not_before": "2019-08-24T14:15:22Z",
- "serial_number": "string",
- "signature_algorithm": "string",
- "snis": [
- "string"
], - "subject": "string"
}, - "labels": [
- "string"
], - "type": "Server"
}
}
Patch Certificate
Authorizations:
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
- Payload
{- "certificate": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
- "private_key": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
- "ca_certificate": "stringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringstringst",
- "labels": [
- "string"
], - "type": "Server"
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "extensions": {
- "property1": "string",
- "property2": "string"
}, - "issuer": "string",
- "not_after": "2019-08-24T14:15:22Z",
- "not_before": "2019-08-24T14:15:22Z",
- "serial_number": "string",
- "signature_algorithm": "string",
- "snis": [
- "string"
], - "subject": "string",
- "cluster_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z",
- "ca_certificate": {
- "extensions": {
- "property1": "string",
- "property2": "string"
}, - "issuer": "string",
- "not_after": "2019-08-24T14:15:22Z",
- "not_before": "2019-08-24T14:15:22Z",
- "serial_number": "string",
- "signature_algorithm": "string",
- "snis": [
- "string"
], - "subject": "string"
}, - "labels": [
- "string"
], - "type": "Server"
}
}
deleteCertificate
Delete Certificate
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
List Members
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "count": 0,
- "list": [
- {
- "avatar_url": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "email": "string",
- "first_name": "string",
- "id": "string",
- "state": "Pending",
- "last_name": "string",
- "roles": [
- {
- "id": "string",
- "name": "string",
- "org_id": "string",
- "owner": true,
- "scope": "organization",
- "permissions": {
- "organization": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}, - "cluster": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}, - "billing": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}, - "api_management": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}, - "alert_management": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}
}
}
], - "status": 0,
- "updated_at": "2019-08-24T14:15:22Z"
}
]
}
}
Create Member
Authorizations:
path Parameters
id required | string non-empty ^[1-9][0-9]*$ ID is the organization id |
Request Body schema: application/json
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
- Payload
{- "email": "user@example.com",
- "role_id": "string",
- "role_ids": [
- "string"
]
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "created_at": "2019-08-24T14:15:22Z",
- "first_name": "string",
- "id": "string",
- "last_name": "string",
- "org_id": "string",
- "roles": [
- {
- "id": "string",
- "name": "string",
- "org_id": "string",
- "owner": true,
- "scope": "organization",
- "permissions": {
- "organization": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}, - "cluster": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}, - "billing": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}, - "api_management": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}, - "alert_management": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}
}
}
], - "state": "Pending",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z",
- "user_id": "string",
- "invitation_link": "string"
}
}
Get Member Details
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "avatar_url": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "email": "string",
- "first_name": "string",
- "id": "string",
- "state": "Pending",
- "last_name": "string",
- "roles": [
- {
- "id": "string",
- "name": "string",
- "org_id": "string",
- "owner": true,
- "scope": "organization",
- "permissions": {
- "organization": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}, - "cluster": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}, - "billing": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}, - "api_management": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}, - "alert_management": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}
}
}
], - "status": 0,
- "updated_at": "2019-08-24T14:15:22Z"
}
}
Update Member
Authorizations:
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
|
Responses
Request samples
- Payload
{- "role_bindings": [
- {
- "role_id": "string",
- "cluster_id": "string"
}
]
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Transfer Organization Ownership
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Re-invite a member.
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "created_at": "2019-08-24T14:15:22Z",
- "first_name": "string",
- "id": "string",
- "last_name": "string",
- "org_id": "string",
- "roles": [
- {
- "id": "string",
- "name": "string",
- "org_id": "string",
- "owner": true,
- "scope": "organization",
- "permissions": {
- "organization": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}, - "cluster": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}, - "billing": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}, - "api_management": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}, - "alert_management": {
- "property1": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}, - "property2": {
- "get": true,
- "put": true,
- "post": true,
- "patch": true,
- "delete": true
}
}
}
}
], - "state": "Pending",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z",
- "user_id": "string",
- "invitation_link": "string"
}
}
Get Plan Details
Authorizations:
path Parameters
id required | string non-empty ^[1-9][0-9]*$ ID is the organization id |
Responses
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "current_api_calls": 0,
- "current_apis": 0,
- "current_applications": 0,
- "current_members": 0,
- "max_api_calls": 0,
- "max_applications": 0,
- "plan_expire_time": "2019-08-24T14:15:22Z",
- "plan_name": "string"
}
}
List Regions
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "count": 0,
- "list": [
- {
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "name": "string",
- "provider": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z"
}
]
}
}
Resend verification email to user
Authorizations:
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
- Payload
{- "user_id": "string"
}
Response samples
- 200
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Callback API for the Identity Server
Authorizations:
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
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "error": "string",
- "payload": {
- "avatar_url": "string",
- "connection": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "email": "string",
- "first_name": "string",
- "id": "string",
- "last_name": "string",
- "org_ids": [
- "string"
], - "members": [
- {
- "created_at": "2019-08-24T14:15:22Z",
- "first_name": "string",
- "id": "string",
- "last_name": "string",
- "org_id": "string",
- "roles": [
- {
- "id": "string",
- "name": "string",
- "org_id": "string",
- "owner": true,
- "scope": "organization",
- "permissions": {
- "organization": {
- "property1": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}, - "property2": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}
}, - "cluster": {
- "property1": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}, - "property2": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}
}, - "billing": {
- "property1": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}, - "property2": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}
}, - "api_management": {
- "property1": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}, - "property2": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}
}, - "alert_management": {
- "property1": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}, - "property2": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}
}
}
}
], - "state": "Pending",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z",
- "user_id": "string"
}
], - "product_tour": {
- "dismiss": true,
- "checklist": [
- {
- "done": true,
- "title": "string"
}
]
}, - "updated_at": "2019-08-24T14:15:22Z"
}, - "status": {
- "code": 0,
- "message": "OK"
}
}
}
Response samples
- 200
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "error": "string",
- "payload": {
- "avatar_url": "string",
- "connection": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "email": "string",
- "first_name": "string",
- "id": "string",
- "last_name": "string",
- "org_ids": [
- "string"
], - "members": [
- {
- "created_at": "2019-08-24T14:15:22Z",
- "first_name": "string",
- "id": "string",
- "last_name": "string",
- "org_id": "string",
- "roles": [
- {
- "id": "string",
- "name": "string",
- "org_id": "string",
- "owner": true,
- "scope": "organization",
- "permissions": {
- "organization": {
- "property1": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}, - "property2": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}
}, - "cluster": {
- "property1": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}, - "property2": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}
}, - "billing": {
- "property1": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}, - "property2": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}
}, - "api_management": {
- "property1": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}, - "property2": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}
}, - "alert_management": {
- "property1": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}, - "property2": {
- "get": null,
- "put": null,
- "post": null,
- "patch": null,
- "delete": null
}
}
}
}
], - "state": "Pending",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z",
- "user_id": "string"
}
], - "product_tour": {
- "dismiss": true,
- "checklist": [
- {
- "done": true,
- "title": "string"
}
]
}, - "updated_at": "2019-08-24T14:15:22Z"
}, - "status": {
- "code": 0,
- "message": "OK"
}
}
}
Update User Profile
Authorizations:
Request Body schema: application/json
first_name required | string [ 1 .. 150 ] characters |
last_name required | string [ 1 .. 150 ] characters |
Responses
Request samples
- Payload
{- "first_name": "string",
- "last_name": "string"
}
Response samples
- 200
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Update User Password
Authorizations:
Request Body schema: application/json
old_password required | string non-empty |
new_password required | string non-empty |
Responses
Request samples
- Payload
{- "old_password": "string",
- "new_password": "string"
}
Response samples
- 200
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Update Product Tour Progress For the Current User
Authorizations:
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
- Payload
{- "dismiss": true,
- "checklist": [
- {
- "done": true,
- "title": "string"
}
]
}
Response samples
- 200
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "dismiss": true,
- "checklist": [
- {
- "done": true,
- "title": "string"
}
]
}
}
Create Personal Access Token
Authorizations:
Request Body schema: application/json
expire required | integer <int64> |
notes | string <= 256 characters Notes is the description for the token. |
Responses
Request samples
- Payload
{- "expire": 0,
- "notes": "string"
}
Response samples
- 200
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "id": "string",
- "access_token": "string"
}
}
Create Service Registry
Authorizations:
path Parameters
cluster_id required | string non-empty ^[1-9][0-9]*$ ClusterID is the cluster id |
Request Body schema: application/json
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
- Payload
{- "type": "kubernetes",
- "kubernetes": {
- "api_server": {
- "scheme": "http",
- "host": "string",
- "port": 1
}, - "namespace_selector": {
- "operator": "match",
- "patterns": [
- "string"
]
}, - "endpoints_label_selectors": [
- {
- "key": "string",
- "operator": "equal",
- "value": "string"
}
], - "service_account_token_file": "string"
}, - "name": "string",
- "enabled": false
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "name": "string",
- "enabled": false,
- "type": "kubernetes",
- "kubernetes": {
- "api_server": {
- "scheme": "http",
- "host": "string",
- "port": 1
}, - "namespace_selector": {
- "operator": "match",
- "patterns": [
- "string"
]
}, - "endpoints_label_selectors": [
- {
- "key": "string",
- "operator": "equal",
- "value": "string"
}
], - "service_account_token_file": "string"
}, - "id": "string",
- "cluster_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "status": 0
}
}
List Service Registries
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "count": 0,
- "list": [
- {
- "name": "string",
- "enabled": false,
- "type": "kubernetes",
- "kubernetes": {
- "api_server": {
- "scheme": "http",
- "host": "string",
- "port": 1
}, - "namespace_selector": {
- "operator": "match",
- "patterns": [
- "string"
]
}, - "endpoints_label_selectors": [
- {
- "key": "string",
- "operator": "equal",
- "value": "string"
}
], - "service_account_token_file": "string"
}, - "id": "string",
- "cluster_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "status": 0
}
]
}
}
Get Service Registry Details
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "name": "string",
- "enabled": false,
- "type": "kubernetes",
- "kubernetes": {
- "api_server": {
- "scheme": "http",
- "host": "string",
- "port": 1
}, - "namespace_selector": {
- "operator": "match",
- "patterns": [
- "string"
]
}, - "endpoints_label_selectors": [
- {
- "key": "string",
- "operator": "equal",
- "value": "string"
}
], - "service_account_token_file": "string"
}, - "id": "string",
- "cluster_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "status": 0
}
}
Update Service Registry
Authorizations:
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
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
- Payload
{- "type": "kubernetes",
- "kubernetes": {
- "api_server": {
- "scheme": "http",
- "host": "string",
- "port": 1
}, - "namespace_selector": {
- "operator": "match",
- "patterns": [
- "string"
]
}, - "endpoints_label_selectors": [
- {
- "key": "string",
- "operator": "equal",
- "value": "string"
}
], - "service_account_token_file": "string"
}, - "name": "string",
- "enabled": false
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Delete Service Registry
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
List Labels
Authorizations:
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
- 200
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": [
- [
- "string"
]
]
}
List Canary Release Rules
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "count": 0,
- "list": [
- {
- "name": "string",
- "state": "paused",
- "type": "percent",
- "canary_upstream_version": "string",
- "percent": 1,
- "expressions": [
- {
- "subject": "header",
- "name": "string",
- "operator": "equal",
- "value": "string"
}
], - "app_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z"
}
]
}
}
Create Canary Release Rule
Authorizations:
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
- Payload
{- "name": "string",
- "state": "paused",
- "type": "percent",
- "canary_upstream_version": "string",
- "percent": 1,
- "expressions": [
- {
- "subject": "header",
- "name": "string",
- "operator": "equal",
- "value": "string"
}
]
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "name": "string",
- "state": "paused",
- "type": "percent",
- "canary_upstream_version": "string",
- "percent": 1,
- "expressions": [
- {
- "subject": "header",
- "name": "string",
- "operator": "equal",
- "value": "string"
}
], - "app_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z"
}
}
Get Canary Release Rule
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "name": "string",
- "state": "paused",
- "type": "percent",
- "canary_upstream_version": "string",
- "percent": 1,
- "expressions": [
- {
- "subject": "header",
- "name": "string",
- "operator": "equal",
- "value": "string"
}
], - "app_id": "string",
- "created_at": "2019-08-24T14:15:22Z",
- "id": "string",
- "status": 0,
- "updated_at": "2019-08-24T14:15:22Z"
}
}
Update Canary Release Rule
Authorizations:
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
- Payload
{- "name": "string",
- "state": "paused",
- "type": "percent",
- "canary_upstream_version": "string",
- "percent": 1,
- "expressions": [
- {
- "subject": "header",
- "name": "string",
- "operator": "equal",
- "value": "string"
}
]
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Delete Canary Release Rule
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
List Log Collection Plans
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "count": 0,
- "list": [
- {
- "name": "my-http-logger",
- "description": "my-http-logger is log collection for cloud team.",
- "type": "http-logger",
- "spec": {
- "uri": "string",
- "auth_header": "Bearer xxxxx",
- "include_req_body": true,
- "include_resp_body": true,
- "ssl_verify": true,
- "concat_method": "json",
- "log_format": "Default JSON Log",
- "custom_log_format": {
- "property1": "string",
- "property2": "string"
}
}, - "cluster_id": "string",
- "id": "string",
- "use_status": "In Use",
- "status": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
]
}
}
Create Log Collection
Authorizations:
path Parameters
cluster_id required | string non-empty ^[1-9][0-9]*$ ClusterID is the cluster id |
Request Body schema: application/json
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
- Payload
{- "type": "kafka-logger",
- "spec": {
- "brokers": [
- {
- "host": "string",
- "port": 1
}
], - "topic": "string",
- "producer_mode": "Asynchronous",
- "partition_key": "string",
- "producer_acknowledgement": "Leader ACK",
- "timeout": 3,
- "log_format": "Default JSON Log",
- "custom_log_format": {
- "property1": "string",
- "property2": "string"
}, - "include_req_body": false,
- "include_resp_body": false,
- "producer_message_batch_size": 1048576,
- "producer_message_batch_number": 200,
- "producer_message_queue_buffering_time": 1,
- "producer_message_queue_max_messages": 50000
}, - "name": "my-http-logger",
- "description": "my-http-logger is log collection for cloud team."
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "name": "my-http-logger",
- "description": "my-http-logger is log collection for cloud team.",
- "type": "http-logger",
- "spec": {
- "uri": "string",
- "auth_header": "Bearer xxxxx",
- "include_req_body": true,
- "include_resp_body": true,
- "ssl_verify": true,
- "concat_method": "json",
- "log_format": "Default JSON Log",
- "custom_log_format": {
- "property1": "string",
- "property2": "string"
}
}, - "cluster_id": "string",
- "id": "string",
- "use_status": "In Use",
- "status": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
}
Get Log Collection Plan
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "name": "my-http-logger",
- "description": "my-http-logger is log collection for cloud team.",
- "type": "http-logger",
- "spec": {
- "uri": "string",
- "auth_header": "Bearer xxxxx",
- "include_req_body": true,
- "include_resp_body": true,
- "ssl_verify": true,
- "concat_method": "json",
- "log_format": "Default JSON Log",
- "custom_log_format": {
- "property1": "string",
- "property2": "string"
}
}, - "cluster_id": "string",
- "id": "string",
- "use_status": "In Use",
- "status": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
}
Update Log Collection Plan
Authorizations:
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
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
- Payload
{- "type": "kafka-logger",
- "spec": {
- "brokers": [
- {
- "host": "string",
- "port": 1
}
], - "topic": "string",
- "producer_mode": "Asynchronous",
- "partition_key": "string",
- "producer_acknowledgement": "Leader ACK",
- "timeout": 3,
- "log_format": "Default JSON Log",
- "custom_log_format": {
- "property1": "string",
- "property2": "string"
}, - "include_req_body": false,
- "include_resp_body": false,
- "producer_message_batch_size": 1048576,
- "producer_message_batch_number": 200,
- "producer_message_queue_buffering_time": 1,
- "producer_message_queue_max_messages": 50000
}, - "name": "my-http-logger",
- "description": "my-http-logger is log collection for cloud team."
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Delete Log Collection Plan
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
List Roles
Authorizations:
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
- 200
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": [
- {
- "id": "string",
- "name": "string",
- "org_id": "string",
- "owner": true,
- "scope": "string"
}
]
}
Dump the resource of the given type and id
Authorizations:
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
- 200
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Create AlertPolicy
Authorizations:
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
- Payload
{- "description": "string",
- "name": "string"
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "id": "string"
}
}
Get All Alert Policy
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "count": 0,
- "list": [
- {
- "id": "string",
- "name": "string",
- "channels": [
- "string"
], - "severity": "high",
- "disabled": false,
- "description": "string",
- "update_time": "2019-08-24T14:15:22Z",
- "can_on": true
}
]
}
}
Get Alert Policy
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "id": "string",
- "cluster_id": "string",
- "description": "string",
- "name": "string",
- "disabled": false,
- "basic_info": {
- "description": "string",
- "title": "string",
- "detail": "string",
- "class": "cluster",
- "source": "string",
- "check_interval": 60,
- "severity": "high"
}, - "trigger_logical_operator": "All",
- "trigger_conditions": [
- {
- "event": "number_of_status_code",
- "event_config": {
- "duration": 1,
- "unit": "hour",
- "http_status_code": "string"
}, - "operator": "larger_equal",
- "value": 0
}
], - "webhook_notifications": [
- {
- "id": "string",
- "update_at": 0,
- "create_at": 0,
- "name": "string",
- "description": "string",
- "url": "string",
- "method": "POST",
- "skip_tls_verify": false,
- "headers": [
- {
- "name": "string",
- "value": "string"
}
], - "template": "string"
}
], - "create_at": 0,
- "update_at": 0
}
}
Delete Alert Policy
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Update AlertPolicy Basic Info
Authorizations:
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
- Payload
{- "description": "string",
- "title": "string",
- "detail": "string",
- "class": "cluster",
- "source": "string",
- "check_interval": 60,
- "severity": "high"
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Update AlertPolicy Disabled
Authorizations:
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
- Payload
{- "disabled": true
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Add Webhook To Alert Policy
Authorizations:
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
- Payload
{- "id": "string",
- "update_at": 0,
- "create_at": 0,
- "name": "string",
- "description": "string",
- "url": "string",
- "method": "POST",
- "skip_tls_verify": false,
- "headers": [
- {
- "name": "string",
- "value": "string"
}
], - "template": "string"
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Update Webhook In Alert Policy
Authorizations:
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
- Payload
{- "id": "string",
- "update_at": 0,
- "create_at": 0,
- "name": "string",
- "description": "string",
- "url": "string",
- "method": "POST",
- "skip_tls_verify": false,
- "headers": [
- {
- "name": "string",
- "value": "string"
}
], - "template": "string"
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Delete Webhook From Alert Policy
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
Add Trigger To Alert Policy
Authorizations:
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
- Payload
{- "trigger_logical_operator": "All",
- "trigger_conditions": [
- {
- "event": "number_of_status_code",
- "event_config": {
- "duration": 1,
- "unit": "hour",
- "http_status_code": "string"
}, - "operator": "larger_equal",
- "value": 0
}
]
}
Response samples
- 200
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}
list alert policies history
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "count": 0,
- "list": [
- {
- "id": "string",
- "alert_policy_id": "string",
- "notification_id": "string",
- "alert_policy_name": "string",
- "severity": "high",
- "description": "string",
- "channel": "webhook",
- "notification_time": "2019-08-24T14:15:22Z",
- "template": "string",
- "result": "pass"
}
]
}
}
get alert policies history
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "request": "string",
- "response": "string"
}
}
Get Service Admin List
Authorizations:
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
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}, - "payload": {
- "count": 0,
- "list": [
- {
- "email": "string",
- "name": "string",
- "last_update_time": 0
}
]
}
}
Add Service Admins
Authorizations:
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)
|
Responses
Request samples
- Payload
{- "items": [
- {
- "member_id": "string"
}
]
}
Response samples
- 200
- default
{- "error": "string",
- "status": {
- "code": 0,
- "message": "OK"
}
}