API7 Enterprise Admin APIs (3.2.16.5)
Download OpenAPI specification:Download
API7 Enterprise Admin APIs are RESTful APIs that allow you to create and manage API7 resources.
Create a published service on a gateway group.
IAM Action: gateway:CreatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/*
Authorizations:
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
name | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
type | string Default: "http" Enum: "http" "stream" |
hosts | Array of strings [ 1 .. 32 ] items unique The hosts for the service to accept incoming requests. |
path_prefix | string [ 1 .. 4096 ] characters ^/ The listening path prefix of the service. |
strip_path_prefix | boolean Default: true Weather strip the path prefix or not when proxying the request to the upstream. |
object The upstream contains necessary information for the gateway to proxy request to the backend service. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "stream",
- "upstream": {
- "name": "default",
- "scheme": "tcp",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "last_published": 0,
- "published_gateway_groups_count": 0,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List all published services on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" "last_published" "name" |
search | string The search keyword. |
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
runtime_type | string Enum: "normal" "canary" |
unhealthy_nodes | Array of strings Items Enum: "unhealthy_nodes_exists" "no_unhealthy_nodes" |
object non-empty | |
hosts | Array of strings |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "last_published": 0,
- "published_gateway_groups_count": 0,
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published service. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "last_published": 0,
- "published_gateway_groups_count": 0,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Updatea published service(without publishing).
IAM Action: gateway:UpdatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published service. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
name | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
type | string Default: "http" Enum: "http" "stream" |
hosts | Array of strings [ 1 .. 32 ] items unique The hosts for the service to accept incoming requests. |
path_prefix | string [ 1 .. 4096 ] characters ^/ The listening path prefix of the service. |
strip_path_prefix | boolean Default: true Weather strip the path prefix or not when proxying the request to the upstream. |
object The upstream contains necessary information for the gateway to proxy request to the backend service. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "stream",
- "upstream": {
- "name": "default",
- "scheme": "tcp",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "last_published": 0,
- "published_gateway_groups_count": 0,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Patch a published service on a gateway group.
IAM Action: gateway:UpdatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published service. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
op required | string Enum: "add" "replace" The operation to be performed |
path required | string A JSON Pointer path to the value you wish to modify or add, see https://jsonpatch.com/#json-pointer for more information |
value required | any The value to add or replace, can be any type |
Responses
Request samples
- Payload
[- {
- "op": "add",
- "path": "string",
- "value": null
}
]
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "last_published": 0,
- "published_gateway_groups_count": 0,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a published service on a gateway group.
IAM Action: gateway:DeletePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published service. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Import services based on OpenAPI Specification.
IAM Action: gateway:CreatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/*
Authorizations:
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
name | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
type | string Default: "http" Enum: "http" "stream" |
hosts | Array of strings [ 1 .. 32 ] items unique The hosts for the service to accept incoming requests. |
path_prefix | string [ 1 .. 4096 ] characters ^/ The listening path prefix of the service. |
strip_path_prefix | boolean Default: true Weather strip the path prefix or not when proxying the request to the upstream. |
object The upstream contains necessary information for the gateway to proxy request to the backend service. | |
Array of objects non-empty unique |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "stream",
- "upstream": {
- "name": "default",
- "scheme": "tcp",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "routes": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}
}
]
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "service_id": "string",
- "version": "string",
- "created_at": 0,
- "gateway_group_name": "string",
- "gateway_group_id": "string",
- "unhealthy_nodes_count": 0,
- "status": 0
}, - "warning_msg": "string"
}
Convert OpenAPI Specification to service and route resources.
Authorizations:
Request Body schema: application/json
raw_openapi required | string The raw OpenAPI. |
Responses
Request samples
- Payload
{- "raw_openapi": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "routes": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}
}
]
}, - "warning_msg": "string"
}
Create a route in a published service on a gateway group.
IAM Action: gateway:UpdatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
name required | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
methods | Array of strings [ 1 .. 9 ] items unique Items Enum: "GET" "POST" "PUT" "DELETE" "PATCH" "HEAD" "OPTIONS" "TRACE" The allowed HTTP methods to access the route. If empty, all HTTP methods are allowed. |
vars | Array of any Matches based on the specified variables consistent with variables in Nginx. Takes the form [[var, operator, val], [var, operator, val], ...]]. Note that this is case sensitive when matching a cookie name. See https://github.com/api7/lua-resty-expr for more details. |
paths required | Array of strings [ 1 .. 64 ] items [ items [ 1 .. 4096 ] characters ^/ ] The URI paths that can be matched to the API. |
priority | integer Default: 0 If different Routes matches to the same uri, then the Route is matched based on its priority. A higher value corresponds to higher priority. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
enable_websocket | boolean Define whether to enable Websocket for the route. |
object The timeout settings for connecting to, and sending and receiving messages to and from the upstream (in seconds). | |
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List all routes in a published service.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
query Parameters
service_id | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published service. |
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a route in a published servcie on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published route. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update a route in a published service on a gateway group.
IAM Action: gateway:UpdatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published route. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
name required | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
methods | Array of strings [ 1 .. 9 ] items unique Items Enum: "GET" "POST" "PUT" "DELETE" "PATCH" "HEAD" "OPTIONS" "TRACE" The allowed HTTP methods to access the route. If empty, all HTTP methods are allowed. |
vars | Array of any Matches based on the specified variables consistent with variables in Nginx. Takes the form [[var, operator, val], [var, operator, val], ...]]. Note that this is case sensitive when matching a cookie name. See https://github.com/api7/lua-resty-expr for more details. |
paths required | Array of strings [ 1 .. 64 ] items [ items [ 1 .. 4096 ] characters ^/ ] The URI paths that can be matched to the API. |
priority | integer Default: 0 If different Routes matches to the same uri, then the Route is matched based on its priority. A higher value corresponds to higher priority. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
enable_websocket | boolean Define whether to enable Websocket for the route. |
object The timeout settings for connecting to, and sending and receiving messages to and from the upstream (in seconds). | |
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Patch a route in a published service on a gateway group.
IAM Action: gateway:UpdatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published route. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
op required | string Enum: "add" "replace" The operation to be performed |
path required | string A JSON Pointer path to the value you wish to modify or add, see https://jsonpatch.com/#json-pointer for more information |
value required | any The value to add or replace, can be any type |
Responses
Request samples
- Payload
[- {
- "op": "add",
- "path": "string",
- "value": null
}
]
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a route in a published service on a gateway group.
IAM Action: gateway:UpdatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published route. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Create a stream route in a published service on a gateway group.
IAM Action: gateway:UpdatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
name required | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string) | |
(IPAddress (IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string))) or Domain (string) | |
server_port | integer <= 65535 |
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List all stream routes in a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
query Parameters
service_id | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published service. |
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a stream stream route in a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
stream_route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published stream route. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update a stream route in a published service on a gateway group.
IAM Action: gateway:UpdatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
stream_route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published stream route. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
name required | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string) | |
(IPAddress (IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string))) or Domain (string) | |
server_port | integer <= 65535 |
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a stream route in a published service on a gateway group.
IAM Action: gateway:UpdatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
stream_route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published stream route. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
List all published services in a gateway group. Deprecated
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Deprecated, you can use GET /apisix/admin/services
for instead.
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
query Parameters
runtime_type | string Enum: "normal" "canary" |
unhealthy_nodes | Array of strings Items Enum: "unhealthy_nodes_exists" "no_unhealthy_nodes" |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
page | integer <int64> >= 1 The page number, starting from 1. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" "publish_time" "name" |
search | string The search keyword. |
object non-empty | |
hosts | Array of strings |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "service_id": "string",
- "version": "string",
- "created_at": 0,
- "gateway_group_name": "string",
- "gateway_group_id": "string",
- "unhealthy_nodes_count": 0,
- "status": 0
}
], - "total": 0
}
Get a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
Responses
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "service_id": "string",
- "version": "string",
- "created_at": 0,
- "gateway_group_name": "string",
- "gateway_group_id": "string",
- "unhealthy_nodes_count": 0,
- "status": 0
}, - "warning_msg": "string"
}
Delete a published service on a gateway group.
IAM Action: gateway:DeletePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
Responses
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string"
}
List all routes of published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "route_id": "string",
- "service_version_id": "string"
}
], - "total": 0
}
Get a route in a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the route template. |
Responses
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "route_id": "string",
- "service_version_id": "string"
}, - "warning_msg": "string"
}
List all stream routes of a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "stream_route_id": "string",
- "service_version_id": "string"
}
], - "total": 0
}
Get a stream route in a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
stream_route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the stream route template. |
Responses
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "stream_route_id": "string",
- "service_version_id": "string"
}, - "warning_msg": "string"
}
List all history versions of a published services on a gateway group by service ID.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
query Parameters
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "publish_time" Value: "publish_time" |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "service_id": "string",
- "version": "string",
- "created_at": 0,
- "publish_time": "string"
}
], - "total": 0
}
Fetch service runtime configurations of a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
Responses
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "status": 0,
- "plugins": { }
}, - "warning_msg": "string"
}
Update service runtime configurations of a published service on a gateway group.
IAM Action: gateway:UpdatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
query Parameters
dry-run | string Value: "all" The flag that indicates whether to run the operation in dry-run mode. |
Request Body schema: application/json
op required | string Enum: "add" "replace" The operation to be performed |
path required | string A JSON Pointer path to the value you wish to modify or add, see https://jsonpatch.com/#json-pointer for more information |
value required | any The value to add or replace, can be any type |
Responses
Request samples
- Payload
[- {
- "op": "add",
- "path": "string",
- "value": null
}
]
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "status": 0,
- "plugins": { }
}, - "warning_msg": "string"
}
Get healthcheck status for the upstream of a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
Responses
Response samples
- 200
- default
{- "value": {
- "httpbin.com:80": {
- "host": "httpbin.com",
- "port": 80,
- "total": 1,
- "healthy": 1,
- "unhealthy": 0,
- "unknown": 0,
- "updated_at": 0,
- "gateway_instances": [
- {
- "id": "xxx-yyy-zzz",
- "hostname": "api7ee3-apisix-699b68db7f-cxgcw",
- "status": "healthy",
- "created_at": 0,
- "updated_at": 0
}
]
}
}
}
List all published services connected to a service registry.
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" "publish_time" "name" |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "service_id": "string",
- "version": "string",
- "created_at": 0,
- "gateway_group_name": "string",
- "gateway_group_id": "string",
- "unhealthy_nodes_count": 0,
- "status": 0
}
], - "total": 0
}
Check service conflict.
Authorizations:
Request Body schema: application/json
non-emptycreate_new_version | boolean Whether to create a new service version for the updated service. |
gateway_group_id | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
Array of objects non-empty |
Responses
Request samples
- Payload
{- "create_new_version": true,
- "gateway_group_id": "string",
- "services": [
- {
- "name": "string",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "service_id": "string",
- "version": "string",
- "service_version_id": "string",
- "status": 0,
- "routes": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string"
}
]
}
]
}
Response samples
- 200
- 400
- default
{- "value": {
- "duplicate": [
- [
- {
- "service_id": "string",
- "service_name": "string",
- "route_id": "string",
- "route_name": "string",
- "url": "string"
}
]
], - "overlapping": [
- [
- {
- "service_id": "string",
- "service_name": "string",
- "route_id": "string",
- "route_name": "string",
- "url": "string"
}
]
]
}, - "warning_msg": "string"
}
Create a service template.
IAM Action: gateway:CreateServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/*
Authorizations:
Request Body schema: application/json
name | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
type | string Default: "http" Enum: "http" "stream" |
hosts | Array of strings [ 1 .. 32 ] items unique The hosts for the service to accept incoming requests. |
path_prefix | string [ 1 .. 4096 ] characters ^/ The listening path prefix of the service. |
strip_path_prefix | boolean Default: true Weather strip the path prefix or not when proxying the request to the upstream. |
object The upstream contains necessary information for the gateway to proxy request to the backend service. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "stream",
- "upstream": {
- "name": "default",
- "scheme": "tcp",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "last_published": 0,
- "published_gateway_groups_count": 0,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Get all service templates.
IAM Action: gateway:GetServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" "last_published" "name" |
search | string The search keyword. |
object non-empty | |
gateway_group_id | string >= 1 |
last_publish_start_at | integer >= 0 |
last_publish_end_at | integer >= 0 |
type | string Enum: "http" "stream" Example: type=http |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "last_published": 0,
- "published_gateway_groups_count": 0,
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a service template by ID.
IAM Action: gateway:GetServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "last_published": 0,
- "published_gateway_groups_count": 0,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update a service template by ID.
IAM Action: gateway:UpdateServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
Request Body schema: application/json
name | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
type | string Default: "http" Enum: "http" "stream" |
hosts | Array of strings [ 1 .. 32 ] items unique The hosts for the service to accept incoming requests. |
path_prefix | string [ 1 .. 4096 ] characters ^/ The listening path prefix of the service. |
strip_path_prefix | boolean Default: true Weather strip the path prefix or not when proxying the request to the upstream. |
object The upstream contains necessary information for the gateway to proxy request to the backend service. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "stream",
- "upstream": {
- "name": "default",
- "scheme": "tcp",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "last_published": 0,
- "published_gateway_groups_count": 0,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Patch a service template by ID.
IAM Action: gateway:UpdateServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
query Parameters
dry-run | string Value: "all" The flag that indicates whether to run the operation in dry-run mode. |
Request Body schema: application/json
op required | string Enum: "add" "replace" The operation to be performed |
path required | string A JSON Pointer path to the value you wish to modify or add, see https://jsonpatch.com/#json-pointer for more information |
value required | any The value to add or replace, can be any type |
Responses
Request samples
- Payload
[- {
- "op": "add",
- "path": "string",
- "value": null
}
]
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "last_published": 0,
- "published_gateway_groups_count": 0,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a service template.
IAM Action: gateway:DeleteServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Generate an OpenAPI specification from service templates.
IAM Action: gateway:GetServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
query Parameters
scope | string Enum: "partial" "all" The scope of the service, which can be partial or all. |
Request Body schema: application/json
service_ids | Array of strings[ items [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ ] The service ID list. |
required | object |
Array of objects |
Responses
Request samples
- Payload
{- "service_ids": [
- "string"
], - "info": {
- "title": "string",
- "version": "string",
- "description": "string"
}, - "servers": [
- {
- "url": "string",
- "description": "string"
}
]
}
Response samples
- 200
- 400
- default
{- "value": {
- "openapi": "3.0.1",
- "info": {
- "title": "string",
- "version": "string",
- "description": "string"
}, - "servers": [
- {
- "url": "string",
- "description": "string"
}
], - "paths": {
- "property1": {
- "get": {
- "responses": { }
}, - "put": {
- "responses": { }
}, - "post": {
- "responses": { }
}, - "delete": {
- "responses": { }
}, - "options": {
- "responses": { }
}, - "head": {
- "responses": { }
}, - "patch": {
- "responses": { }
}
}, - "property2": {
- "get": {
- "responses": { }
}, - "put": {
- "responses": { }
}, - "post": {
- "responses": { }
}, - "delete": {
- "responses": { }
}, - "options": {
- "responses": { }
}, - "head": {
- "responses": { }
}, - "patch": {
- "responses": { }
}
}
}
}, - "warning_msg": "string"
}
Import service template based on OpenAPI Specification.
IAM Action: gateway:CreateServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/*
Authorizations:
Request Body schema: application/json
name | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
type | string Default: "http" Enum: "http" "stream" |
hosts | Array of strings [ 1 .. 32 ] items unique The hosts for the service to accept incoming requests. |
path_prefix | string [ 1 .. 4096 ] characters ^/ The listening path prefix of the service. |
strip_path_prefix | boolean Default: true Weather strip the path prefix or not when proxying the request to the upstream. |
object The upstream contains necessary information for the gateway to proxy request to the backend service. | |
Array of objects non-empty unique |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "stream",
- "upstream": {
- "name": "default",
- "scheme": "tcp",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "routes": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}
}
]
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "last_published": 0,
- "published_gateway_groups_count": 0,
- "created_at": 0,
- "updated_at": 0,
- "routes": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}
]
}, - "warning_msg": "string"
}
Convert OpenAPI Specification to service and route resources.
Authorizations:
Request Body schema: application/json
raw_openapi required | string The raw OpenAPI. |
Responses
Request samples
- Payload
{- "raw_openapi": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "routes": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}
}
]
}, - "warning_msg": "string"
}
Create a route in a service template.
IAM Action: gateway:UpdateServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
Request Body schema: application/json
name required | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
methods | Array of strings [ 1 .. 9 ] items unique Items Enum: "GET" "POST" "PUT" "DELETE" "PATCH" "HEAD" "OPTIONS" "TRACE" The allowed HTTP methods to access the route. If empty, all HTTP methods are allowed. |
vars | Array of any Matches based on the specified variables consistent with variables in Nginx. Takes the form [[var, operator, val], [var, operator, val], ...]]. Note that this is case sensitive when matching a cookie name. See https://github.com/api7/lua-resty-expr for more details. |
paths required | Array of strings [ 1 .. 64 ] items [ items [ 1 .. 4096 ] characters ^/ ] The URI paths that can be matched to the API. |
priority | integer Default: 0 If different Routes matches to the same uri, then the Route is matched based on its priority. A higher value corresponds to higher priority. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
enable_websocket | boolean Define whether to enable Websocket for the route. |
object The timeout settings for connecting to, and sending and receiving messages to and from the upstream (in seconds). | |
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Get all routes in a service template.
IAM Action: gateway:GetServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
query Parameters
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
object non-empty |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a route in all service templates.
IAM Action: gateway:GetServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the route template. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update a route in service template.
IAM Action: gateway:UpdateServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the route template. |
Request Body schema: application/json
name required | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
methods | Array of strings [ 1 .. 9 ] items unique Items Enum: "GET" "POST" "PUT" "DELETE" "PATCH" "HEAD" "OPTIONS" "TRACE" The allowed HTTP methods to access the route. If empty, all HTTP methods are allowed. |
vars | Array of any Matches based on the specified variables consistent with variables in Nginx. Takes the form [[var, operator, val], [var, operator, val], ...]]. Note that this is case sensitive when matching a cookie name. See https://github.com/api7/lua-resty-expr for more details. |
paths required | Array of strings [ 1 .. 64 ] items [ items [ 1 .. 4096 ] characters ^/ ] The URI paths that can be matched to the API. |
priority | integer Default: 0 If different Routes matches to the same uri, then the Route is matched based on its priority. A higher value corresponds to higher priority. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
enable_websocket | boolean Define whether to enable Websocket for the route. |
object The timeout settings for connecting to, and sending and receiving messages to and from the upstream (in seconds). | |
service_id | string^[a-zA-Z0-9-_.]+$|^$ The object ID. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Patch a route in service template.
IAM Action: gateway:UpdateServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the route template. |
Request Body schema: application/json
op required | string Enum: "add" "replace" The operation to be performed |
path required | string A JSON Pointer path to the value you wish to modify or add, see https://jsonpatch.com/#json-pointer for more information |
value required | any The value to add or replace, can be any type |
Responses
Request samples
- Payload
[- {
- "op": "add",
- "path": "string",
- "value": null
}
]
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a route in service template.
IAM Action: gateway:UpdateServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the route template. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Create a stream route in a service template.
IAM Action: gateway:UpdateServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
Request Body schema: application/json
name required | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string) | |
(IPAddress (IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string))) or Domain (string) | |
server_port | integer <= 65535 |
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List all stream routes in a service template.
IAM Action: gateway:GetServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
query Parameters
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
object non-empty |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a stream route in a service template.
IAM Action: gateway:GetServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
stream_route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the stream route template. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update a stream route in a service template.
IAM Action: gateway:UpdateServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
stream_route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the stream route template. |
Request Body schema: application/json
name required | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string) | |
(IPAddress (IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string))) or Domain (string) | |
server_port | integer <= 65535 |
service_id | string^[a-zA-Z0-9-_.]+$|^$ The object ID. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a stream route in a service template.
IAM Action: gateway:UpdateServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
stream_route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the stream route template. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
List all versions of a service.
IAM Action: gateway:GetServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
service_version_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service version. |
Responses
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "service_id": "string",
- "version": "string",
- "created_at": 0
}, - "warning_msg": "string"
}
Get all routes in a service version.
IAM Action: gateway:GetServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
service_version_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service version. |
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "route_id": "string",
- "service_version_id": "string"
}
], - "total": 0
}
Get a route in a service version.
IAM Action: gateway:GetServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
service_version_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service version. |
route_version_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the route version. |
Responses
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "route_id": "string",
- "service_version_id": "string"
}, - "warning_msg": "string"
}
Get all stream routes in a service versions.
IAM Action: gateway:GetServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
service_version_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service version. |
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "stream_route_id": "string",
- "service_version_id": "string"
}
], - "total": 0
}
Get a stream route in a service version.
IAM Action: gateway:GetServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
service_version_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service version. |
stream_route_version_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the stream route version. |
Responses
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "stream_route_id": "string",
- "service_version_id": "string"
}, - "warning_msg": "string"
}
Publish a service template to a gateway group.
IAM Action: gateway:PublishServices
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
Request Body schema: application/json
non-emptycreate_new_version | boolean Whether to create a new service version for the updated service. |
gateway_group_id | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
Array of objects or objects non-empty |
Responses
Request samples
- Payload
{- "create_new_version": true,
- "gateway_group_id": "string",
- "services": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "service_id": "string",
- "version": "string",
- "service_version_id": "string",
- "status": 0
}
]
}
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
List all published version of a service template on multiple gateway groups.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "service_id": "string",
- "version": "string",
- "created_at": 0,
- "gateway_group_name": "string",
- "gateway_group_id": "string",
- "unhealthy_nodes_count": 0,
- "status": 0
}
], - "total": 0
}
Get the service version name.
IAM Action: gateway:GetServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
version required | string |
Responses
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "service_id": "string",
- "version": "string",
- "created_at": 0
}, - "warning_msg": "string"
}
List all secret providers on a gateway group.
IAM Action: gateway:GetSecretProvider
, Resource: arn:api7:gateway:gatewaygroup/%s/secret_provider/%s
Authorizations:
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "uri": "string",
- "prefix": "string",
- "token": "string",
- "namespace": "string",
- "kv_version": "kv-v1",
- "authentication_method": "token",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "secret_manger": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a vault secret provider on a gateway group.
IAM Action: gateway:GetSecretProvider
, Resource: arn:api7:gateway:gatewaygroup/%s/secret_provider/%s
Authorizations:
path Parameters
secret_provider_id required | string |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "uri": "string",
- "prefix": "string",
- "token": "string",
- "namespace": "string",
- "kv_version": "kv-v1",
- "authentication_method": "token",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "secret_manger": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a vault secret provider on a gateway group.
IAM Action: gateway:DeleteSecretProvider
, Resource: arn:api7:gateway:gatewaygroup/%s/secret_provider/%s
Authorizations:
path Parameters
secret_provider_id required | string |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Update a vault secret provider on a gateway group.
IAM Action: gateway:PutSecretProvider
, Resource: arn:api7:gateway:gatewaygroup/%s/secret_provider/%s
Authorizations:
path Parameters
secret_provider_id required | string |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
uri required | string^[^/]+://([\da-zA-Z.-]+|\[[\da-fA-F:]+\])(:\d... |
prefix required | string |
token required | string |
namespace | string |
kv_version | string Default: "kv-v1" Value: "kv-v1" |
authentication_method | string Default: "token" Value: "token" |
desc | string <= 65536 characters The object description. |
object |
Responses
Request samples
- Payload
{- "uri": "string",
- "prefix": "string",
- "token": "string",
- "namespace": "string",
- "kv_version": "kv-v1",
- "authentication_method": "token",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}
}
Response samples
- 200
- 400
- default
{- "value": {
- "uri": "string",
- "prefix": "string",
- "token": "string",
- "namespace": "string",
- "kv_version": "kv-v1",
- "authentication_method": "token",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "secret_manger": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Get a aws secret provider on a gateway group.
IAM Action: gateway:GetSecretProvider
, Resource: arn:api7:gateway:gatewaygroup/%s/secret_provider/%s
Authorizations:
path Parameters
secret_provider_id required | string |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "uri": "string",
- "prefix": "string",
- "token": "string",
- "namespace": "string",
- "kv_version": "kv-v1",
- "authentication_method": "token",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "secret_manger": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a aws secret provider on a gateway group.
IAM Action: gateway:DeleteSecretProvider
, Resource: arn:api7:gateway:gatewaygroup/%s/secret_provider/%s
Authorizations:
path Parameters
secret_provider_id required | string |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Update a aws secret provider on a gateway group.
IAM Action: gateway:PutSecretProvider
, Resource: arn:api7:gateway:gatewaygroup/%s/secret_provider/%s
Authorizations:
path Parameters
secret_provider_id required | string |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
access_key_id required | string |
secret_access_key required | string |
session_token | string |
region | string Default: "us-east-1" |
endpoint_url | string^[^/]+://([\da-zA-Z.-]+|\[[\da-fA-F:]+\])(:\d... |
desc | string <= 65536 characters The object description. |
object |
Responses
Request samples
- Payload
{- "access_key_id": "string",
- "secret_access_key": "string",
- "session_token": "string",
- "region": "us-east-1",
- "endpoint_url": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}
}
Response samples
- 200
- 400
- default
{- "value": {
- "uri": "string",
- "prefix": "string",
- "token": "string",
- "namespace": "string",
- "kv_version": "kv-v1",
- "authentication_method": "token",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "secret_manger": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "customer": "API7",
- "effective_at": 1654012800,
- "expired_at": 1717171200,
- "max_dp_cores": 100,
- "feature_list": [
- "API7 Gateway"
], - "free_trial": true,
- "is_test_env": true,
- "issuance_date": 0,
- "runtime": {
- "status": "dp_core_exceeded",
- "dp_core_exceeded_start_at": 0,
- "dp_core_exceeded_end_at": 0,
- "max_dp_cores": 0
}, - "status": "normal"
}, - "warning_msg": "string"
}
Import or update the API7 Enterprise license.
IAM Action: iam:UpdateLicense
, Resource: arn:api7:iam:organization/*
Authorizations:
query Parameters
dry-run | string Value: "all" The flag that indicates whether to run the operation in dry-run mode. |
Request Body schema: application/json
data required | string Encoded license data. |
Responses
Request samples
- Payload
{- "data": "“xxxx1N-tNaTpttX-NjOdXjyg\""
}
Response samples
- 200
- 400
- default
{- "value": {
- "customer": "API7",
- "effective_at": 1654012800,
- "expired_at": 1717171200,
- "max_dp_cores": 100,
- "feature_list": [
- "API7 Gateway"
], - "free_trial": true,
- "is_test_env": true,
- "issuance_date": 0
}, - "warning_msg": "string"
}
Create a route in a published service on a gateway group.
IAM Action: gateway:UpdatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
name required | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
methods | Array of strings [ 1 .. 9 ] items unique Items Enum: "GET" "POST" "PUT" "DELETE" "PATCH" "HEAD" "OPTIONS" "TRACE" The allowed HTTP methods to access the route. If empty, all HTTP methods are allowed. |
vars | Array of any Matches based on the specified variables consistent with variables in Nginx. Takes the form [[var, operator, val], [var, operator, val], ...]]. Note that this is case sensitive when matching a cookie name. See https://github.com/api7/lua-resty-expr for more details. |
paths required | Array of strings [ 1 .. 64 ] items [ items [ 1 .. 4096 ] characters ^/ ] The URI paths that can be matched to the API. |
priority | integer Default: 0 If different Routes matches to the same uri, then the Route is matched based on its priority. A higher value corresponds to higher priority. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
enable_websocket | boolean Define whether to enable Websocket for the route. |
object The timeout settings for connecting to, and sending and receiving messages to and from the upstream (in seconds). | |
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List all routes in a published service.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
query Parameters
service_id | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published service. |
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a route in a published servcie on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published route. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update a route in a published service on a gateway group.
IAM Action: gateway:UpdatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published route. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
name required | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
methods | Array of strings [ 1 .. 9 ] items unique Items Enum: "GET" "POST" "PUT" "DELETE" "PATCH" "HEAD" "OPTIONS" "TRACE" The allowed HTTP methods to access the route. If empty, all HTTP methods are allowed. |
vars | Array of any Matches based on the specified variables consistent with variables in Nginx. Takes the form [[var, operator, val], [var, operator, val], ...]]. Note that this is case sensitive when matching a cookie name. See https://github.com/api7/lua-resty-expr for more details. |
paths required | Array of strings [ 1 .. 64 ] items [ items [ 1 .. 4096 ] characters ^/ ] The URI paths that can be matched to the API. |
priority | integer Default: 0 If different Routes matches to the same uri, then the Route is matched based on its priority. A higher value corresponds to higher priority. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
enable_websocket | boolean Define whether to enable Websocket for the route. |
object The timeout settings for connecting to, and sending and receiving messages to and from the upstream (in seconds). | |
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Patch a route in a published service on a gateway group.
IAM Action: gateway:UpdatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published route. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
op required | string Enum: "add" "replace" The operation to be performed |
path required | string A JSON Pointer path to the value you wish to modify or add, see https://jsonpatch.com/#json-pointer for more information |
value required | any The value to add or replace, can be any type |
Responses
Request samples
- Payload
[- {
- "op": "add",
- "path": "string",
- "value": null
}
]
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a route in a published service on a gateway group.
IAM Action: gateway:UpdatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published route. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Create a route in a service template.
IAM Action: gateway:UpdateServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
Request Body schema: application/json
name required | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
methods | Array of strings [ 1 .. 9 ] items unique Items Enum: "GET" "POST" "PUT" "DELETE" "PATCH" "HEAD" "OPTIONS" "TRACE" The allowed HTTP methods to access the route. If empty, all HTTP methods are allowed. |
vars | Array of any Matches based on the specified variables consistent with variables in Nginx. Takes the form [[var, operator, val], [var, operator, val], ...]]. Note that this is case sensitive when matching a cookie name. See https://github.com/api7/lua-resty-expr for more details. |
paths required | Array of strings [ 1 .. 64 ] items [ items [ 1 .. 4096 ] characters ^/ ] The URI paths that can be matched to the API. |
priority | integer Default: 0 If different Routes matches to the same uri, then the Route is matched based on its priority. A higher value corresponds to higher priority. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
enable_websocket | boolean Define whether to enable Websocket for the route. |
object The timeout settings for connecting to, and sending and receiving messages to and from the upstream (in seconds). | |
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Get all routes in a service template.
IAM Action: gateway:GetServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
query Parameters
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
object non-empty |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a route in all service templates.
IAM Action: gateway:GetServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the route template. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Patch a route in service template.
IAM Action: gateway:UpdateServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the route template. |
Request Body schema: application/json
op required | string Enum: "add" "replace" The operation to be performed |
path required | string A JSON Pointer path to the value you wish to modify or add, see https://jsonpatch.com/#json-pointer for more information |
value required | any The value to add or replace, can be any type |
Responses
Request samples
- Payload
[- {
- "op": "add",
- "path": "string",
- "value": null
}
]
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a route in service template.
IAM Action: gateway:UpdateServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the route template. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Get a route in a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the route template. |
Responses
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "route_id": "string",
- "service_version_id": "string"
}, - "warning_msg": "string"
}
Create a stream route in a published service on a gateway group.
IAM Action: gateway:UpdatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
name required | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string) | |
(IPAddress (IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string))) or Domain (string) | |
server_port | integer <= 65535 |
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List all stream routes in a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
query Parameters
service_id | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published service. |
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a stream stream route in a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
stream_route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published stream route. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update a stream route in a published service on a gateway group.
IAM Action: gateway:UpdatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
stream_route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published stream route. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
name required | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string) | |
(IPAddress (IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string))) or Domain (string) | |
server_port | integer <= 65535 |
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a stream route in a published service on a gateway group.
IAM Action: gateway:UpdatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
stream_route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the published stream route. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Create a stream route in a service template.
IAM Action: gateway:UpdateServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
Request Body schema: application/json
name required | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string) | |
(IPAddress (IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string))) or Domain (string) | |
server_port | integer <= 65535 |
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List all stream routes in a service template.
IAM Action: gateway:GetServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
query Parameters
service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
object non-empty |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a stream route in a service template.
IAM Action: gateway:GetServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
stream_route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the stream route template. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update a stream route in a service template.
IAM Action: gateway:UpdateServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
stream_route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the stream route template. |
Request Body schema: application/json
name required | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string) | |
(IPAddress (IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string))) or Domain (string) | |
server_port | integer <= 65535 |
service_id | string^[a-zA-Z0-9-_.]+$|^$ The object ID. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a stream route in a service template.
IAM Action: gateway:UpdateServiceTemplate
, Resource: arn:api7:gateway:servicetemplate/%s
Authorizations:
path Parameters
stream_route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the stream route template. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
List all stream routes of a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "stream_route_id": "string",
- "service_version_id": "string"
}
], - "total": 0
}
Get a stream route in a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
stream_route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the stream route template. |
Responses
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "stream_route_id": "string",
- "service_version_id": "string"
}, - "warning_msg": "string"
}
Create a SSL certificate.
IAM Action: gateway:CreateSSLCertificate
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
name | string [ 1 .. 65536 ] characters The object name. |
desc | string <= 65536 characters The object description. |
snis | Array of strings The SNI list for matching the SSL certificate. |
required | string or string |
Array of strings or strings = 1 items | |
object | |
type | string Enum: "server" "client" The SSL certificate purpose, either client (used for communicating with the upstream) or server (used for communicating with the client) |
object | |
required | string or string |
Array of strings or strings = 1 items |
Responses
Request samples
- Payload
{- "name": "string",
- "desc": "string",
- "snis": [
- "string"
], - "cert": "string",
- "certs": [
- "string"
], - "client": {
- "ca": "string",
- "depth": 1
}, - "type": "server",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "key": "string",
- "keys": [
- "string"
]
}
Response samples
- 200
{- "value": {
- "name": "string",
- "desc": "string",
- "snis": [
- "string"
], - "cert": "string",
- "certs": [
- "string"
], - "client": {
- "ca": "string",
- "depth": 1
}, - "type": "server",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "exptime": 0,
- "validity_start": 0,
- "validity_end": 0
}, - "warning_msg": "string"
}
List all SSL certificates on a gateway group.
IAM Action: gateway:GetSSLCertificate
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
object non-empty | |
type | string Enum: "client" "server" |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "desc": "string",
- "snis": [
- "string"
], - "cert": "string",
- "certs": [
- "string"
], - "client": {
- "ca": "string",
- "depth": 1
}, - "type": "server",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "exptime": 0,
- "validity_start": 0,
- "validity_end": 0
}
], - "total": 0
}
Get a SSL certificate on a gateway group.
IAM Action: gateway:GetSSLCertificate
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
ssl_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the SSL object. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "desc": "string",
- "snis": [
- "string"
], - "cert": "string",
- "certs": [
- "string"
], - "client": {
- "ca": "string",
- "depth": 1
}, - "type": "server",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "exptime": 0,
- "validity_start": 0,
- "validity_end": 0
}, - "warning_msg": "string"
}
Update a SSL certificate on a gateway group.
IAM Action: gateway:UpdateSSLCertificate
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
ssl_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the SSL object. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
name | string [ 1 .. 65536 ] characters The object name. |
desc | string <= 65536 characters The object description. |
snis | Array of strings The SNI list for matching the SSL certificate. |
required | string or string |
Array of strings or strings = 1 items | |
object | |
type | string Enum: "server" "client" The SSL certificate purpose, either client (used for communicating with the upstream) or server (used for communicating with the client) |
object | |
required | string or string |
Array of strings or strings = 1 items |
Responses
Request samples
- Payload
{- "name": "string",
- "desc": "string",
- "snis": [
- "string"
], - "cert": "string",
- "certs": [
- "string"
], - "client": {
- "ca": "string",
- "depth": 1
}, - "type": "server",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "key": "string",
- "keys": [
- "string"
]
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "desc": "string",
- "snis": [
- "string"
], - "cert": "string",
- "certs": [
- "string"
], - "client": {
- "ca": "string",
- "depth": 1
}, - "type": "server",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "exptime": 0,
- "validity_start": 0,
- "validity_end": 0
}, - "warning_msg": "string"
}
Delete a SSL certificate on a gateway group.
IAM Action: gateway:DeleteSSLCertificate
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
ssl_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the SSL object. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Parse a SSL certificate
Authorizations:
Request Body schema: application/json
required | string or string |
One of string^\$(secret|env|ENV):// |
Responses
Request samples
- Payload
{- "cert": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "snis": [
- "string"
], - "not_before": "2019-08-24T14:15:22Z",
- "not_after": "2019-08-24T14:15:22Z",
- "subject": "string",
- "issuer": "string",
- "serial_number": "string",
- "signature_algorithm": "string",
- "extensions": {
- "property1": "string",
- "property2": "string"
}
}, - "warning_msg": "string"
}
Create a consumer on a gateway group.
IAM Action: gateway:CreateConsumer
, Resource: arn:api7:gateway:gatewaygroup/%s/consumer/*
Authorizations:
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
username required | string [ 1 .. 512 ] characters ^[a-zA-Z0-9_\-]+$ |
plugins | object The key-value pairs which represent the plugins attached on the object. |
desc | string <= 65536 characters The object description. |
object |
Responses
Request samples
- Payload
{- "username": "string",
- "plugins": { },
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}
}
Response samples
- 200
- 400
- default
{- "value": {
- "username": "string",
- "plugins": { },
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List all consumers on a gateway group.
IAM Action: gateway:GetConsumer
, Resource: arn:api7:gateway:gatewaygroup/%s/consumer/%s
Authorizations:
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" "username" |
search | string The search keyword. |
object non-empty |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "username": "string",
- "plugins": { },
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a consumer on a gateway group.
IAM Action: gateway:GetConsumer
, Resource: arn:api7:gateway:gatewaygroup/%s/consumer/%s
Authorizations:
path Parameters
username required | string [ 1 .. 512 ] characters ^[a-zA-Z0-9_\-]+$ The unique identifier of the consumer. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "username": "string",
- "plugins": { },
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Create or update a consumer on a gateway group.
IAM Action: gateway:UpdateConsumer
, Resource: arn:api7:gateway:gatewaygroup/%s/consumer/%s
Authorizations:
path Parameters
username required | string [ 1 .. 512 ] characters ^[a-zA-Z0-9_\-]+$ The unique identifier of the consumer. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
username required | string [ 1 .. 512 ] characters ^[a-zA-Z0-9_\-]+$ |
plugins | object The key-value pairs which represent the plugins attached on the object. |
desc | string <= 65536 characters The object description. |
object |
Responses
Request samples
- Payload
{- "username": "string",
- "plugins": { },
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}
}
Response samples
- 200
- 400
- default
{- "value": {
- "username": "string",
- "plugins": { },
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a consumer.
IAM Action: gateway:DeleteConsumer
, Resource: arn:api7:gateway:gatewaygroup/%s/consumer/%s
Authorizations:
path Parameters
username required | string [ 1 .. 512 ] characters ^[a-zA-Z0-9_\-]+$ The unique identifier of the consumer. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Update a consumer on a gateway group.
IAM Action: gateway:UpdateConsumer
, Resource: arn:api7:gateway:gatewaygroup/%s/consumer/%s
Authorizations:
path Parameters
username required | string [ 1 .. 512 ] characters ^[a-zA-Z0-9_\-]+$ The unique identifier of the consumer. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
op required | string Enum: "add" "replace" The operation to be performed |
path required | string A JSON Pointer path to the value you wish to modify or add, see https://jsonpatch.com/#json-pointer for more information |
value required | any The value to add or replace, can be any type |
Responses
Request samples
- Payload
[- {
- "op": "add",
- "path": "string",
- "value": null
}
]
Response samples
- 200
- 400
- default
{- "value": {
- "username": "string",
- "plugins": { },
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Create a consumer credential on a gateway group.
IAM Action: gateway:CreateConsumerCredential
, Resource: arn:api7:gateway:gatewaygroup/%s/consumer/%s
Authorizations:
path Parameters
username required | string [ 1 .. 512 ] characters ^[a-zA-Z0-9_\-]+$ The unique identifier of the consumer. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
name required | string [ 1 .. 100 ] characters The object name. |
required | object or object or object or object |
desc | string <= 65536 characters The object description. |
object |
Responses
Request samples
- Payload
{- "name": "string",
- "plugins": {
- "key-auth": { },
- "basic-auth": { },
- "hmac-auth": { },
- "jwt-auth": { }
}, - "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "plugins": {
- "key-auth": { },
- "basic-auth": { },
- "hmac-auth": { },
- "jwt-auth": { }
}, - "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List all consumer credentials on a gateway group.
IAM Action: gateway:GetConsumerCredential
, Resource: arn:api7:gateway:gatewaygroup/%s/consumer/%s
Authorizations:
path Parameters
username required | string [ 1 .. 512 ] characters ^[a-zA-Z0-9_\-]+$ The unique identifier of the consumer. |
query Parameters
plugin_name | string [ 1 .. 100 ] characters the plugin name of the consumer credential. |
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" "name" |
search | string The search keyword. |
object non-empty |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "plugins": {
- "key-auth": { },
- "basic-auth": { },
- "hmac-auth": { },
- "jwt-auth": { }
}, - "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a consumer credential on a gateway group.
IAM Action: gateway:GetConsumerCredential
, Resource: arn:api7:gateway:gatewaygroup/%s/consumer/%s
Authorizations:
path Parameters
username required | string [ 1 .. 512 ] characters ^[a-zA-Z0-9_\-]+$ The unique identifier of the consumer. |
credential_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the consumer credential. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "plugins": {
- "key-auth": { },
- "basic-auth": { },
- "hmac-auth": { },
- "jwt-auth": { }
}, - "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Create or update a consumer credential on a gateway group.
IAM Action: gateway:UpdateConsumerCredential
, Resource: arn:api7:gateway:gatewaygroup/%s/consumer/%s
Authorizations:
path Parameters
username required | string [ 1 .. 512 ] characters ^[a-zA-Z0-9_\-]+$ The unique identifier of the consumer. |
credential_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the consumer credential. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
name required | string [ 1 .. 100 ] characters The object name. |
required | object or object or object or object |
desc | string <= 65536 characters The object description. |
object |
Responses
Request samples
- Payload
{- "name": "string",
- "plugins": {
- "key-auth": { },
- "basic-auth": { },
- "hmac-auth": { },
- "jwt-auth": { }
}, - "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "plugins": {
- "key-auth": { },
- "basic-auth": { },
- "hmac-auth": { },
- "jwt-auth": { }
}, - "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a consumer credential.
IAM Action: gateway:DeleteConsumerCredential
, Resource: arn:api7:gateway:gatewaygroup/%s/consumer/%s
Authorizations:
path Parameters
username required | string [ 1 .. 512 ] characters ^[a-zA-Z0-9_\-]+$ The unique identifier of the consumer. |
credential_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the consumer credential. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Create an API product in Provider Portal.
IAM Action: portal:CreateAPIProduct
, Resource: arn:api7:portal:apiproduct/*
Authorizations:
Request Body schema: application/json
name required | string [ 1 .. 100 ] characters The object name. |
raw_openapi required | string non-empty The content of the openapi yaml file. |
server_url required | string non-empty The server url, if its not defines on the openapi file, the user should specified it. |
Responses
Request samples
- Payload
{- "name": "string",
- "raw_openapi": "string",
- "server_url": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "raw_openapi": "string",
- "server_url": "string",
- "id": "string",
- "tags": [
- "string"
], - "desc": "string",
- "api_count": 0,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List all API products in Provider Portal.
IAM Action: portal:GetAPIProduct
, Resource: arn:api7:portal:apiproduct/%s
Authorizations:
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string",
- "list": [
- {
- "id": "string",
- "name": "string",
- "server_url": "string",
- "tags": [
- "string"
], - "desc": "string",
- "api_count": 0,
- "created_at": 0,
- "updated_at": 0
}
]
}
Get an API product in Provider Portal.
IAM Action: portal:GetAPIProduct
, Resource: arn:api7:portal:apiproduct/%s
Authorizations:
path Parameters
api_product_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ the unique identifier of the api product. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "raw_openapi": "string",
- "server_url": "string",
- "id": "string",
- "tags": [
- "string"
], - "desc": "string",
- "api_count": 0,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update an API product in Provider Portal.
IAM Action: portal:UpdateAPIProduct
, Resource: arn:api7:portal:apiproduct/%s
Authorizations:
path Parameters
api_product_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ the unique identifier of the api product. |
Request Body schema: application/json
name required | string [ 1 .. 100 ] characters The object name. |
raw_openapi required | string non-empty The content of the openapi yaml file. |
server_url required | string non-empty The server url, if its not defines on the openapi file, the user should specified it. |
Responses
Request samples
- Payload
{- "name": "string",
- "raw_openapi": "string",
- "server_url": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "raw_openapi": "string",
- "server_url": "string",
- "id": "string",
- "tags": [
- "string"
], - "desc": "string",
- "api_count": 0,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete an API product in Provider Portal.
IAM Action: portal:DeleteAPIProduct
, Resource: arn:api7:portal:apiproduct/%s
Authorizations:
path Parameters
api_product_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ the unique identifier of the api product. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
List all API products for Developer Portal.
Authorizations:
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string",
- "list": [
- {
- "id": "string",
- "name": "string",
- "server_url": "string",
- "tags": [
- "string"
], - "desc": "string",
- "api_count": 0,
- "created_at": 0,
- "updated_at": 0
}
]
}
Get an API Product for Developer Portal
Authorizations:
path Parameters
api_product_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ the unique identifier of the api product. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "raw_openapi": "string",
- "server_url": "string",
- "id": "string",
- "tags": [
- "string"
], - "desc": "string",
- "api_count": 0,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Create an API product in Provider Portal.
IAM Action: portal:CreateAPIProduct
, Resource: arn:api7:portal:apiproduct/*
Authorizations:
Request Body schema: application/json
name required | string [ 1 .. 100 ] characters The object name. |
raw_openapi required | string non-empty The content of the openapi yaml file. |
server_url required | string non-empty The server url, if its not defines on the openapi file, the user should specified it. |
Responses
Request samples
- Payload
{- "name": "string",
- "raw_openapi": "string",
- "server_url": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "raw_openapi": "string",
- "server_url": "string",
- "id": "string",
- "tags": [
- "string"
], - "desc": "string",
- "api_count": 0,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List all API products in Provider Portal.
IAM Action: portal:GetAPIProduct
, Resource: arn:api7:portal:apiproduct/%s
Authorizations:
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string",
- "list": [
- {
- "id": "string",
- "name": "string",
- "server_url": "string",
- "tags": [
- "string"
], - "desc": "string",
- "api_count": 0,
- "created_at": 0,
- "updated_at": 0
}
]
}
Get an API product in Provider Portal.
IAM Action: portal:GetAPIProduct
, Resource: arn:api7:portal:apiproduct/%s
Authorizations:
path Parameters
api_product_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ the unique identifier of the api product. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "raw_openapi": "string",
- "server_url": "string",
- "id": "string",
- "tags": [
- "string"
], - "desc": "string",
- "api_count": 0,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update an API product in Provider Portal.
IAM Action: portal:UpdateAPIProduct
, Resource: arn:api7:portal:apiproduct/%s
Authorizations:
path Parameters
api_product_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ the unique identifier of the api product. |
Request Body schema: application/json
name required | string [ 1 .. 100 ] characters The object name. |
raw_openapi required | string non-empty The content of the openapi yaml file. |
server_url required | string non-empty The server url, if its not defines on the openapi file, the user should specified it. |
Responses
Request samples
- Payload
{- "name": "string",
- "raw_openapi": "string",
- "server_url": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "raw_openapi": "string",
- "server_url": "string",
- "id": "string",
- "tags": [
- "string"
], - "desc": "string",
- "api_count": 0,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete an API product in Provider Portal.
IAM Action: portal:DeleteAPIProduct
, Resource: arn:api7:portal:apiproduct/%s
Authorizations:
path Parameters
api_product_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ the unique identifier of the api product. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
List all API products for Developer Portal.
Authorizations:
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string",
- "list": [
- {
- "id": "string",
- "name": "string",
- "server_url": "string",
- "tags": [
- "string"
], - "desc": "string",
- "api_count": 0,
- "created_at": 0,
- "updated_at": 0
}
]
}
Get an API Product for Developer Portal
Authorizations:
path Parameters
api_product_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ the unique identifier of the api product. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "raw_openapi": "string",
- "server_url": "string",
- "id": "string",
- "tags": [
- "string"
], - "desc": "string",
- "api_count": 0,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Create a global rule on a gateway group.
IAM Action: gateway:CreateGlobalPluginRule
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
plugins required | object The key-value pairs which represent the plugins attached on the object. |
Responses
Request samples
- Payload
{- "plugins": { }
}
Response samples
- 200
- 400
- default
{- "value": {
- "plugins": { },
- "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List all global rules on a gateway group.
IAM Action: gateway:GetGlobalPluginRule
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "plugins": { },
- "id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a global rule on a gateway group.
IAM Action: gateway:GetGlobalPluginRule
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
global_rule_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the global rule. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "plugins": { },
- "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update a global rule on a gateway group.
IAM Action: gateway:UpdateGlobalPluginRule
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
global_rule_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the global rule. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
plugins required | object The key-value pairs which represent the plugins attached on the object. |
Responses
Request samples
- Payload
{- "plugins": { }
}
Response samples
- 200
- 400
- default
{- "value": {
- "plugins": { },
- "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a global rule on a gateway group.
IAM Action: gateway:DeleteGlobalPluginRule
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
global_rule_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the global rule. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
List all plugin metadata on a gateway group.
IAM Action: gateway:GetPluginMetadata
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "property1": { },
- "property2": { }
}, - "warning_msg": "string"
}
Get a plugin metadata on a gateway group.
IAM Action: gateway:GetPluginMetadata
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
plugin_name required | string [ 1 .. 64 ] characters |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
return_default | boolean Default: false When set to true, the default value is returned when plugin metadata is not found. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Update a plugin metadata on a gateway group.
IAM Action: gateway:UpdatePluginMetadata
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
plugin_name required | string [ 1 .. 64 ] characters |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
The plugin metadata description.
Responses
Request samples
- Payload
{ }
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Delete a plugin metadata on a gateway group.
IAM Action: gateway:DeletePluginMetadata
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
plugin_name required | string [ 1 .. 64 ] characters |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
List all gateway instances on a gateway group.
IAM Action: gateway:GetGatewayInstance
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
query Parameters
order_by | string Default: "last_heartbeat_time" Enum: "created_at" "last_heartbeat_time" |
status | string Enum: "Healthy" "OutOfSync" "LostConnection" "Offline" The value of the instance status. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
page | integer <int64> >= 1 The page number, starting from 1. |
search | string The search keyword. |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "id": "string",
- "hostname": "string",
- "ip": "string",
- "gateway_group_id": "string",
- "version": "string",
- "ports": [
- 0
], - "last_heartbeat_time": 0,
- "last_retrieve_config_time": 0,
- "to_be_deleted_at": 0,
- "created_at": 0,
- "dataplane_certificate_expire_time": 0,
- "status": "Healthy",
- "cores": 0
}
], - "total": 0
}
Calculate the number of instances in different states of a gateway group.
IAM Action: gateway:GetGatewayInstance
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
field required | string Value: "status" |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
search | string The search keyword. |
Responses
Response samples
- 200
- default
{- "value": [
- {
- "key": "string",
- "count": 0
}
], - "warning_msg": "string"
}
Export the gateway instance core usage.
IAM Action: gateway:GetGatewayInstanceCore
, Resource: arn:api7:gateway:gatewaygroup/*
Authorizations:
query Parameters
begin_at required | integer <int64> The start time of gateway instance core usage. |
end_at required | integer <int64> The end time of gateway instance core usage. |
Responses
Response samples
- 400
{- "error_msg": "string"
}
List all gateway groups.
IAM Action: gateway:GetGatewayGroup
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
query Parameters
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
page | integer <int64> >= 1 The page number, starting from 1. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
object non-empty |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "id": "string",
- "type": "api7_gateway",
- "name": "string",
- "description": "string",
- "labels": {
- "property1": "string",
- "property2": "string"
}, - "enforce_service_publishing": true,
- "created_at": 0,
- "updated_at": 0,
- "config": {
- "control_plane_key_prefix": "string",
- "control_plane_user": "string",
- "control_plane_password": "string",
- "image_tag": "string"
}
}
], - "total": 0
}
Create a gateway group.
IAM Action: gateway:CreateGatewayGroup
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
Request Body schema: application/json
type | string Default: "api7_gateway" Enum: "api7_gateway" "api7_ingress_controller" |
name required | string [ 1 .. 100 ] characters The object name. |
description | string |
object | |
enforce_service_publishing | boolean Updating services directly on a gateway group bypass version control and rollback capabilities. |
Responses
Request samples
- Payload
{- "type": "api7_gateway",
- "name": "string",
- "description": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "enforce_service_publishing": true
}
Response samples
- 200
- default
{- "value": {
- "id": "string",
- "type": "api7_gateway",
- "name": "string",
- "description": "string",
- "labels": {
- "property1": "string",
- "property2": "string"
}, - "enforce_service_publishing": true,
- "created_at": 0,
- "updated_at": 0,
- "config": {
- "control_plane_key_prefix": "string",
- "control_plane_user": "string",
- "control_plane_password": "string",
- "image_tag": "string"
}
}, - "warning_msg": "string"
}
Count resources for the gateway group.
Authorizations:
path Parameters
resource_type required | string Enum: "ssl" "consumer" "gateway_instance" |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "id": "string",
- "type": "api7_gateway",
- "name": "string",
- "description": "string",
- "labels": {
- "property1": "string",
- "property2": "string"
}, - "enforce_service_publishing": true,
- "created_at": 0,
- "updated_at": 0,
- "config": {
- "control_plane_key_prefix": "string",
- "control_plane_user": "string",
- "control_plane_password": "string",
- "image_tag": "string"
}, - "count": 0
}
], - "total": 0
}
List SSL Usage in a gateway group
IAM Action: gateway:GetSSLCertificate
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
ssl_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the SSL object. |
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "service_id": "string",
- "service_name": "string",
- "gateway_group_id": "string",
- "upstream_name": "string",
- "ssl_id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
List Secret Provider Usage in a gateway group
IAM Action: gateway:GetSecretProvider
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
secret_manager required | string Enum: "vault" "aws" |
secret_provider_id required | string |
query Parameters
resource_type | string Enum: "consumer" "service" "route" "ssl" "global_rule" "consumer_credential" |
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "parent_id": "string",
- "resource_type": "string",
- "resource_id": "string",
- "resource_name": "string",
- "gateway_group_id": "string",
- "field": "string",
- "id": "string",
- "secret_manager": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Delete a gateway group.
IAM Action: gateway:DeleteGatewayGroup
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Responses
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string"
}
Update a gateway group.
IAM Action: gateway:UpdateGatewayGroup
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Request Body schema: application/json
name required | string [ 1 .. 100 ] characters The object name. |
description required | string |
object |
Responses
Request samples
- Payload
{- "name": "string",
- "description": "string",
- "labels": {
- "property1": "string",
- "property2": "string"
}
}
Response samples
- 200
- default
{- "value": {
- "id": "string",
- "type": "api7_gateway",
- "name": "string",
- "description": "string",
- "labels": {
- "property1": "string",
- "property2": "string"
}, - "enforce_service_publishing": true,
- "created_at": 0,
- "updated_at": 0,
- "config": {
- "control_plane_key_prefix": "string",
- "control_plane_user": "string",
- "control_plane_password": "string",
- "image_tag": "string"
}
}, - "warning_msg": "string"
}
Get a gateway group.
IAM Action: gateway:GetGatewayGroup
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Responses
Response samples
- 200
- default
{- "value": {
- "id": "string",
- "type": "api7_gateway",
- "name": "string",
- "description": "string",
- "labels": {
- "property1": "string",
- "property2": "string"
}, - "enforce_service_publishing": true,
- "created_at": 0,
- "updated_at": 0,
- "config": {
- "control_plane_key_prefix": "string",
- "control_plane_user": "string",
- "control_plane_password": "string",
- "image_tag": "string"
}
}, - "warning_msg": "string"
}
Generate an admin key for a gateway group.
IAM Action: gateway:UpdateGatewayGroup
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "key": "string"
}, - "warning_msg": "string"
}
Generate script to install the gateway instance by Docker.
IAM Action: gateway:CreateGatewayInstance
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
query Parameters
control_plane_address | string non-empty |
image | string non-empty |
http_port | integer Default: 9080 |
https_port | integer Default: 9443 |
name | string non-empty |
extra_args[] | Array of strings[ items non-empty ] Additional docker run arguments. |
Responses
Response samples
- 400
- default
{- "error_msg": "string"
}
Generate script to install the gateway instance by Helm in Kubernetes.
IAM Action: gateway:CreateGatewayInstance
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
query Parameters
control_plane_address | string non-empty |
name required | string |
namespace required | string |
service_account | string |
replicas | integer Default: 1 |
workers | integer |
cpu_limit | string |
memory_limit | string |
extra_values[] | Array of strings extra values to be passed to the helm chart, in the form of key=value |
Responses
Response samples
- 400
- default
{- "error_msg": "string"
}
Generate values.yaml to install the gateway instance by Helm in Kubernetes.
IAM Action: gateway:CreateGatewayInstance
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
query Parameters
control_plane_address | string non-empty |
name required | string |
namespace required | string |
service_account | string |
replicas | integer Default: 1 |
workers | integer |
cpu_limit | string |
memory_limit | string |
Responses
Response samples
- 400
- default
{- "error_msg": "string"
}
Issue a data plane certificate on a gateway group.
IAM Action: gateway:CreateGatewayInstance
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Responses
Response samples
- 200
- default
{- "value": {
- "id": "string",
- "certificate": "string",
- "private_key": "string",
- "expiry": 0
}, - "warning_msg": "string"
}
List all published services in a gateway group. Deprecated
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Deprecated, you can use GET /apisix/admin/services
for instead.
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
query Parameters
runtime_type | string Enum: "normal" "canary" |
unhealthy_nodes | Array of strings Items Enum: "unhealthy_nodes_exists" "no_unhealthy_nodes" |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
page | integer <int64> >= 1 The page number, starting from 1. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" "publish_time" "name" |
search | string The search keyword. |
object non-empty | |
hosts | Array of strings |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "service_id": "string",
- "version": "string",
- "created_at": 0,
- "gateway_group_name": "string",
- "gateway_group_id": "string",
- "unhealthy_nodes_count": 0,
- "status": 0
}
], - "total": 0
}
Get a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
Responses
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "service_id": "string",
- "version": "string",
- "created_at": 0,
- "gateway_group_name": "string",
- "gateway_group_id": "string",
- "unhealthy_nodes_count": 0,
- "status": 0
}, - "warning_msg": "string"
}
Delete a published service on a gateway group.
IAM Action: gateway:DeletePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
Responses
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string"
}
List all routes of published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "route_id": "string",
- "service_version_id": "string"
}
], - "total": 0
}
Get a route in a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the route template. |
Responses
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "plugins": { },
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "id": "string",
- "route_id": "string",
- "service_version_id": "string"
}, - "warning_msg": "string"
}
List all stream routes of a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "stream_route_id": "string",
- "service_version_id": "string"
}
], - "total": 0
}
Get a stream route in a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
stream_route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the stream route template. |
Responses
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "id": "string",
- "stream_route_id": "string",
- "service_version_id": "string"
}, - "warning_msg": "string"
}
List all history versions of a published services on a gateway group by service ID.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
query Parameters
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "publish_time" Value: "publish_time" |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "service_id": "string",
- "version": "string",
- "created_at": 0,
- "publish_time": "string"
}
], - "total": 0
}
Fetch service runtime configurations of a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
Responses
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "status": 0,
- "plugins": { }
}, - "warning_msg": "string"
}
Update service runtime configurations of a published service on a gateway group.
IAM Action: gateway:UpdatePublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
query Parameters
dry-run | string Value: "all" The flag that indicates whether to run the operation in dry-run mode. |
Request Body schema: application/json
op required | string Enum: "add" "replace" The operation to be performed |
path required | string A JSON Pointer path to the value you wish to modify or add, see https://jsonpatch.com/#json-pointer for more information |
value required | any The value to add or replace, can be any type |
Responses
Request samples
- Payload
[- {
- "op": "add",
- "path": "string",
- "value": null
}
]
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "status": 0,
- "plugins": { }
}, - "warning_msg": "string"
}
Get healthcheck status for the upstream of a published service on a gateway group.
IAM Action: gateway:GetPublishedService
, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
Responses
Response samples
- 200
- default
{- "value": {
- "httpbin.com:80": {
- "host": "httpbin.com",
- "port": 80,
- "total": 1,
- "healthy": 1,
- "unhealthy": 0,
- "unknown": 0,
- "updated_at": 0,
- "gateway_instances": [
- {
- "id": "xxx-yyy-zzz",
- "hostname": "api7ee3-apisix-699b68db7f-cxgcw",
- "status": "healthy",
- "created_at": 0,
- "updated_at": 0
}
]
}
}
}
List all service registry connections on a gateway group.
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" "last_connect_time" |
search | string The search keyword. |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "description": "string",
- "health_check": {
- "probe_interval": 15,
- "probe_timeout": 5
}, - "type": "kubernetes",
- "kubernetes_config": {
- "service": {
- "schema": "http",
- "host": "string",
- "port": "6443"
}, - "namespace_selector": {
- "equal": "string",
- "not_equal": "string",
- "match": [
- "string"
], - "not_match": [
- "string"
]
}, - "label_selector": "string",
- "client": {
- "token_file": "string"
}
}, - "id": "string",
- "gateway_group_id": "string",
- "created_at": 0,
- "updated_at": 0,
- "status": "healthy",
- "last_connect_time": 0,
- "associated_services_count": 0
}
], - "total": 0
}
Create a service registry connection on a gateway group.
IAM Action: gateway:ConnectServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Request Body schema: application/json
name | string [ 1 .. 100 ] characters The object name. |
description | string |
object | |
type required | string Value: "kubernetes" The kubernetes service type. |
required | object |
Responses
Request samples
- Payload
{- "name": "string",
- "description": "string",
- "health_check": {
- "probe_interval": 15,
- "probe_timeout": 5
}, - "type": "nacos",
- "nacos_config": {
- "hosts": [
- "string"
], - "prefix": "/nacos/v1",
- "default_weight": 100,
- "fetch_interval": 30,
- "timeout": {
- "connect": 2,
- "send": 2,
- "read": 5
}, - "auth": {
- "username": "string",
- "password": "string"
}
}
}
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "description": "string",
- "health_check": {
- "probe_interval": 15,
- "probe_timeout": 5
}, - "type": "kubernetes",
- "kubernetes_config": {
- "service": {
- "schema": "http",
- "host": "string",
- "port": "6443"
}, - "namespace_selector": {
- "equal": "string",
- "not_equal": "string",
- "match": [
- "string"
], - "not_match": [
- "string"
]
}, - "label_selector": "string",
- "client": {
- "token_file": "string"
}
}, - "id": "string",
- "gateway_group_id": "string",
- "created_at": 0,
- "updated_at": 0,
- "status": "healthy",
- "last_connect_time": 0
}, - "warning_msg": "string"
}
Create a token for all gateway instances in a gateway group.
IAM Action: gateway:CreateGatewayInstance
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
query Parameters
only_token | boolean The response only contains a token string but not an encoded JSON Web Token (JWT). |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "id": "string",
- "token_plain_text": "string"
}, - "warning_msg": "string"
}
Get a service registry connection on a gateway group.
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Responses
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "description": "string",
- "health_check": {
- "probe_interval": 15,
- "probe_timeout": 5
}, - "type": "kubernetes",
- "kubernetes_config": {
- "service": {
- "schema": "http",
- "host": "string",
- "port": "6443"
}, - "namespace_selector": {
- "equal": "string",
- "not_equal": "string",
- "match": [
- "string"
], - "not_match": [
- "string"
]
}, - "label_selector": "string",
- "client": {
- "token_file": "string"
}
}, - "id": "string",
- "gateway_group_id": "string",
- "created_at": 0,
- "updated_at": 0,
- "status": "healthy",
- "last_connect_time": 0
}, - "warning_msg": "string"
}
Update a service registry connection on a gateway group.
IAM Action: gateway:UpdateServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Request Body schema: application/json
name | string [ 1 .. 100 ] characters The object name. |
description | string |
object | |
type required | string Value: "kubernetes" The kubernetes service type. |
required | object |
Responses
Request samples
- Payload
{- "name": "string",
- "description": "string",
- "health_check": {
- "probe_interval": 15,
- "probe_timeout": 5
}, - "type": "nacos",
- "nacos_config": {
- "hosts": [
- "string"
], - "prefix": "/nacos/v1",
- "default_weight": 100,
- "fetch_interval": 30,
- "timeout": {
- "connect": 2,
- "send": 2,
- "read": 5
}, - "auth": {
- "username": "string",
- "password": "string"
}
}
}
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string"
}
Delete a service registry connection on a gateway group.
IAM Action: gateway:DisconnectServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Responses
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string"
}
List all published services connected to a service registry.
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" "publish_time" "name" |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "service_id": "string",
- "version": "string",
- "created_at": 0,
- "gateway_group_name": "string",
- "gateway_group_id": "string",
- "unhealthy_nodes_count": 0,
- "status": 0
}
], - "total": 0
}
List all internal services in a Kubernetes service registry.
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Responses
Response samples
- 200
- default
{- "value": {
- "type": "kubernetes",
- "internal_services": {
- "default": [
- "service1",
- "service2"
], - "kube-system": [
- "kube-dns"
]
}
}, - "warning_msg": "string"
}
List all namespaces in a Nacos service registry.
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "namespace": "string",
- "namespace_show_name": "string"
}
], - "total": 0
}
List all groups in a Nacos namespace.
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
nacos_namespace required | string >= 1 Example: public |
Responses
Response samples
- 200
- default
{- "list": [
- "string"
], - "total": 0
}
List all internal services in a Nacos group.
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
nacos_namespace required | string >= 1 Example: public |
nacos_group required | string >= 1 Example: DEFAULT_GROUP |
Responses
Response samples
- 200
- default
{- "list": [
- "string"
], - "total": 0
}
Get all instance metadata of a Nacos services registry
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
nacos_namespace required | string >= 1 Example: public |
nacos_group required | string >= 1 Example: DEFAULT_GROUP |
nacos_service required | string >= 1 Example: api7ee3-keycloak |
Responses
Response samples
- 200
- default
{- "list": [
- { }
], - "total": 0,
- "value": {
- "idc": [
- "beijing",
- "shanghai"
]
}
}
Get health check history of a service registry connection on a gateway group.
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "connect_time" Value: "connect_time" |
status | Array of strings Items Enum: "healthy" "lost_connection" "connecting" |
search | string The search keyword. |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "instance_id": "string",
- "service_registry_id": "string",
- "hostname": "string",
- "status": "healthy",
- "connect_time": 0
}
], - "total": 0
}
Create a global rule on a gateway group.
IAM Action: gateway:CreateGlobalPluginRule
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
plugins required | object The key-value pairs which represent the plugins attached on the object. |
Responses
Request samples
- Payload
{- "plugins": { }
}
Response samples
- 200
- 400
- default
{- "value": {
- "plugins": { },
- "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List all global rules on a gateway group.
IAM Action: gateway:GetGlobalPluginRule
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "plugins": { },
- "id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a global rule on a gateway group.
IAM Action: gateway:GetGlobalPluginRule
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
global_rule_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the global rule. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "plugins": { },
- "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update a global rule on a gateway group.
IAM Action: gateway:UpdateGlobalPluginRule
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
global_rule_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the global rule. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
plugins required | object The key-value pairs which represent the plugins attached on the object. |
Responses
Request samples
- Payload
{- "plugins": { }
}
Response samples
- 200
- 400
- default
{- "value": {
- "plugins": { },
- "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a global rule on a gateway group.
IAM Action: gateway:DeleteGlobalPluginRule
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
global_rule_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the global rule. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Create a global rule on a gateway group.
IAM Action: gateway:CreateGlobalPluginRule
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
plugins required | object The key-value pairs which represent the plugins attached on the object. |
Responses
Request samples
- Payload
{- "plugins": { }
}
Response samples
- 200
- 400
- default
{- "value": {
- "plugins": { },
- "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List all global rules on a gateway group.
IAM Action: gateway:GetGlobalPluginRule
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "plugins": { },
- "id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a global rule on a gateway group.
IAM Action: gateway:GetGlobalPluginRule
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
global_rule_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the global rule. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "plugins": { },
- "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update a global rule on a gateway group.
IAM Action: gateway:UpdateGlobalPluginRule
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
global_rule_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the global rule. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
plugins required | object The key-value pairs which represent the plugins attached on the object. |
Responses
Request samples
- Payload
{- "plugins": { }
}
Response samples
- 200
- 400
- default
{- "value": {
- "plugins": { },
- "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a global rule on a gateway group.
IAM Action: gateway:DeleteGlobalPluginRule
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
global_rule_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the global rule. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
List all plugin metadata on a gateway group.
IAM Action: gateway:GetPluginMetadata
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "property1": { },
- "property2": { }
}, - "warning_msg": "string"
}
Get a plugin metadata on a gateway group.
IAM Action: gateway:GetPluginMetadata
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
plugin_name required | string [ 1 .. 64 ] characters |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
return_default | boolean Default: false When set to true, the default value is returned when plugin metadata is not found. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Update a plugin metadata on a gateway group.
IAM Action: gateway:UpdatePluginMetadata
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
plugin_name required | string [ 1 .. 64 ] characters |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
The plugin metadata description.
Responses
Request samples
- Payload
{ }
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Delete a plugin metadata on a gateway group.
IAM Action: gateway:DeletePluginMetadata
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
plugin_name required | string [ 1 .. 64 ] characters |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Get all plugin detail
Authorizations:
query Parameters
subsystem | string Default: "http" Enum: "http" "stream" Example: subsystem=stream Filter the plugins list |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "property1": {
- "schema": { },
- "consumer_schema": { },
- "metadata_schema": { },
- "type": "string",
- "scope": "string",
- "priority": 0
}, - "property2": {
- "schema": { },
- "consumer_schema": { },
- "metadata_schema": { },
- "type": "string",
- "scope": "string",
- "priority": 0
}
}, - "warning_msg": "string"
}
List all plugins.
Authorizations:
query Parameters
has_metadata | boolean Default: false A flag that indicates whether to filter plugins with metadata configuration. |
subsystem | string Default: "http" Enum: "http" "stream" Example: subsystem=stream Filter the plugins list |
Responses
Response samples
- 200
[- "string"
]
Get all properties of the specified Plugin.
Authorizations:
path Parameters
plugin_name required | string [ 1 .. 64 ] characters |
query Parameters
scope | string Value: "all" The scope of the plugin. |
subsystem | string Default: "http" Enum: "http" "stream" Example: subsystem=stream Filter the plugins list |
Responses
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string"
}
Get schema definition of single plugin.
Authorizations:
path Parameters
plugin_name required | string [ 1 .. 64 ] characters |
query Parameters
subsystem | string Default: "http" Enum: "http" "stream" Example: subsystem=stream Filter the plugins list |
Responses
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string"
}
Get a plugin detail.
Authorizations:
query Parameters
subsystem | string Default: "http" Enum: "http" "stream" Example: subsystem=stream Filter the plugins list |
Responses
Response samples
- 200
- 400
- default
{- "value": [
- {
- "plugin_name": "string",
- "type": "string",
- "is_custom": true
}
], - "warning_msg": "string"
}
Get the usage of a plugin.
Authorizations:
path Parameters
plugin_name required | string [ 1 .. 64 ] characters |
Responses
Response samples
- 200
- default
{- "value": {
- "published_service": {
- "total": 12,
- "list": [
- {
- "name": "string",
- "id": "string",
- "gateway_group_id": "string",
- "gateway_group_name": "string"
}
]
}, - "consumer": {
- "total": 12,
- "list": [
- {
- "name": "string",
- "id": "string",
- "gateway_group_id": "string",
- "gateway_group_name": "string"
}
]
}, - "global_rule": {
- "total": 12,
- "list": [
- {
- "name": "string",
- "id": "string",
- "gateway_group_id": "string",
- "gateway_group_name": "string"
}
]
}
}, - "warning_msg": "string"
}
List all plugin metadata on a gateway group.
IAM Action: gateway:GetPluginMetadata
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "property1": { },
- "property2": { }
}, - "warning_msg": "string"
}
Get a plugin metadata on a gateway group.
IAM Action: gateway:GetPluginMetadata
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
plugin_name required | string [ 1 .. 64 ] characters |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
return_default | boolean Default: false When set to true, the default value is returned when plugin metadata is not found. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Update a plugin metadata on a gateway group.
IAM Action: gateway:UpdatePluginMetadata
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
plugin_name required | string [ 1 .. 64 ] characters |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
The plugin metadata description.
Responses
Request samples
- Payload
{ }
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Delete a plugin metadata on a gateway group.
IAM Action: gateway:DeletePluginMetadata
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
plugin_name required | string [ 1 .. 64 ] characters |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Get schema definition of single plugin.
Authorizations:
path Parameters
plugin_name required | string [ 1 .. 64 ] characters |
query Parameters
subsystem | string Default: "http" Enum: "http" "stream" Example: subsystem=stream Filter the plugins list |
Responses
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string"
}
List all gateway instances of all gateway groups.
IAM Action: gateway:GetGatewayInstance
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
query Parameters
gateway_group_id | string >= 1 |
order_by | string Default: "last_heartbeat_time" Enum: "created_at" "last_heartbeat_time" |
status | string Enum: "Healthy" "OutOfSync" "LostConnection" "Offline" The value of the instance status. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
page | integer <int64> >= 1 The page number, starting from 1. |
search | string The search keyword. |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "id": "string",
- "hostname": "string",
- "ip": "string",
- "gateway_group_id": "string",
- "version": "string",
- "ports": [
- 0
], - "last_heartbeat_time": 0,
- "last_retrieve_config_time": 0,
- "to_be_deleted_at": 0,
- "created_at": 0,
- "dataplane_certificate_expire_time": 0,
- "status": "Healthy",
- "cores": 0
}
], - "total": 0
}
List all gateway instances on a gateway group.
IAM Action: gateway:GetGatewayInstance
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
query Parameters
order_by | string Default: "last_heartbeat_time" Enum: "created_at" "last_heartbeat_time" |
status | string Enum: "Healthy" "OutOfSync" "LostConnection" "Offline" The value of the instance status. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
page | integer <int64> >= 1 The page number, starting from 1. |
search | string The search keyword. |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "id": "string",
- "hostname": "string",
- "ip": "string",
- "gateway_group_id": "string",
- "version": "string",
- "ports": [
- 0
], - "last_heartbeat_time": 0,
- "last_retrieve_config_time": 0,
- "to_be_deleted_at": 0,
- "created_at": 0,
- "dataplane_certificate_expire_time": 0,
- "status": "Healthy",
- "cores": 0
}
], - "total": 0
}
Calculate the number of instances in different states of a gateway group.
IAM Action: gateway:GetGatewayInstance
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
field required | string Value: "status" |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
search | string The search keyword. |
Responses
Response samples
- 200
- default
{- "value": [
- {
- "key": "string",
- "count": 0
}
], - "warning_msg": "string"
}
Export the gateway instance core usage.
IAM Action: gateway:GetGatewayInstanceCore
, Resource: arn:api7:gateway:gatewaygroup/*
Authorizations:
query Parameters
begin_at required | integer <int64> The start time of gateway instance core usage. |
end_at required | integer <int64> The end time of gateway instance core usage. |
Responses
Response samples
- 400
{- "error_msg": "string"
}
Send a heartbeat to all gateway instances.
Authorizations:
Request Body schema: application/json
instance_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The gateway instance ID. |
hostname required | string The hostname of the gateway instance. |
ip | string The IP address of the gateway instance. |
version required | string The version of the gateway instance. |
ports required | Array of integers non-empty unique The listening ports of the gateway instance. |
cores | integer The number of DP cores. |
control_plane_revision | string The configuration version currently used by the data plane. |
conf_server_revision | string Deprecated Replace with control_plane_revision. |
Responses
Request samples
- Payload
{- "instance_id": "string",
- "hostname": "string",
- "ip": "string",
- "version": "string",
- "ports": [
- 0
], - "cores": 0,
- "control_plane_revision": "string",
- "conf_server_revision": "string"
}
Response samples
- default
{- "value": { },
- "warning_msg": "string"
}
Generate metrics based on all gateway instances.
Authorizations:
Request Body schema: application/json
instance_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The gateway instance ID. |
truncated | boolean Whether to truncate the reported metrics due to exceeding the single report size limit. |
metrics required | string Format the text in Prometheus metric format. |
Responses
Request samples
- Payload
{- "instance_id": "string",
- "truncated": true,
- "metrics": "string"
}
Response samples
- default
{- "value": { },
- "warning_msg": "string"
}
Report the health check results of all gateway instances based on its health check configuration.
Authorizations:
Request Body schema: application/json
instance_id required | string non-empty The gateway instance ID. |
Array of objects Item is a node healthcheck data. |
Responses
Request samples
- Payload
{- "instance_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
- "data": [
- {
- "upstream_id": "uuu-ppp-sss-ttt-rrr-eee-aaa-mmm",
- "nodes": [
- {
- "host": "httpbin.org",
- "port": 80,
- "status": "healthy"
}
]
}
]
}
Response samples
- default
{- "value": { },
- "warning_msg": "string"
}
Report the service registry health check results from gateway instance.
Authorizations:
Request Body schema: application/json
instance_id required | string non-empty The gateway instance ID. |
Array of objects Item is a service registry healthcheck data. |
Responses
Request samples
- Payload
{- "instance_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
- "data": [
- {
- "service_registry_id": "uuu-ppp-sss-ttt-rrr-eee-aaa-mmm",
- "status": 0,
- "hostname": "apisix-hostname",
- "time": 1720602869
}
]
}
Response samples
- default
{- "value": { },
- "warning_msg": "string"
}
Generate script to install the gateway instance by Docker.
IAM Action: gateway:CreateGatewayInstance
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
query Parameters
control_plane_address | string non-empty |
image | string non-empty |
http_port | integer Default: 9080 |
https_port | integer Default: 9443 |
name | string non-empty |
extra_args[] | Array of strings[ items non-empty ] Additional docker run arguments. |
Responses
Response samples
- 400
- default
{- "error_msg": "string"
}
Generate script to install the gateway instance by Helm in Kubernetes.
IAM Action: gateway:CreateGatewayInstance
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
query Parameters
control_plane_address | string non-empty |
name required | string |
namespace required | string |
service_account | string |
replicas | integer Default: 1 |
workers | integer |
cpu_limit | string |
memory_limit | string |
extra_values[] | Array of strings extra values to be passed to the helm chart, in the form of key=value |
Responses
Response samples
- 400
- default
{- "error_msg": "string"
}
Generate values.yaml to install the gateway instance by Helm in Kubernetes.
IAM Action: gateway:CreateGatewayInstance
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
query Parameters
control_plane_address | string non-empty |
name required | string |
namespace required | string |
service_account | string |
replicas | integer Default: 1 |
workers | integer |
cpu_limit | string |
memory_limit | string |
Responses
Response samples
- 400
- default
{- "error_msg": "string"
}
Delete gateway instance.
IAM Action: gateway:DeleteGatewayInstance
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_instance_id required | string >= 1 |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Issue a data plane certificate on a gateway group.
IAM Action: gateway:CreateGatewayInstance
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Responses
Response samples
- 200
- default
{- "value": {
- "id": "string",
- "certificate": "string",
- "private_key": "string",
- "expiry": 0
}, - "warning_msg": "string"
}
Create a token for all gateway instances in a gateway group.
IAM Action: gateway:CreateGatewayInstance
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
query Parameters
only_token | boolean The response only contains a token string but not an encoded JSON Web Token (JWT). |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "id": "string",
- "token_plain_text": "string"
}, - "warning_msg": "string"
}
List all users.
IAM Action: iam:GetUser
, Resource: arn:api7:iam:user/%s
Authorizations:
query Parameters
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
page | integer <int64> >= 1 The page number, starting from 1. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
roles | Array of strings >= 1 |
login_option_name | Array of strings >= 1 |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "id": "string",
- "email": "string",
- "last_name": "string",
- "first_name": "string",
- "username": "string",
- "created_at": 0,
- "updated_at": 0,
- "state": "string",
- "provider": "builtin",
- "roles": [
- {
- "id": "string",
- "name": "string",
- "desc": "string",
- "type": "built_in",
- "policies": [
- "string"
]
}
], - "boundaries": [
- {
- "name": "string",
- "type": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "policy_document": {
- "statement": [
- {
- "effect": "allow",
- "resources": [
- "arn:api7:gateway:servicetemplate/<.*>"
], - "actions": [
- "gateway:GetServiceTemplate"
], - "conditions": {
- "gateway_group_label": {
- "type": null,
- "options": { }
}
}
}
]
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0
}
]
}
], - "total": 0
}
Get a user.
IAM Action: iam:GetUser
, Resource: arn:api7:iam:user/%s
Authorizations:
path Parameters
user_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 The user ID. |
Responses
Response samples
- 200
- default
{- "value": {
- "id": "string",
- "email": "string",
- "last_name": "string",
- "first_name": "string",
- "username": "string",
- "created_at": 0,
- "updated_at": 0,
- "state": "string",
- "provider": "builtin",
- "roles": [
- {
- "id": "string",
- "name": "string",
- "desc": "string",
- "type": "built_in",
- "policies": [
- "string"
]
}
], - "boundaries": [
- {
- "name": "string",
- "type": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "policy_document": {
- "statement": [
- {
- "effect": "allow",
- "resources": [
- "arn:api7:gateway:servicetemplate/<.*>"
], - "actions": [
- "gateway:GetServiceTemplate"
], - "conditions": {
- "gateway_group_label": {
- "type": "MatchLabel",
- "options": {
- "key": "env",
- "operation": "exact_match",
- "value": "prod"
}
}
}
}
]
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0
}
]
}, - "warning_msg": "string"
}
Update basic attributes of a user.
IAM Action: iam:UpdateUser
, Resource: arn:api7:iam:user/%s
Authorizations:
path Parameters
user_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 The user ID. |
Request Body schema: application/json
object | |||
|
Responses
Request samples
- Payload
{- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}
}
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string"
}
Delete a user.
IAM Action: iam:DeleteUser
, Resource: arn:api7:iam:user/%s
Authorizations:
path Parameters
user_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 The user ID. |
Responses
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string"
}
Update the user's permission boundaries.
IAM Action: iam:UpdateUserBoundary
, Resource: arn:api7:iam:user/%s
Authorizations:
path Parameters
user_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 The user ID. |
Request Body schema: application/json
Responses
Request samples
- Payload
[- "string"
]
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Reset the password to specific value.
IAM Action: iam:ResetPassword
, Resource: arn:api7:iam:user/%s
Authorizations:
path Parameters
user_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 The user ID. |
Request Body schema: application/json
password required | string [ 1 .. 128 ] characters The password of the user. |
Responses
Request samples
- Payload
{- "password": "string"
}
Response samples
- 200
{- "value": { },
- "warning_msg": "string"
}
Response samples
- 200
- default
{- "value": {
- "id": "string",
- "email": "string",
- "last_name": "string",
- "first_name": "string",
- "username": "string",
- "created_at": 0,
- "updated_at": 0,
- "state": "string",
- "provider": "builtin",
- "roles": [
- {
- "id": "string",
- "name": "string",
- "desc": "string",
- "type": "built_in",
- "policies": [
- "string"
]
}
], - "boundaries": [
- {
- "name": "string",
- "type": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "policy_document": {
- "statement": [
- {
- "effect": "allow",
- "resources": [
- "arn:api7:gateway:servicetemplate/<.*>"
], - "actions": [
- "gateway:GetServiceTemplate"
], - "conditions": {
- "gateway_group_label": {
- "type": "MatchLabel",
- "options": {
- "key": "env",
- "operation": "exact_match",
- "value": "prod"
}
}
}
}
]
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0
}
]
}, - "warning_msg": "string"
}
Update my 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
- default
{- "value": { },
- "warning_msg": "string"
}
Invite a user.
IAM Action: iam:InviteUser
, Resource: arn:api7:iam:user/*
Authorizations:
Request Body schema: application/json
username required | string [ 1 .. 128 ] characters The username of the user. |
password required | string [ 1 .. 128 ] characters The password of the user. |
boundaries | Array of strings The permission boundaries of the user. |
Responses
Request samples
- Payload
{- "username": "string",
- "password": "string",
- "boundaries": [
- "string"
]
}
Response samples
- 200
- default
{- "value": {
- "id": "string",
- "email": "string",
- "last_name": "string",
- "first_name": "string",
- "username": "string",
- "created_at": 0,
- "updated_at": 0,
- "state": "string",
- "provider": "builtin",
- "roles": [
- {
- "id": "string",
- "name": "string",
- "desc": "string",
- "type": "built_in",
- "policies": [
- "string"
]
}
], - "boundaries": [
- {
- "name": "string",
- "type": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "policy_document": {
- "statement": [
- {
- "effect": "allow",
- "resources": [
- "arn:api7:gateway:servicetemplate/<.*>"
], - "actions": [
- "gateway:GetServiceTemplate"
], - "conditions": {
- "gateway_group_label": {
- "type": "MatchLabel",
- "options": {
- "key": "env",
- "operation": "exact_match",
- "value": "prod"
}
}
}
}
]
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "invitation_link": "string"
}, - "warning_msg": "string"
}
Update the user password.
Authorizations:
Request Body schema: application/json
old_password | string [ 1 .. 128 ] characters |
new_password required | string [ 1 .. 128 ] characters |
Responses
Request samples
- Payload
{- "old_password": "string",
- "new_password": "string"
}
Response samples
- 200
{- "value": { },
- "warning_msg": "string"
}
Log in to API7 Enterprise using the username and password.
Authorizations:
Request Body schema: application/json
username required | string [ 1 .. 128 ] characters The username of the user. |
password required | string [ 1 .. 128 ] characters The password of the user. |
Responses
Request samples
- Payload
{- "username": "string",
- "password": "string"
}
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string"
}
Update assigned roles for a user.
IAM Action: iam:UpdateUserRole
, Resource: arn:api7:iam:user/%s
Authorizations:
path Parameters
user_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 The user ID. |
Request Body schema: application/json
roles required | Array of strings[ items [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ ] |
Responses
Request samples
- Payload
{- "roles": [
- "string"
]
}
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string"
}
Check if a user has certain permissions on certain resources.
Authorizations:
Request Body schema: application/json
additional property | object | ||||||
|
Responses
Request samples
- Payload
{- "property1": {
- "resource": "string",
- "action": "string",
- "context": {
- "gateway_group_label": {
- "property1": "string",
- "property2": "string"
}
}
}, - "property2": {
- "resource": "string",
- "action": "string",
- "context": {
- "gateway_group_label": {
- "property1": "string",
- "property2": "string"
}
}
}
}
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string",
- "property1": true,
- "property2": true
}
Log in to API7 Enterprise using the username and password.
Authorizations:
path Parameters
login_option_id required | string |
Request Body schema: application/json
username required | string [ 1 .. 128 ] characters The username of the user. |
password required | string [ 1 .. 128 ] characters The password of the user. |
Responses
Request samples
- Payload
{- "username": "string",
- "password": "string"
}
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string"
}
Log in using the OIDC provider.
Authorizations:
path Parameters
login_option_id required | string |
query Parameters
state required | string The field of the OIDC protocol. |
code required | string The field of the OIDC protocol. |
Responses
Response samples
- default
{- "value": { },
- "warning_msg": "string"
}
SAML login, will redirect to IDP and callback to SP(dashboard)
Authorizations:
path Parameters
login_option_id required | string |
query Parameters
redirect_uri | string non-empty ^/ Path to be redirected after callback |
Responses
Response samples
- default
{- "value": { },
- "warning_msg": "string"
}
SAML Logout, will redirect to IDP and callback to SP(dashboard)
Authorizations:
path Parameters
login_option_id required | string |
query Parameters
redirect_uri | string non-empty ^/ Path to be redirected after callback |
Responses
Response samples
- default
{- "value": { },
- "warning_msg": "string"
}
SAML ACS/SLO callback, from IDP callback to SP(dashboard)
Authorizations:
path Parameters
login_option_id required | string |
Request Body schema: application/x-www-form-urlencoded
SAMLResponse required | string Base64 encoded SAML response |
RelayState | string State information to be relayed with the response |
Responses
Response samples
- default
{- "value": { },
- "warning_msg": "string"
}
SAML ACS/SLO callback, from IDP callback to SP(dashboard)
Authorizations:
path Parameters
login_option_id required | string |
query Parameters
SAMLResponse required | string Base64 encoded SAML response |
RelayState | string State information to be relayed with the response |
Responses
Response samples
- default
{- "value": { },
- "warning_msg": "string"
}
SAML ACS/SLO callback, from IDP callback to SP(dashboard)
Authorizations:
path Parameters
login_option_id required | string |
Request Body schema: application/x-www-form-urlencoded
SAMLResponse required | string Base64 encoded SAML response |
RelayState | string State information to be relayed with the response |
Responses
Response samples
- default
{- "value": { },
- "warning_msg": "string"
}
Update assigned roles for a user.
IAM Action: iam:UpdateUserRole
, Resource: arn:api7:iam:user/%s
Authorizations:
path Parameters
user_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 The user ID. |
Request Body schema: application/json
roles required | Array of strings[ items [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ ] |
Responses
Request samples
- Payload
{- "roles": [
- "string"
]
}
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string"
}
List all roles.
IAM Action: iam:GetRole
, Resource: arn:api7:iam:role/%s
Authorizations:
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
object non-empty |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "id": "string",
- "name": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "type": "built_in",
- "policies": [
- "string"
], - "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Create a role.
IAM Action: iam:CreateRole
, Resource: arn:api7:iam:role/*
Authorizations:
Request Body schema: application/json
name required | string The role name. |
desc | string <= 65536 characters The object description. |
object | |
policies | Array of strings non-empty unique [ items [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ ] The polices attached to the role. |
Responses
Request samples
- Payload
{- "name": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "policies": [
- "string"
]
}
Response samples
- 200
- 400
- default
{- "value": {
- "id": "string",
- "name": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "type": "built_in",
- "policies": [
- "string"
], - "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Get a role.
IAM Action: iam:GetRole
, Resource: arn:api7:iam:role/%s
Authorizations:
path Parameters
role_id required | string >= 1 |
Responses
Response samples
- 200
- default
{- "value": {
- "id": "string",
- "name": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "type": "built_in",
- "policies": [
- "string"
], - "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update a role.
IAM Action: iam:UpdateRole
, Resource: arn:api7:iam:role/%s
Authorizations:
path Parameters
role_id required | string >= 1 |
Request Body schema: application/json
name required | string The role name. |
desc | string <= 65536 characters The object description. |
object | |
policies | Array of strings non-empty unique [ items [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ ] The polices attached to the role. |
Responses
Request samples
- Payload
{- "name": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "policies": [
- "string"
]
}
Response samples
- 200
- 400
- default
{- "value": {
- "id": "string",
- "name": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "type": "built_in",
- "policies": [
- "string"
], - "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List all permission policies attached to a role.
IAM Action: iam:GetPermissionPolicy
, Resource: arn:api7:iam:permissionpolicy/%s
Authorizations:
path Parameters
role_id required | string >= 1 |
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
object non-empty |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "type": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "policy_document": {
- "statement": [
- {
- "effect": "allow",
- "resources": [
- "arn:api7:gateway:servicetemplate/<.*>"
], - "actions": [
- "gateway:GetServiceTemplate"
], - "conditions": {
- "gateway_group_label": {
- "type": "MatchLabel",
- "options": {
- "key": "env",
- "operation": "exact_match",
- "value": "prod"
}
}
}
}
]
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Attach permission policies to a role.
IAM Action: iam:UpdateRole
, Resource: arn:api7:iam:role/%s
Authorizations:
path Parameters
role_id required | string >= 1 |
Request Body schema: application/json
Responses
Request samples
- Payload
[- "string"
]
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Detach permission policies of a role.
IAM Action: iam:UpdateRole
, Resource: arn:api7:iam:role/%s
Authorizations:
path Parameters
role_id required | string >= 1 |
Request Body schema: application/json
Responses
Request samples
- Payload
[- "string"
]
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Check if a user has certain permissions on certain resources.
Authorizations:
Request Body schema: application/json
additional property | object | ||||||
|
Responses
Request samples
- Payload
{- "property1": {
- "resource": "string",
- "action": "string",
- "context": {
- "gateway_group_label": {
- "property1": "string",
- "property2": "string"
}
}
}, - "property2": {
- "resource": "string",
- "action": "string",
- "context": {
- "gateway_group_label": {
- "property1": "string",
- "property2": "string"
}
}
}
}
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string",
- "property1": true,
- "property2": true
}
List all permission policies attached to a role.
IAM Action: iam:GetPermissionPolicy
, Resource: arn:api7:iam:permissionpolicy/%s
Authorizations:
path Parameters
role_id required | string >= 1 |
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
object non-empty |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "type": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "policy_document": {
- "statement": [
- {
- "effect": "allow",
- "resources": [
- "arn:api7:gateway:servicetemplate/<.*>"
], - "actions": [
- "gateway:GetServiceTemplate"
], - "conditions": {
- "gateway_group_label": {
- "type": "MatchLabel",
- "options": {
- "key": "env",
- "operation": "exact_match",
- "value": "prod"
}
}
}
}
]
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Attach permission policies to a role.
IAM Action: iam:UpdateRole
, Resource: arn:api7:iam:role/%s
Authorizations:
path Parameters
role_id required | string >= 1 |
Request Body schema: application/json
Responses
Request samples
- Payload
[- "string"
]
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Detach permission policies of a role.
IAM Action: iam:UpdateRole
, Resource: arn:api7:iam:role/%s
Authorizations:
path Parameters
role_id required | string >= 1 |
Request Body schema: application/json
Responses
Request samples
- Payload
[- "string"
]
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Create a permission policy.
IAM Action: iam:CreatePermissionPolicy
, Resource: arn:api7:iam:permissionpolicy/*
Authorizations:
Request Body schema: application/json
name required | string [ 1 .. 100 ] characters The policy name. |
type | string The permission policy type. |
desc | string <= 65536 characters The description of the policy. |
object The labels of the policy. | |
required | object |
Responses
Request samples
- Payload
{- "name": "string",
- "type": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "policy_document": {
- "statement": [
- {
- "effect": "allow",
- "resources": [
- "arn:api7:gateway:servicetemplate/<.*>"
], - "actions": [
- "gateway:GetServiceTemplate"
], - "conditions": {
- "gateway_group_label": {
- "type": "MatchLabel",
- "options": {
- "key": "env",
- "operation": "exact_match",
- "value": "prod"
}
}
}
}
]
}
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "type": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "policy_document": {
- "statement": [
- {
- "effect": "allow",
- "resources": [
- "arn:api7:gateway:servicetemplate/<.*>"
], - "actions": [
- "gateway:GetServiceTemplate"
], - "conditions": {
- "gateway_group_label": {
- "type": "MatchLabel",
- "options": {
- "key": "env",
- "operation": "exact_match",
- "value": "prod"
}
}
}
}
]
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List all permission policies.
IAM Action: iam:GetPermissionPolicy
, Resource: arn:api7:iam:permissionpolicy/%s
Authorizations:
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
object non-empty |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "type": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "policy_document": {
- "statement": [
- {
- "effect": "allow",
- "resources": [
- "arn:api7:gateway:servicetemplate/<.*>"
], - "actions": [
- "gateway:GetServiceTemplate"
], - "conditions": {
- "gateway_group_label": {
- "type": "MatchLabel",
- "options": {
- "key": "env",
- "operation": "exact_match",
- "value": "prod"
}
}
}
}
]
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a permission policy.
IAM Action: iam:GetPermissionPolicy
, Resource: arn:api7:iam:permissionpolicy/%s
Authorizations:
path Parameters
permission_policy_id required | string >= 1 |
Responses
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "type": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "policy_document": {
- "statement": [
- {
- "effect": "allow",
- "resources": [
- "arn:api7:gateway:servicetemplate/<.*>"
], - "actions": [
- "gateway:GetServiceTemplate"
], - "conditions": {
- "gateway_group_label": {
- "type": "MatchLabel",
- "options": {
- "key": "env",
- "operation": "exact_match",
- "value": "prod"
}
}
}
}
]
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update a permission policy.
IAM Action: iam:UpdatePermissionPolicy
, Resource: arn:api7:iam:permissionpolicy/%s
Authorizations:
path Parameters
permission_policy_id required | string >= 1 |
Request Body schema: application/json
name required | string [ 1 .. 100 ] characters The policy name. |
type | string The permission policy type. |
desc | string <= 65536 characters The description of the policy. |
object The labels of the policy. | |
required | object |
Responses
Request samples
- Payload
{- "name": "string",
- "type": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "policy_document": {
- "statement": [
- {
- "effect": "allow",
- "resources": [
- "arn:api7:gateway:servicetemplate/<.*>"
], - "actions": [
- "gateway:GetServiceTemplate"
], - "conditions": {
- "gateway_group_label": {
- "type": "MatchLabel",
- "options": {
- "key": "env",
- "operation": "exact_match",
- "value": "prod"
}
}
}
}
]
}
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "type": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "policy_document": {
- "statement": [
- {
- "effect": "allow",
- "resources": [
- "arn:api7:gateway:servicetemplate/<.*>"
], - "actions": [
- "gateway:GetServiceTemplate"
], - "conditions": {
- "gateway_group_label": {
- "type": "MatchLabel",
- "options": {
- "key": "env",
- "operation": "exact_match",
- "value": "prod"
}
}
}
}
]
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a permission policy.
IAM Action: iam:DeletePermissionPolicy
, Resource: arn:api7:iam:permissionpolicy/%s
Authorizations:
path Parameters
permission_policy_id required | string >= 1 |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
List which Roles or Users directly reference the Permission Policy.
IAM Action: iam:GetPermissionPolicy
, Resource: arn:api7:iam:permissionpolicy/%s
Authorizations:
path Parameters
permission_policy_id required | string >= 1 |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "type": "role",
- "id": "string",
- "name": "string"
}
], - "total": 0
}
Get data from Prometheus.
Authorizations:
path Parameters
prometheus_path required | string Example: api/v1/query_range?query=xxx&start=1684722195&end=1684723995&step=15 The path to the Prometheus API. |
Responses
Response samples
- 200
- default
{- "value": {
- "status": "success",
- "data": {
- "resultType": "matrix",
- "result": [
- {
- "metric": {
- "label": "xxx"
}, - "values": [
- [
- 1684740675,
- 1
], - [
- 1684740690,
- 2
]
]
}
]
}
}, - "warning_msg": "string"
}
Get data from Prometheus (with post).
Authorizations:
path Parameters
prometheus_path required | string Example: api/v1/query_range?query=xxx&start=1684722195&end=1684723995&step=15 The path to the Prometheus API. |
Request Body schema: application/x-www-form-urlencoded
property name* additional property | any |
Responses
Response samples
- 200
- default
{- "value": {
- "status": "success",
- "data": {
- "resultType": "matrix",
- "result": [
- {
- "metric": {
- "label": "xxx"
}, - "values": [
- [
- 1684740675,
- 1
], - [
- 1684740690,
- 2
]
]
}
]
}
}, - "warning_msg": "string"
}
Get the consumer based on the plugin name and key value.
Authorizations:
query Parameters
username | string The consumer username. |
plugin_name | string Enum: "key-auth" "basic-auth" "jwt-auth" "hmac-auth" The plugin name. |
key_value | string The key value. |
Responses
Response samples
- default
{- "username": "string",
- "consumer_name": "string",
- "auth_conf": { },
- "labels": { },
- "plugins": { },
- "credential_id": "string"
}
List all alert policies.
IAM Action: gateway:GetAlertPolicy
, Resource: arn:api7:gateway:alert/%s
Authorizations:
query Parameters
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" "name" "severity" |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
page | integer <int64> >= 1 The page number, starting from 1. |
search | string The search keyword. |
object non-empty | |
status | Array of strings Items Enum: "enabled" "disabled" |
severity | Array of strings Items Enum: "high" "medium" "low" |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "name": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "enable": true,
- "check_interval": 1,
- "severity": "high",
- "trigger_logical_operator": "All",
- "trigger_conditions": [
- {
- "event": "number_of_status_code",
- "scope": {
- "gateway_group_ids": [
- "string"
], - "gateway_group_labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}
}, - "event_config": {
- "duration": 1,
- "unit": "hour",
- "http_status_code": "string"
}, - "operator": "larger_equal",
- "value": 0
}
], - "notifications": [
- {
- "type": "email",
- "contact_point_ids": [
- "string"
], - "subject": "string",
- "content": "string"
}
]
}
], - "total": 0
}
Create an alert policy.
IAM Action: gateway:CreateAlertPolicy
, Resource: arn:api7:gateway:alert/*
Authorizations:
Request Body schema: application/json
name required | string [ 1 .. 100 ] characters The alert policy name. |
desc | string <= 65536 characters The alert policy description. |
object | |
enable | boolean Default: true Whether the alert policy is enabled. |
check_interval | integer [ 1 .. 86400 ] The check interval for the alert policy. The unit is second. |
severity | string Default: "medium" Enum: "high" "medium" "low" The alert severity level. |
trigger_logical_operator required | string Default: "All" Enum: "All" "Any" The logical relationship between multiple triggers. |
required | Array of Status Code (object) or Certificate Expiry (object) or Gateway Instance Offline (object) or Dataplane Cores Exceeded (object) or Numbers of Healthy Gateway Instances (object) non-empty The alert trigger conditions. |
Array of objects or objects The alert notifications. |
Responses
Request samples
- Payload
{- "name": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "enable": true,
- "check_interval": 1,
- "severity": "high",
- "trigger_logical_operator": "All",
- "trigger_conditions": [
- {
- "event": "number_of_status_code",
- "scope": {
- "gateway_group_ids": [
- "string"
], - "gateway_group_labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}
}, - "event_config": {
- "duration": 1,
- "unit": "hour",
- "http_status_code": "string"
}, - "operator": "larger_equal",
- "value": 0
}
], - "notifications": [
- {
- "type": "email",
- "contact_point_ids": [
- "string"
], - "subject": "string",
- "content": "string"
}
]
}
Response samples
- 200
- 400
- default
{- "value": {
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "name": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "enable": true,
- "check_interval": 1,
- "severity": "high",
- "trigger_logical_operator": "All",
- "trigger_conditions": [
- {
- "event": "number_of_status_code",
- "scope": {
- "gateway_group_ids": [
- "string"
], - "gateway_group_labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}
}, - "event_config": {
- "duration": 1,
- "unit": "hour",
- "http_status_code": "string"
}, - "operator": "larger_equal",
- "value": 0
}
], - "notifications": [
- {
- "type": "email",
- "contact_point_ids": [
- "string"
], - "subject": "string",
- "content": "string"
}
]
}, - "warning_msg": "string"
}
Get an alert policy.
IAM Action: gateway:GetAlertPolicy
, Resource: arn:api7:gateway:alert/%s
Authorizations:
path Parameters
alert_policy_id required | string |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "name": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "enable": true,
- "check_interval": 1,
- "severity": "high",
- "trigger_logical_operator": "All",
- "trigger_conditions": [
- {
- "event": "number_of_status_code",
- "scope": {
- "gateway_group_ids": [
- "string"
], - "gateway_group_labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}
}, - "event_config": {
- "duration": 1,
- "unit": "hour",
- "http_status_code": "string"
}, - "operator": "larger_equal",
- "value": 0
}
], - "notifications": [
- {
- "type": "email",
- "contact_point_ids": [
- "string"
], - "subject": "string",
- "content": "string"
}
]
}, - "warning_msg": "string"
}
Update an alert policy.
IAM Action: gateway:UpdateAlertPolicy
, Resource: arn:api7:gateway:alert/%s
Authorizations:
path Parameters
alert_policy_id required | string |
Request Body schema: application/json
name required | string [ 1 .. 100 ] characters The alert policy name. |
desc | string <= 65536 characters The alert policy description. |
object | |
enable | boolean Default: true Whether the alert policy is enabled. |
check_interval | integer [ 1 .. 86400 ] The check interval for the alert policy. The unit is second. |
severity | string Default: "medium" Enum: "high" "medium" "low" The alert severity level. |
trigger_logical_operator required | string Default: "All" Enum: "All" "Any" The logical relationship between multiple triggers. |
required | Array of Status Code (object) or Certificate Expiry (object) or Gateway Instance Offline (object) or Dataplane Cores Exceeded (object) or Numbers of Healthy Gateway Instances (object) non-empty The alert trigger conditions. |
Array of objects or objects The alert notifications. |
Responses
Request samples
- Payload
{- "name": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "enable": true,
- "check_interval": 1,
- "severity": "high",
- "trigger_logical_operator": "All",
- "trigger_conditions": [
- {
- "event": "number_of_status_code",
- "scope": {
- "gateway_group_ids": [
- "string"
], - "gateway_group_labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}
}, - "event_config": {
- "duration": 1,
- "unit": "hour",
- "http_status_code": "string"
}, - "operator": "larger_equal",
- "value": 0
}
], - "notifications": [
- {
- "type": "email",
- "contact_point_ids": [
- "string"
], - "subject": "string",
- "content": "string"
}
]
}
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
Patch an alert policy.
IAM Action: gateway:UpdateAlertPolicy
, Resource: arn:api7:gateway:alert/%s
Authorizations:
path Parameters
alert_policy_id required | string |
Request Body schema: application/json
op required | string Enum: "add" "replace" The operation to be performed |
path required | string A JSON Pointer path to the value you wish to modify or add, see https://jsonpatch.com/#json-pointer for more information |
value required | any The value to add or replace, can be any type |
Responses
Request samples
- Payload
[- {
- "op": "add",
- "path": "string",
- "value": null
}
]
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
List all alert histories.
IAM Action: gateway:GetAlertPolicy
, Resource: arn:api7:gateway:alert/*
Authorizations:
query Parameters
alert_policy_id | string |
severity | Array of strings Items Enum: "high" "medium" "low" |
start_at | integer |
end_at | integer |
gateway_group_id | string >= 1 |
order_by | string Default: "alert_time" Value: "alert_time" |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
page | integer <int64> >= 1 The page number, starting from 1. |
search | string The search keyword. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "id": "string",
- "alert_policy_id": "string",
- "alert_policy_name": "string",
- "trigger_gateway_groups": [
- {
- "gateway_group_id": "string",
- "gateway_group_name": "string"
}
], - "severity": "high",
- "alert_time": 0,
- "alert_detail": "string",
- "notification_logs": [
- {
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "contact_point_name": "string",
- "resource_type": "alert_policy",
- "resource_id": "string",
- "resource_name": "string",
- "status": "string",
- "send_time": 0,
- "request": "string",
- "response": "string"
}
], - "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
List all audit logs.
IAM Action: iam:GetAudit
, Resource: arn:api7:iam:organization/*
Authorizations:
query Parameters
event_type | string |
operator_id | string The user ID of the operator. |
gateway_group_id | string >= 1 |
resource_id | string |
start_at | integer |
end_at | integer |
order_by | string Default: "event_time" Value: "event_time" |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
page | integer <int64> >= 1 The page number, starting from 1. |
Responses
Response samples
- 200
{- "list": [
- {
- "id": "string",
- "event_time": 0,
- "operator": {
- "id": "string",
- "email": "string",
- "last_name": "string",
- "first_name": "string",
- "username": "string"
}, - "gateway_group_id": "string",
- "source": "dashboard",
- "token_name": "string",
- "event_type": "string",
- "resource_id": "string",
- "ip_address": "string",
- "error_message": "string",
- "http_request": {
- "method": "string",
- "uri": "string",
- "body": { },
- "user_agent": "string"
}, - "http_response": {
- "status_code": 0,
- "body": { }
}
}
], - "total": 0
}
Export all audit logs.
IAM Action: iam:ExportAudits
, Resource: arn:api7:iam:organization/*
Authorizations:
query Parameters
event_type | string |
operator_id | string The user ID of the operator. |
gateway_group_id | string >= 1 |
resource_id | string |
start_at | integer |
end_at | integer |
format required | string Enum: "json" "csv" |
Responses
Create a token.
Authorizations:
Request Body schema: application/json
name required | string <= 40 characters The token name. |
expires_at required | integer <int64> The expiration time of the token. |
Responses
Request samples
- Payload
{- "name": "string",
- "expires_at": 0
}
Response samples
- 200
- 400
- default
{- "value": {
- "id": "string",
- "name": "string",
- "created_at": 0,
- "updated_at": 0,
- "expires_at": 0,
- "user_id": "string",
- "user_name": "string",
- "last_used_at": 0,
- "token": "string"
}, - "warning_msg": "string"
}
List all tokens.
Authorizations:
query Parameters
order_by | string Default: "created_at" Enum: "created_at" "updated_at" "expires_at" |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
page | integer <int64> >= 1 The page number, starting from 1. |
search | string The search keyword. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "id": "string",
- "name": "string",
- "created_at": 0,
- "updated_at": 0,
- "expires_at": 0,
- "user_id": "string",
- "user_name": "string",
- "last_used_at": 0
}
], - "total": 0
}
Get a token.
Authorizations:
path Parameters
token_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the token. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "id": "string",
- "name": "string",
- "created_at": 0,
- "updated_at": 0,
- "expires_at": 0,
- "user_id": "string",
- "user_name": "string",
- "last_used_at": 0
}, - "warning_msg": "string"
}
Update a token.
Authorizations:
path Parameters
token_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the token. |
Request Body schema: application/json
name required | string <= 40 characters The token name. |
Responses
Request samples
- Payload
{- "name": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "id": "string",
- "name": "string",
- "created_at": 0,
- "updated_at": 0,
- "expires_at": 0,
- "user_id": "string",
- "user_name": "string",
- "last_used_at": 0
}, - "warning_msg": "string"
}
Regenerate a token.
Authorizations:
path Parameters
token_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the token. |
Request Body schema: application/json
expires_at required | integer <int64> The expiration time of the token. |
Responses
Request samples
- Payload
{- "expires_at": 0
}
Response samples
- 200
- 400
- default
{- "value": {
- "id": "string",
- "name": "string",
- "created_at": 0,
- "updated_at": 0,
- "expires_at": 0,
- "user_id": "string",
- "user_name": "string",
- "last_used_at": 0,
- "token": "string"
}, - "warning_msg": "string"
}
List all service registry connections on a gateway group.
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" "last_connect_time" |
search | string The search keyword. |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "description": "string",
- "health_check": {
- "probe_interval": 15,
- "probe_timeout": 5
}, - "type": "kubernetes",
- "kubernetes_config": {
- "service": {
- "schema": "http",
- "host": "string",
- "port": "6443"
}, - "namespace_selector": {
- "equal": "string",
- "not_equal": "string",
- "match": [
- "string"
], - "not_match": [
- "string"
]
}, - "label_selector": "string",
- "client": {
- "token_file": "string"
}
}, - "id": "string",
- "gateway_group_id": "string",
- "created_at": 0,
- "updated_at": 0,
- "status": "healthy",
- "last_connect_time": 0,
- "associated_services_count": 0
}
], - "total": 0
}
Create a service registry connection on a gateway group.
IAM Action: gateway:ConnectServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Request Body schema: application/json
name | string [ 1 .. 100 ] characters The object name. |
description | string |
object | |
type required | string Value: "kubernetes" The kubernetes service type. |
required | object |
Responses
Request samples
- Payload
{- "name": "string",
- "description": "string",
- "health_check": {
- "probe_interval": 15,
- "probe_timeout": 5
}, - "type": "nacos",
- "nacos_config": {
- "hosts": [
- "string"
], - "prefix": "/nacos/v1",
- "default_weight": 100,
- "fetch_interval": 30,
- "timeout": {
- "connect": 2,
- "send": 2,
- "read": 5
}, - "auth": {
- "username": "string",
- "password": "string"
}
}
}
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "description": "string",
- "health_check": {
- "probe_interval": 15,
- "probe_timeout": 5
}, - "type": "kubernetes",
- "kubernetes_config": {
- "service": {
- "schema": "http",
- "host": "string",
- "port": "6443"
}, - "namespace_selector": {
- "equal": "string",
- "not_equal": "string",
- "match": [
- "string"
], - "not_match": [
- "string"
]
}, - "label_selector": "string",
- "client": {
- "token_file": "string"
}
}, - "id": "string",
- "gateway_group_id": "string",
- "created_at": 0,
- "updated_at": 0,
- "status": "healthy",
- "last_connect_time": 0
}, - "warning_msg": "string"
}
Get a service registry connection on a gateway group.
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Responses
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "description": "string",
- "health_check": {
- "probe_interval": 15,
- "probe_timeout": 5
}, - "type": "kubernetes",
- "kubernetes_config": {
- "service": {
- "schema": "http",
- "host": "string",
- "port": "6443"
}, - "namespace_selector": {
- "equal": "string",
- "not_equal": "string",
- "match": [
- "string"
], - "not_match": [
- "string"
]
}, - "label_selector": "string",
- "client": {
- "token_file": "string"
}
}, - "id": "string",
- "gateway_group_id": "string",
- "created_at": 0,
- "updated_at": 0,
- "status": "healthy",
- "last_connect_time": 0
}, - "warning_msg": "string"
}
Update a service registry connection on a gateway group.
IAM Action: gateway:UpdateServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Request Body schema: application/json
name | string [ 1 .. 100 ] characters The object name. |
description | string |
object | |
type required | string Value: "kubernetes" The kubernetes service type. |
required | object |
Responses
Request samples
- Payload
{- "name": "string",
- "description": "string",
- "health_check": {
- "probe_interval": 15,
- "probe_timeout": 5
}, - "type": "nacos",
- "nacos_config": {
- "hosts": [
- "string"
], - "prefix": "/nacos/v1",
- "default_weight": 100,
- "fetch_interval": 30,
- "timeout": {
- "connect": 2,
- "send": 2,
- "read": 5
}, - "auth": {
- "username": "string",
- "password": "string"
}
}
}
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string"
}
Delete a service registry connection on a gateway group.
IAM Action: gateway:DisconnectServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Responses
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string"
}
List all published services connected to a service registry.
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" "publish_time" "name" |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "plugins": { },
- "type": "http",
- "hosts": [
- "string"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "roundrobin",
- "hash_on": "vars",
- "key": "string",
- "retries": 65535,
- "keepalive_pool": {
- "size": 320,
- "idle_timeout": 60,
- "requests": 1000
}, - "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "retry_timeout": 0,
- "pass_host": "pass",
- "upstream_host": "string",
- "nodes": [
- {
- "host": "string",
- "port": 1,
- "weight": 65535,
- "priority": 0
}
], - "service_name": "string",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "string",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "string"
], - "healthy": {
- "interval": 1,
- "http_statuses": [
- 200,
- 302
], - "successes": 2
}, - "unhealthy": {
- "interval": 1,
- "http_statuses": [
- 429,
- 404,
- 500,
- 501,
- 502,
- 503,
- 504,
- 505
], - "http_failures": 5,
- "tcp_failures": 2,
- "timeouts": 3
}
}, - "passive": {
- "type": "http",
- "healthy": {
- "http_statuses": [
- 200,
- 201,
- 202,
- 203,
- 204,
- 205,
- 206,
- 207,
- 208,
- 226,
- 300,
- 301,
- 302,
- 303,
- 304,
- 305,
- 306,
- 307,
- 308
], - "successes": 5
}, - "unhealthy": {
- "http_statuses": [
- 429,
- 500,
- 503
], - "tcp_failures": 2,
- "timeouts": 7,
- "http_failures": 5
}
}
}
}, - "id": "string",
- "service_id": "string",
- "version": "string",
- "created_at": 0,
- "gateway_group_name": "string",
- "gateway_group_id": "string",
- "unhealthy_nodes_count": 0,
- "status": 0
}
], - "total": 0
}
List all internal services in a Kubernetes service registry.
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Responses
Response samples
- 200
- default
{- "value": {
- "type": "kubernetes",
- "internal_services": {
- "default": [
- "service1",
- "service2"
], - "kube-system": [
- "kube-dns"
]
}
}, - "warning_msg": "string"
}
List all namespaces in a Nacos service registry.
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "namespace": "string",
- "namespace_show_name": "string"
}
], - "total": 0
}
List all groups in a Nacos namespace.
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
nacos_namespace required | string >= 1 Example: public |
Responses
Response samples
- 200
- default
{- "list": [
- "string"
], - "total": 0
}
List all internal services in a Nacos group.
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
nacos_namespace required | string >= 1 Example: public |
nacos_group required | string >= 1 Example: DEFAULT_GROUP |
Responses
Response samples
- 200
- default
{- "list": [
- "string"
], - "total": 0
}
Get all instance metadata of a Nacos services registry
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
nacos_namespace required | string >= 1 Example: public |
nacos_group required | string >= 1 Example: DEFAULT_GROUP |
nacos_service required | string >= 1 Example: api7ee3-keycloak |
Responses
Response samples
- 200
- default
{- "list": [
- { }
], - "total": 0,
- "value": {
- "idc": [
- "beijing",
- "shanghai"
]
}
}
Get health check history of a service registry connection on a gateway group.
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "connect_time" Value: "connect_time" |
status | Array of strings Items Enum: "healthy" "lost_connection" "connecting" |
search | string The search keyword. |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "instance_id": "string",
- "service_registry_id": "string",
- "hostname": "string",
- "status": "healthy",
- "connect_time": 0
}
], - "total": 0
}
List all internal services in a Kubernetes service registry.
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Responses
Response samples
- 200
- default
{- "value": {
- "type": "kubernetes",
- "internal_services": {
- "default": [
- "service1",
- "service2"
], - "kube-system": [
- "kube-dns"
]
}
}, - "warning_msg": "string"
}
List all namespaces in a Nacos service registry.
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "namespace": "string",
- "namespace_show_name": "string"
}
], - "total": 0
}
List all groups in a Nacos namespace.
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
nacos_namespace required | string >= 1 Example: public |
Responses
Response samples
- 200
- default
{- "list": [
- "string"
], - "total": 0
}
List all internal services in a Nacos group.
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
nacos_namespace required | string >= 1 Example: public |
nacos_group required | string >= 1 Example: DEFAULT_GROUP |
Responses
Response samples
- 200
- default
{- "list": [
- "string"
], - "total": 0
}
Get all instance metadata of a Nacos services registry
IAM Action: gateway:GetServiceRegistry
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
nacos_namespace required | string >= 1 Example: public |
nacos_group required | string >= 1 Example: DEFAULT_GROUP |
nacos_service required | string >= 1 Example: api7ee3-keycloak |
Responses
Response samples
- 200
- default
{- "list": [
- { }
], - "total": 0,
- "value": {
- "idc": [
- "beijing",
- "shanghai"
]
}
}
Get all labels of a resource type.
Authorizations:
path Parameters
resource_type required | string Enum: "gateway_group" "consumer" "consumer_credential" "ssl" "service" "route" "stream_route" "role" "permission_policy" "published_service" "secret" "contact_point" "alert_policy" |
query Parameters
gateway_group_id | string >= 1 |
Responses
Response samples
- 200
- default
{- "value": {
- "property1": [
- "string"
], - "property2": [
- "string"
]
}, - "warning_msg": "string"
}
Update deployment settings.
IAM Action: gateway:UpdateDeploymentSetting
, Resource: arn:api7:gateway:gatewaysetting/*
Authorizations:
Request Body schema: application/json
control_plane_address | Array of strings <url_scheme_port> [ 0 .. 32 ] items unique [ items <url_scheme_port > non-empty [^\/]$ ] |
Responses
Request samples
- Payload
{- "control_plane_address": [
- "string"
]
}
Response samples
- 200
- 400
- default
{- "value": {
- "control_plane_address": [
- "string"
]
}, - "warning_msg": "string"
}
Update SCIM settings.
IAM Action: iam:UpdateSCIMProvisioning
, Resource: arn:api7:iam:organization/*
Authorizations:
Request Body schema: application/json
enable_scim | boolean Enable SCIM endpoint. |
Responses
Request samples
- Payload
{- "enable_scim": true
}
Response samples
- 200
- 400
- default
{- "value": {
- "enable_scim": true
}, - "warning_msg": "string"
}
Update SMTP server settings.
IAM Action: iam:UpdateSMTPServer
, Resource: arn:api7:iam:organization/*
Authorizations:
Request Body schema: application/json
enable required | boolean Enable SMTP Server. |
address required | string <host_port> The SMTP server address. |
authentication_type | string Enum: "TLS" "STARTTLS" The authentication type of the SMTP server. |
ssl_verify required | boolean Whether to validate server-side SSL. |
username required | string |
password required | string |
from_name required | string Sender's name. |
from_address required | string Sender's email address. |
Responses
Request samples
- Payload
{- "enable": true,
- "address": "string",
- "authentication_type": "TLS",
- "ssl_verify": true,
- "username": "string",
- "password": "string",
- "from_name": "string",
- "from_address": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "enable": true,
- "address": "string",
- "authentication_type": "TLS",
- "ssl_verify": true,
- "username": "string",
- "password": "string",
- "from_name": "string",
- "from_address": "string"
}, - "warning_msg": "string"
}
Get SMTP server settings.
IAM Action: iam:GetSMTPServer
, Resource: arn:api7:iam:organization/*
Authorizations:
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "enable": true,
- "address": "string",
- "authentication_type": "TLS",
- "ssl_verify": true,
- "username": "string",
- "password": "string",
- "from_name": "string",
- "from_address": "string"
}, - "warning_msg": "string"
}
Get a login option.
IAM Action: iam:GetLoginOption
, Resource: arn:api7:iam:organization/*
Authorizations:
path Parameters
login_option_id required | string |
Responses
Response samples
- 200
- default
{- "value": {
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "name": "string",
- "logo": "string",
- "disable": false,
- "provider_type": "ldap",
- "oidc_config": {
- "client_id": "string",
- "client_secret": "string",
- "issuer": "string",
- "request_scopes": [
- "openid",
- "email",
- "profile"
], - "ssl_verify": true,
- "logout_url": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "saml_config": {
- "idp_metadata_url": "string",
- "sp_root_url": "string",
- "sp_acs_url": "string",
- "sp_slo_url": "string",
- "sp_metadata_url": "string",
- "sign_request": true,
- "certificate": "string",
- "entity_id": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "ldap_config": {
- "host": "string",
- "port": "string",
- "base_dn": "string",
- "bind_dn": "string",
- "bind_password": "string",
- "identifier": "cn",
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}, - "timeout": 10,
- "use_ssl": false,
- "ssl_verify": true,
- "root_ca_cert": "string",
- "client_cert": "string",
- "client_key": "string"
}, - "cas_config": {
- "url": "string",
- "send_service": true,
- "ssl_verify": true
}, - "role_mapping": [
- {
- "role_id": "string",
- "role_attribute_key": "string",
- "operation": "exact_match",
- "role_attribute_value": "string"
}
], - "boundary_mapping": [
- {
- "permission_policy_id": "string",
- "attribute_key": "string",
- "operation": "exact_match",
- "attribute_value": "string"
}
]
}, - "warning_msg": "string"
}
Update a login option.
IAM Action: iam:UpdateLoginOption
, Resource: arn:api7:iam:organization/*
Authorizations:
path Parameters
login_option_id required | string |
Request Body schema: application/json
name required | string |
logo | string The base64 logo image. |
disable | boolean Default: false Whether to disable the login option. |
provider_type | string Enum: "ldap" "oidc" "saml" "cas" "built_in" The login option type. |
object | |
object | |
object | |
object | |
Array of objects A list of role mappings defining operations and conditions under which roles are applied. | |
Array of objects A list of permission boundary mappings defining operations and conditions under which permission boundary are applied. |
Responses
Request samples
- Payload
{- "name": "string",
- "logo": "string",
- "disable": false,
- "provider_type": "ldap",
- "oidc_config": {
- "client_id": "string",
- "client_secret": "string",
- "issuer": "string",
- "request_scopes": [
- "openid",
- "email",
- "profile"
], - "ssl_verify": true,
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}
}, - "saml_config": {
- "idp_metadata_url": "string",
- "sp_root_url": "string",
- "sign_request": true,
- "logout_idp_session": false,
- "private_key": "string",
- "certificate": "string",
- "entity_id": "string",
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}
}, - "ldap_config": {
- "host": "string",
- "port": "string",
- "base_dn": "string",
- "bind_dn": "string",
- "bind_password": "string",
- "identifier": "cn",
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}, - "timeout": 10,
- "use_ssl": false,
- "ssl_verify": true,
- "root_ca_cert": "string",
- "client_cert": "string",
- "client_key": "string"
}, - "cas_config": {
- "url": "string",
- "send_service": true,
- "ssl_verify": true
}, - "role_mapping": [
- {
- "role_id": "string",
- "role_attribute_key": "string",
- "operation": "exact_match",
- "role_attribute_value": "string"
}
], - "boundary_mapping": [
- {
- "permission_policy_id": "string",
- "attribute_key": "string",
- "operation": "exact_match",
- "attribute_value": "string"
}
]
}
Response samples
- 200
- default
{- "value": {
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "name": "string",
- "logo": "string",
- "disable": false,
- "provider_type": "ldap",
- "oidc_config": {
- "client_id": "string",
- "client_secret": "string",
- "issuer": "string",
- "request_scopes": [
- "openid",
- "email",
- "profile"
], - "ssl_verify": true,
- "logout_url": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "saml_config": {
- "idp_metadata_url": "string",
- "sp_root_url": "string",
- "sp_acs_url": "string",
- "sp_slo_url": "string",
- "sp_metadata_url": "string",
- "sign_request": true,
- "certificate": "string",
- "entity_id": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "ldap_config": {
- "host": "string",
- "port": "string",
- "base_dn": "string",
- "bind_dn": "string",
- "bind_password": "string",
- "identifier": "cn",
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}, - "timeout": 10,
- "use_ssl": false,
- "ssl_verify": true,
- "root_ca_cert": "string",
- "client_cert": "string",
- "client_key": "string"
}, - "cas_config": {
- "url": "string",
- "send_service": true,
- "ssl_verify": true
}, - "role_mapping": [
- {
- "role_id": "string",
- "role_attribute_key": "string",
- "operation": "exact_match",
- "role_attribute_value": "string"
}
], - "boundary_mapping": [
- {
- "permission_policy_id": "string",
- "attribute_key": "string",
- "operation": "exact_match",
- "attribute_value": "string"
}
]
}, - "warning_msg": "string"
}
Patch a login option.
IAM Action: iam:UpdateLoginOption
, Resource: arn:api7:iam:organization/*
Authorizations:
path Parameters
login_option_id required | string |
Request Body schema: application/json
op required | string Enum: "add" "replace" The operation to be performed |
path required | string A JSON Pointer path to the value you wish to modify or add, see https://jsonpatch.com/#json-pointer for more information |
value required | any The value to add or replace, can be any type |
Responses
Request samples
- Payload
[- {
- "op": "add",
- "path": "string",
- "value": null
}
]
Response samples
- 200
- default
{- "value": {
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "name": "string",
- "logo": "string",
- "disable": false,
- "provider_type": "ldap",
- "oidc_config": {
- "client_id": "string",
- "client_secret": "string",
- "issuer": "string",
- "request_scopes": [
- "openid",
- "email",
- "profile"
], - "ssl_verify": true,
- "logout_url": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "saml_config": {
- "idp_metadata_url": "string",
- "sp_root_url": "string",
- "sp_acs_url": "string",
- "sp_slo_url": "string",
- "sp_metadata_url": "string",
- "sign_request": true,
- "certificate": "string",
- "entity_id": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "ldap_config": {
- "host": "string",
- "port": "string",
- "base_dn": "string",
- "bind_dn": "string",
- "bind_password": "string",
- "identifier": "cn",
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}, - "timeout": 10,
- "use_ssl": false,
- "ssl_verify": true,
- "root_ca_cert": "string",
- "client_cert": "string",
- "client_key": "string"
}, - "cas_config": {
- "url": "string",
- "send_service": true,
- "ssl_verify": true
}, - "role_mapping": [
- {
- "role_id": "string",
- "role_attribute_key": "string",
- "operation": "exact_match",
- "role_attribute_value": "string"
}
], - "boundary_mapping": [
- {
- "permission_policy_id": "string",
- "attribute_key": "string",
- "operation": "exact_match",
- "attribute_value": "string"
}
]
}, - "warning_msg": "string"
}
List all login options.
IAM Action: iam:GetLoginOption
, Resource: arn:api7:iam:organization/*
Authorizations:
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
name | string Name is the name of the resource. |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "name": "string",
- "logo": "string",
- "disable": false,
- "provider_type": "ldap",
- "oidc_config": {
- "client_id": "string",
- "client_secret": "string",
- "issuer": "string",
- "request_scopes": [
- "openid",
- "email",
- "profile"
], - "ssl_verify": true,
- "logout_url": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "saml_config": {
- "idp_metadata_url": "string",
- "sp_root_url": "string",
- "sp_acs_url": "string",
- "sp_slo_url": "string",
- "sp_metadata_url": "string",
- "sign_request": true,
- "certificate": "string",
- "entity_id": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "ldap_config": {
- "host": "string",
- "port": "string",
- "base_dn": "string",
- "bind_dn": "string",
- "bind_password": "string",
- "identifier": "cn",
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}, - "timeout": 10,
- "use_ssl": false,
- "ssl_verify": true,
- "root_ca_cert": "string",
- "client_cert": "string",
- "client_key": "string"
}, - "cas_config": {
- "url": "string",
- "send_service": true,
- "ssl_verify": true
}, - "role_mapping": [
- {
- "role_id": "string",
- "role_attribute_key": "string",
- "operation": "exact_match",
- "role_attribute_value": "string"
}
], - "boundary_mapping": [
- {
- "permission_policy_id": "string",
- "attribute_key": "string",
- "operation": "exact_match",
- "attribute_value": "string"
}
]
}
], - "total": 0
}
Create a login option.
IAM Action: iam:CreateLoginOption
, Resource: arn:api7:iam:organization/*
Authorizations:
Request Body schema: application/json
name required | string |
logo | string The base64 logo image. |
disable | boolean Default: false Whether to disable the login option. |
provider_type | string Enum: "ldap" "oidc" "saml" "cas" "built_in" The login option type. |
object | |
object | |
object | |
object | |
Array of objects A list of role mappings defining operations and conditions under which roles are applied. | |
Array of objects A list of permission boundary mappings defining operations and conditions under which permission boundary are applied. |
Responses
Request samples
- Payload
{- "name": "string",
- "logo": "string",
- "disable": false,
- "provider_type": "ldap",
- "oidc_config": {
- "client_id": "string",
- "client_secret": "string",
- "issuer": "string",
- "request_scopes": [
- "openid",
- "email",
- "profile"
], - "ssl_verify": true,
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}
}, - "saml_config": {
- "idp_metadata_url": "string",
- "sp_root_url": "string",
- "sign_request": true,
- "logout_idp_session": false,
- "private_key": "string",
- "certificate": "string",
- "entity_id": "string",
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}
}, - "ldap_config": {
- "host": "string",
- "port": "string",
- "base_dn": "string",
- "bind_dn": "string",
- "bind_password": "string",
- "identifier": "cn",
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}, - "timeout": 10,
- "use_ssl": false,
- "ssl_verify": true,
- "root_ca_cert": "string",
- "client_cert": "string",
- "client_key": "string"
}, - "cas_config": {
- "url": "string",
- "send_service": true,
- "ssl_verify": true
}, - "role_mapping": [
- {
- "role_id": "string",
- "role_attribute_key": "string",
- "operation": "exact_match",
- "role_attribute_value": "string"
}
], - "boundary_mapping": [
- {
- "permission_policy_id": "string",
- "attribute_key": "string",
- "operation": "exact_match",
- "attribute_value": "string"
}
]
}
Response samples
- 200
- default
{- "list": [
- {
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "name": "string",
- "logo": "string",
- "disable": false,
- "provider_type": "ldap",
- "oidc_config": {
- "client_id": "string",
- "client_secret": "string",
- "issuer": "string",
- "request_scopes": [
- "openid",
- "email",
- "profile"
], - "ssl_verify": true,
- "logout_url": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "saml_config": {
- "idp_metadata_url": "string",
- "sp_root_url": "string",
- "sp_acs_url": "string",
- "sp_slo_url": "string",
- "sp_metadata_url": "string",
- "sign_request": true,
- "certificate": "string",
- "entity_id": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "ldap_config": {
- "host": "string",
- "port": "string",
- "base_dn": "string",
- "bind_dn": "string",
- "bind_password": "string",
- "identifier": "cn",
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}, - "timeout": 10,
- "use_ssl": false,
- "ssl_verify": true,
- "root_ca_cert": "string",
- "client_cert": "string",
- "client_key": "string"
}, - "cas_config": {
- "url": "string",
- "send_service": true,
- "ssl_verify": true
}, - "role_mapping": [
- {
- "role_id": "string",
- "role_attribute_key": "string",
- "operation": "exact_match",
- "role_attribute_value": "string"
}
], - "boundary_mapping": [
- {
- "permission_policy_id": "string",
- "attribute_key": "string",
- "operation": "exact_match",
- "attribute_value": "string"
}
]
}
], - "total": 0
}
List all login options for login.
list login options for login
Authorizations:
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
name | string Name is the name of the resource. |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "name": "string",
- "logo": "string",
- "disable": false,
- "provider_type": "ldap"
}
], - "total": 0
}
Get a login option.
IAM Action: iam:GetLoginOption
, Resource: arn:api7:iam:organization/*
Authorizations:
path Parameters
login_option_id required | string |
Responses
Response samples
- 200
- default
{- "value": {
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "name": "string",
- "logo": "string",
- "disable": false,
- "provider_type": "ldap",
- "oidc_config": {
- "client_id": "string",
- "client_secret": "string",
- "issuer": "string",
- "request_scopes": [
- "openid",
- "email",
- "profile"
], - "ssl_verify": true,
- "logout_url": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "saml_config": {
- "idp_metadata_url": "string",
- "sp_root_url": "string",
- "sp_acs_url": "string",
- "sp_slo_url": "string",
- "sp_metadata_url": "string",
- "sign_request": true,
- "certificate": "string",
- "entity_id": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "ldap_config": {
- "host": "string",
- "port": "string",
- "base_dn": "string",
- "bind_dn": "string",
- "bind_password": "string",
- "identifier": "cn",
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}, - "timeout": 10,
- "use_ssl": false,
- "ssl_verify": true,
- "root_ca_cert": "string",
- "client_cert": "string",
- "client_key": "string"
}, - "cas_config": {
- "url": "string",
- "send_service": true,
- "ssl_verify": true
}, - "role_mapping": [
- {
- "role_id": "string",
- "role_attribute_key": "string",
- "operation": "exact_match",
- "role_attribute_value": "string"
}
], - "boundary_mapping": [
- {
- "permission_policy_id": "string",
- "attribute_key": "string",
- "operation": "exact_match",
- "attribute_value": "string"
}
]
}, - "warning_msg": "string"
}
Update a login option.
IAM Action: iam:UpdateLoginOption
, Resource: arn:api7:iam:organization/*
Authorizations:
path Parameters
login_option_id required | string |
Request Body schema: application/json
name required | string |
logo | string The base64 logo image. |
disable | boolean Default: false Whether to disable the login option. |
provider_type | string Enum: "ldap" "oidc" "saml" "cas" "built_in" The login option type. |
object | |
object | |
object | |
object | |
Array of objects A list of role mappings defining operations and conditions under which roles are applied. | |
Array of objects A list of permission boundary mappings defining operations and conditions under which permission boundary are applied. |
Responses
Request samples
- Payload
{- "name": "string",
- "logo": "string",
- "disable": false,
- "provider_type": "ldap",
- "oidc_config": {
- "client_id": "string",
- "client_secret": "string",
- "issuer": "string",
- "request_scopes": [
- "openid",
- "email",
- "profile"
], - "ssl_verify": true,
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}
}, - "saml_config": {
- "idp_metadata_url": "string",
- "sp_root_url": "string",
- "sign_request": true,
- "logout_idp_session": false,
- "private_key": "string",
- "certificate": "string",
- "entity_id": "string",
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}
}, - "ldap_config": {
- "host": "string",
- "port": "string",
- "base_dn": "string",
- "bind_dn": "string",
- "bind_password": "string",
- "identifier": "cn",
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}, - "timeout": 10,
- "use_ssl": false,
- "ssl_verify": true,
- "root_ca_cert": "string",
- "client_cert": "string",
- "client_key": "string"
}, - "cas_config": {
- "url": "string",
- "send_service": true,
- "ssl_verify": true
}, - "role_mapping": [
- {
- "role_id": "string",
- "role_attribute_key": "string",
- "operation": "exact_match",
- "role_attribute_value": "string"
}
], - "boundary_mapping": [
- {
- "permission_policy_id": "string",
- "attribute_key": "string",
- "operation": "exact_match",
- "attribute_value": "string"
}
]
}
Response samples
- 200
- default
{- "value": {
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "name": "string",
- "logo": "string",
- "disable": false,
- "provider_type": "ldap",
- "oidc_config": {
- "client_id": "string",
- "client_secret": "string",
- "issuer": "string",
- "request_scopes": [
- "openid",
- "email",
- "profile"
], - "ssl_verify": true,
- "logout_url": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "saml_config": {
- "idp_metadata_url": "string",
- "sp_root_url": "string",
- "sp_acs_url": "string",
- "sp_slo_url": "string",
- "sp_metadata_url": "string",
- "sign_request": true,
- "certificate": "string",
- "entity_id": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "ldap_config": {
- "host": "string",
- "port": "string",
- "base_dn": "string",
- "bind_dn": "string",
- "bind_password": "string",
- "identifier": "cn",
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}, - "timeout": 10,
- "use_ssl": false,
- "ssl_verify": true,
- "root_ca_cert": "string",
- "client_cert": "string",
- "client_key": "string"
}, - "cas_config": {
- "url": "string",
- "send_service": true,
- "ssl_verify": true
}, - "role_mapping": [
- {
- "role_id": "string",
- "role_attribute_key": "string",
- "operation": "exact_match",
- "role_attribute_value": "string"
}
], - "boundary_mapping": [
- {
- "permission_policy_id": "string",
- "attribute_key": "string",
- "operation": "exact_match",
- "attribute_value": "string"
}
]
}, - "warning_msg": "string"
}
Patch a login option.
IAM Action: iam:UpdateLoginOption
, Resource: arn:api7:iam:organization/*
Authorizations:
path Parameters
login_option_id required | string |
Request Body schema: application/json
op required | string Enum: "add" "replace" The operation to be performed |
path required | string A JSON Pointer path to the value you wish to modify or add, see https://jsonpatch.com/#json-pointer for more information |
value required | any The value to add or replace, can be any type |
Responses
Request samples
- Payload
[- {
- "op": "add",
- "path": "string",
- "value": null
}
]
Response samples
- 200
- default
{- "value": {
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "name": "string",
- "logo": "string",
- "disable": false,
- "provider_type": "ldap",
- "oidc_config": {
- "client_id": "string",
- "client_secret": "string",
- "issuer": "string",
- "request_scopes": [
- "openid",
- "email",
- "profile"
], - "ssl_verify": true,
- "logout_url": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "saml_config": {
- "idp_metadata_url": "string",
- "sp_root_url": "string",
- "sp_acs_url": "string",
- "sp_slo_url": "string",
- "sp_metadata_url": "string",
- "sign_request": true,
- "certificate": "string",
- "entity_id": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "ldap_config": {
- "host": "string",
- "port": "string",
- "base_dn": "string",
- "bind_dn": "string",
- "bind_password": "string",
- "identifier": "cn",
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}, - "timeout": 10,
- "use_ssl": false,
- "ssl_verify": true,
- "root_ca_cert": "string",
- "client_cert": "string",
- "client_key": "string"
}, - "cas_config": {
- "url": "string",
- "send_service": true,
- "ssl_verify": true
}, - "role_mapping": [
- {
- "role_id": "string",
- "role_attribute_key": "string",
- "operation": "exact_match",
- "role_attribute_value": "string"
}
], - "boundary_mapping": [
- {
- "permission_policy_id": "string",
- "attribute_key": "string",
- "operation": "exact_match",
- "attribute_value": "string"
}
]
}, - "warning_msg": "string"
}
List all login options.
IAM Action: iam:GetLoginOption
, Resource: arn:api7:iam:organization/*
Authorizations:
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
name | string Name is the name of the resource. |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "name": "string",
- "logo": "string",
- "disable": false,
- "provider_type": "ldap",
- "oidc_config": {
- "client_id": "string",
- "client_secret": "string",
- "issuer": "string",
- "request_scopes": [
- "openid",
- "email",
- "profile"
], - "ssl_verify": true,
- "logout_url": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "saml_config": {
- "idp_metadata_url": "string",
- "sp_root_url": "string",
- "sp_acs_url": "string",
- "sp_slo_url": "string",
- "sp_metadata_url": "string",
- "sign_request": true,
- "certificate": "string",
- "entity_id": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "ldap_config": {
- "host": "string",
- "port": "string",
- "base_dn": "string",
- "bind_dn": "string",
- "bind_password": "string",
- "identifier": "cn",
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}, - "timeout": 10,
- "use_ssl": false,
- "ssl_verify": true,
- "root_ca_cert": "string",
- "client_cert": "string",
- "client_key": "string"
}, - "cas_config": {
- "url": "string",
- "send_service": true,
- "ssl_verify": true
}, - "role_mapping": [
- {
- "role_id": "string",
- "role_attribute_key": "string",
- "operation": "exact_match",
- "role_attribute_value": "string"
}
], - "boundary_mapping": [
- {
- "permission_policy_id": "string",
- "attribute_key": "string",
- "operation": "exact_match",
- "attribute_value": "string"
}
]
}
], - "total": 0
}
Create a login option.
IAM Action: iam:CreateLoginOption
, Resource: arn:api7:iam:organization/*
Authorizations:
Request Body schema: application/json
name required | string |
logo | string The base64 logo image. |
disable | boolean Default: false Whether to disable the login option. |
provider_type | string Enum: "ldap" "oidc" "saml" "cas" "built_in" The login option type. |
object | |
object | |
object | |
object | |
Array of objects A list of role mappings defining operations and conditions under which roles are applied. | |
Array of objects A list of permission boundary mappings defining operations and conditions under which permission boundary are applied. |
Responses
Request samples
- Payload
{- "name": "string",
- "logo": "string",
- "disable": false,
- "provider_type": "ldap",
- "oidc_config": {
- "client_id": "string",
- "client_secret": "string",
- "issuer": "string",
- "request_scopes": [
- "openid",
- "email",
- "profile"
], - "ssl_verify": true,
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}
}, - "saml_config": {
- "idp_metadata_url": "string",
- "sp_root_url": "string",
- "sign_request": true,
- "logout_idp_session": false,
- "private_key": "string",
- "certificate": "string",
- "entity_id": "string",
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}
}, - "ldap_config": {
- "host": "string",
- "port": "string",
- "base_dn": "string",
- "bind_dn": "string",
- "bind_password": "string",
- "identifier": "cn",
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}, - "timeout": 10,
- "use_ssl": false,
- "ssl_verify": true,
- "root_ca_cert": "string",
- "client_cert": "string",
- "client_key": "string"
}, - "cas_config": {
- "url": "string",
- "send_service": true,
- "ssl_verify": true
}, - "role_mapping": [
- {
- "role_id": "string",
- "role_attribute_key": "string",
- "operation": "exact_match",
- "role_attribute_value": "string"
}
], - "boundary_mapping": [
- {
- "permission_policy_id": "string",
- "attribute_key": "string",
- "operation": "exact_match",
- "attribute_value": "string"
}
]
}
Response samples
- 200
- default
{- "list": [
- {
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "name": "string",
- "logo": "string",
- "disable": false,
- "provider_type": "ldap",
- "oidc_config": {
- "client_id": "string",
- "client_secret": "string",
- "issuer": "string",
- "request_scopes": [
- "openid",
- "email",
- "profile"
], - "ssl_verify": true,
- "logout_url": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "saml_config": {
- "idp_metadata_url": "string",
- "sp_root_url": "string",
- "sp_acs_url": "string",
- "sp_slo_url": "string",
- "sp_metadata_url": "string",
- "sign_request": true,
- "certificate": "string",
- "entity_id": "string",
- "attributes": {
- "property1": "string",
- "property2": "string"
}
}, - "ldap_config": {
- "host": "string",
- "port": "string",
- "base_dn": "string",
- "bind_dn": "string",
- "bind_password": "string",
- "identifier": "cn",
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}, - "timeout": 10,
- "use_ssl": false,
- "ssl_verify": true,
- "root_ca_cert": "string",
- "client_cert": "string",
- "client_key": "string"
}, - "cas_config": {
- "url": "string",
- "send_service": true,
- "ssl_verify": true
}, - "role_mapping": [
- {
- "role_id": "string",
- "role_attribute_key": "string",
- "operation": "exact_match",
- "role_attribute_value": "string"
}
], - "boundary_mapping": [
- {
- "permission_policy_id": "string",
- "attribute_key": "string",
- "operation": "exact_match",
- "attribute_value": "string"
}
]
}
], - "total": 0
}
List all login options for login.
list login options for login
Authorizations:
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
name | string Name is the name of the resource. |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "name": "string",
- "logo": "string",
- "disable": false,
- "provider_type": "ldap"
}
], - "total": 0
}
Get name of resources
Authorizations:
Request Body schema: application/json
resource_type required | string Enum: "gateway_group" "contact_point" |
ids required | Array of strings non-empty unique [ items non-empty ] |
Responses
Request samples
- Payload
{- "resource_type": "gateway_group",
- "ids": [
- "string"
]
}
Response samples
- 200
- default
{- "value": {
- "property1": "string",
- "property2": "string"
}, - "warning_msg": "string"
}
List all custom plugins.
IAM Action: gateway:GetCustomPlugin
, Resource: arn:api7:gateway:gatewaysetting/*
Authorizations:
query Parameters
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
search | string The search keyword. |
name | string Name is the name of the resource. |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "id": "string",
- "name": "string",
- "version": "string",
- "source_code": "string",
- "catalog": "string",
- "description": "string",
- "author": "string",
- "logo": "string",
- "is_obfuscated": true,
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Create a custom plugin.
IAM Action: gateway:CreateCustomPlugin
, Resource: arn:api7:gateway:gatewaysetting/*
Authorizations:
Request Body schema: application/json
source_code required | string The source code for the plugin. |
file | string The source code or zip file for the plugin. |
catalog | string The catalog to which the plugin belongs, such as 'Traffic' or 'Observability'. |
description | string A brief description of the plugin. |
documentation_link | string A link to the plugin's documentation. |
author | string |
logo | string An optional logo for the plugin. |
Responses
Request samples
- Payload
{- "source_code": "string",
- "file": "string",
- "catalog": "string",
- "description": "string",
- "author": "string",
- "logo": "string"
}
Response samples
- 200
- default
{- "value": {
- "id": "string",
- "name": "string",
- "version": "string",
- "source_code": "string",
- "catalog": "string",
- "description": "string",
- "author": "string",
- "logo": "string",
- "is_obfuscated": true,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Get a custom plugin
IAM Action: gateway:GetCustomPlugin
, Resource: arn:api7:gateway:gatewaysetting/*
Authorizations:
path Parameters
custom_plugin_id required | string |
Responses
Response samples
- 200
- default
{- "value": {
- "id": "string",
- "name": "string",
- "version": "string",
- "source_code": "string",
- "catalog": "string",
- "description": "string",
- "author": "string",
- "logo": "string",
- "is_obfuscated": true,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update a custom plugin.
IAM Action: gateway:UpdateCustomPlugin
, Resource: arn:api7:gateway:gatewaysetting/*
Authorizations:
path Parameters
custom_plugin_id required | string |
Request Body schema: application/json
source_code required | string The source code for the plugin. |
file | string The source code or zip file for the plugin. |
catalog | string The catalog to which the plugin belongs, such as 'Traffic' or 'Observability'. |
description | string A brief description of the plugin. |
documentation_link | string A link to the plugin's documentation. |
author | string |
logo | string An optional logo for the plugin. |
Responses
Request samples
- Payload
{- "source_code": "string",
- "file": "string",
- "catalog": "string",
- "description": "string",
- "author": "string",
- "logo": "string"
}
Response samples
- 200
- default
{- "value": {
- "id": "string",
- "name": "string",
- "version": "string",
- "source_code": "string",
- "catalog": "string",
- "description": "string",
- "author": "string",
- "logo": "string",
- "is_obfuscated": true,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Parse custom plugin code.
Authorizations:
Request Body schema: application/json
file required | string The source code or zip file for the plugin. |
Responses
Request samples
- Payload
{- "file": "string"
}
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "version": "string",
- "catalog": "string",
- "description": "string",
- "author": "string",
- "logo": "string"
}, - "warning_msg": "string"
}
Create a ContactPoint
IAM Action: iam:CreateContactPoint
, Resource: arn:api7:iam:contactpoint/*
Authorizations:
Request Body schema: application/json
name | string |
desc | string <= 65536 characters The object description. |
object | |
type | string Value: "email" |
required | object |
Responses
Request samples
- Payload
{- "name": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "type": "email",
- "email_config": {
- "email": [
- "user@example.com"
]
}
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "type": "email",
- "email_config": {
- "email": [
- "user@example.com"
]
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List ContactPoints
IAM Action: iam:GetContactPoint
, Resource: arn:api7:iam:contactpoint/%s
Authorizations:
query Parameters
type | string Enum: "email" "webhook" |
object non-empty | |
search | string The search keyword. |
order_by | string Default: "updated_at" Enum: "created_at" "updated_at" |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "type": "email",
- "email_config": {
- "email": [
- "user@example.com"
]
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a ContactPoint
IAM Action: iam:GetContactPoint
, Resource: arn:api7:iam:contactpoint/%s
Authorizations:
path Parameters
contact_point_id required | string |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "type": "email",
- "email_config": {
- "email": [
- "user@example.com"
]
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update a ContactPoint
IAM Action: iam:UpdateContactPoint
, Resource: arn:api7:iam:contactpoint/%s
Authorizations:
path Parameters
contact_point_id required | string |
Request Body schema: application/json
name | string |
desc | string <= 65536 characters The object description. |
object | |
type | string Value: "email" |
required | object |
Responses
Request samples
- Payload
{- "name": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "type": "email",
- "email_config": {
- "email": [
- "user@example.com"
]
}
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "type": "email",
- "email_config": {
- "email": [
- "user@example.com"
]
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List notification logs of a ContactPoint
IAM Action: iam:GetContactPoint
, Resource: arn:api7:iam:contactpoint/%s
Authorizations:
path Parameters
contact_point_id required | string |
query Parameters
start_at | integer |
end_at | integer |
resource_type | string Value: "alert_policy" |
status | string |
order_by | string Default: "send_time" Value: "send_time" |
direction | string Default: "desc" Enum: "asc" "desc" It should be ascending or descending (case-insensitive). By default, it is set to descending. |
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "contact_point_name": "string",
- "resource_type": "alert_policy",
- "resource_id": "string",
- "resource_name": "string",
- "status": "string",
- "send_time": 0,
- "request": "string",
- "response": "string"
}
], - "total": 0
}
List a ContactPoint usages.
IAM Action: iam:GetContactPoint
, Resource: arn:api7:iam:contactpoint/%s
Authorizations:
path Parameters
contact_point_id required | string |
query Parameters
resource_type | string Value: "alert_policy" |
page | integer <int64> >= 1 The page number, starting from 1. |
page_size | integer <int64> >= 1 The page size. It must be greater than 0. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "resource_type": "alert_policy",
- "resource_id": "string",
- "resource_name": "string"
}
], - "total": 0
}