API7 Enterprise Admin APIs (3.8.4)
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. |
type required | 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. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
(ConsistentHashingAlgorithm (UseUpstreamNodes (object) or UseServiceRegistry (object) or UseServiceRegistryWithArgs (object))) or (OtherLoadBalancingAlgorithm (UseUpstreamNodes (object) or UseServiceRegistry (object) or UseServiceRegistryWithArgs (object))) | |
status | integer Default: 1 Enum: 0 1 The object status. 1 means the object is active while 0 means it's inactive. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "type": "http",
- "hosts": [
- "httpbin.org"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "plugins": { },
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "chash",
- "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": "httpbin.org",
- "nodes": [
- {
- "host": "httpbin.org",
- "port": 8080,
- "weight": 100,
- "priority": 0
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "client_certificate": "string",
- "ca_certificates": [
- "string"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "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
}
}
}, - "hash_on": "vars",
- "key": "string"
}, - "status": 0
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "type": "http",
- "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. |
unhealthy_nodes | Array of strings Items Enum: "unhealthy_nodes_exists" "no_unhealthy_nodes" |
object non-empty | |
hosts | Array of strings Example: hosts=httpbin.org |
type | Array of strings Items Enum: "http" "stream" |
with_publish_info | boolean Default: false Whether to include publish info in the response. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "type": "http",
- "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. |
with_publish_info | boolean Default: false Whether to include publish info in the response. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "type": "http",
- "id": "string",
- "last_published": 0,
- "published_gateway_groups_count": 0,
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update a 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. |
type required | 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. |
plugins | object The key-value pairs which represent the plugins attached on the object. |
(ConsistentHashingAlgorithm (UseUpstreamNodes (object) or UseServiceRegistry (object) or UseServiceRegistryWithArgs (object))) or (OtherLoadBalancingAlgorithm (UseUpstreamNodes (object) or UseServiceRegistry (object) or UseServiceRegistryWithArgs (object))) | |
status | integer Default: 1 Enum: 0 1 The object status. 1 means the object is active while 0 means it's inactive. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "type": "http",
- "hosts": [
- "httpbin.org"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "plugins": { },
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "chash",
- "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": "httpbin.org",
- "nodes": [
- {
- "host": "httpbin.org",
- "port": 8080,
- "weight": 100,
- "priority": 0
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "client_certificate": "string",
- "ca_certificates": [
- "string"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "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
}
}
}, - "hash_on": "vars",
- "key": "string"
}, - "status": 0
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "type": "http",
- "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",
- "type": "http",
- "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"
}
Create a upstream in 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
name | string [ 1 .. 65536 ] characters Default: "default" The upstream name. |
scheme | string Default: "http" Enum: "http" "https" "grpc" "grpcs" The protocol that is used for communicating with the backend service when the service type is |
desc | string <= 65536 characters The object description. |
type | string Default: "roundrobin" Value: "chash" The load balancing algorithm to distribute traffic to targets. |
retries | integer [ 0 .. 65535 ] The number of retries while passing the request to an upstream using the underlying Nginx mechanism. |
object The upstream separate connection pool. | |
object The timeout settings for connecting to, and sending and receiving messages to and from the upstream (in seconds). | |
retry_timeout | number <float> >= 0 Default: 0 Timeout to continue with retries. Setting this to 0 disables the retry timeout. |
pass_host | string Default: "pass" Enum: "pass" "node" "rewrite" Define how to decide the host header before forwarding requests to an upstream.
|
upstream_host | string^\*?[0-9a-zA-Z-._]+$ Only valid if the |
required | Array of objects The upstream endpoints. |
service_name | string [ 1 .. 256 ] characters Only valid for service discovery. Used to indicate how services are discovered in the service registry. |
discovery_type | string Enum: "kubernetes" "nacos" Only valid for service discovery. |
object Only valid for service discovery. | |
object or object Deprecated Replace with | |
client_certificate | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
ca_certificates | Array of strings[ items [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ ] |
tls_verify | boolean |
object or object The health check data. | |
hash_on | string Default: "vars" Enum: "vars" "header" "cookie" "consumer" "vars_combinations" Only valid if the type is |
key | string non-empty The key is used for consistent hash, which can be combined using variables, such as $host$uri. Finds the corresponding node id according to hash_on and key values. When hash_on is set to vars, key is a required parameter and it supports Nginx variables. When hash_on is set as header, key is a required parameter, and header name can be customized. When hash_on is set to cookie, key is also a required parameter, and cookie name can be customized. When hash_on is set to consumer, key need not be set and the key used by the hash algorithm would be the authenticated consumer_name. |
Responses
Request samples
- Payload
{- "name": "default",
- "scheme": "tcp",
- "desc": "string",
- "type": "chash",
- "retries": 65535,
- "retry_timeout": 0,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "nodes": [
- {
- "host": "httpbin.org",
- "port": 8080,
- "weight": 100,
- "priority": 0
}
], - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "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
}
}
}, - "hash_on": "vars",
- "key": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "chash",
- "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": "httpbin.org",
- "nodes": [
- {
- "host": "httpbin.org",
- "port": 8080,
- "weight": 100,
- "priority": 0
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "client_certificate": "string",
- "ca_certificates": [
- "string"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "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
}
}
}, - "hash_on": "vars",
- "key": "string",
- "id": "string",
- "gateway_group_id": "string",
- "apisix_service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List all upstreams in 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. |
order_by | string Default: "created_at" Value: "created_at" |
direction | string Default: "asc" Value: "asc" |
with_publish_info | boolean Default: false Whether to include publish info in the response. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "chash",
- "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": "httpbin.org",
- "nodes": [
- {
- "host": "httpbin.org",
- "port": 8080,
- "weight": 100,
- "priority": 0
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "client_certificate": "string",
- "ca_certificates": [
- "string"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "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
}
}
}, - "hash_on": "vars",
- "key": "string",
- "id": "string",
- "gateway_group_id": "string",
- "apisix_service_id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a upstream in 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. |
upstream_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the upstream. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
with_publish_info | boolean Default: false Whether to include publish info in the response. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "chash",
- "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": "httpbin.org",
- "nodes": [
- {
- "host": "httpbin.org",
- "port": 8080,
- "weight": 100,
- "priority": 0
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "client_certificate": "string",
- "ca_certificates": [
- "string"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "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
}
}
}, - "hash_on": "vars",
- "key": "string",
- "id": "string",
- "gateway_group_id": "string",
- "apisix_service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update a upstream in 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. |
upstream_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the upstream. |
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 Default: "default" The upstream name. |
scheme | string Default: "http" Enum: "http" "https" "grpc" "grpcs" The protocol that is used for communicating with the backend service when the service type is |
desc | string <= 65536 characters The object description. |
type | string Default: "roundrobin" Value: "chash" The load balancing algorithm to distribute traffic to targets. |
retries | integer [ 0 .. 65535 ] The number of retries while passing the request to an upstream using the underlying Nginx mechanism. |
object The upstream separate connection pool. | |
object The timeout settings for connecting to, and sending and receiving messages to and from the upstream (in seconds). | |
retry_timeout | number <float> >= 0 Default: 0 Timeout to continue with retries. Setting this to 0 disables the retry timeout. |
pass_host | string Default: "pass" Enum: "pass" "node" "rewrite" Define how to decide the host header before forwarding requests to an upstream.
|
upstream_host | string^\*?[0-9a-zA-Z-._]+$ Only valid if the |
required | Array of objects The upstream endpoints. |
service_name | string [ 1 .. 256 ] characters Only valid for service discovery. Used to indicate how services are discovered in the service registry. |
discovery_type | string Enum: "kubernetes" "nacos" Only valid for service discovery. |
object Only valid for service discovery. | |
object or object Deprecated Replace with | |
client_certificate | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
ca_certificates | Array of strings[ items [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ ] |
tls_verify | boolean |
object or object The health check data. | |
hash_on | string Default: "vars" Enum: "vars" "header" "cookie" "consumer" "vars_combinations" Only valid if the type is |
key | string non-empty The key is used for consistent hash, which can be combined using variables, such as $host$uri. Finds the corresponding node id according to hash_on and key values. When hash_on is set to vars, key is a required parameter and it supports Nginx variables. When hash_on is set as header, key is a required parameter, and header name can be customized. When hash_on is set to cookie, key is also a required parameter, and cookie name can be customized. When hash_on is set to consumer, key need not be set and the key used by the hash algorithm would be the authenticated consumer_name. |
Responses
Request samples
- Payload
{- "name": "default",
- "scheme": "tcp",
- "desc": "string",
- "type": "chash",
- "retries": 65535,
- "retry_timeout": 0,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "nodes": [
- {
- "host": "httpbin.org",
- "port": 8080,
- "weight": 100,
- "priority": 0
}
], - "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "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
}
}
}, - "hash_on": "vars",
- "key": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "chash",
- "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": "httpbin.org",
- "nodes": [
- {
- "host": "httpbin.org",
- "port": 8080,
- "weight": 100,
- "priority": 0
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "client_certificate": "string",
- "ca_certificates": [
- "string"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "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
}
}
}, - "hash_on": "vars",
- "key": "string",
- "id": "string",
- "gateway_group_id": "string",
- "apisix_service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Patch a upstream in 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. |
upstream_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the upstream. |
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": "default",
- "scheme": "http",
- "desc": "string",
- "type": "chash",
- "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": "httpbin.org",
- "nodes": [
- {
- "host": "httpbin.org",
- "port": 8080,
- "weight": 100,
- "priority": 0
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "client_certificate": "string",
- "ca_certificates": [
- "string"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "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
}
}
}, - "hash_on": "vars",
- "key": "string",
- "id": "string",
- "gateway_group_id": "string",
- "apisix_service_id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a upstream in 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. |
upstream_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the upstream. |
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. |
type | string Default: "http" Value: "http" |
Array of objects non-empty unique |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "type": "http",
- "routes": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "enable_websocket": true
}
]
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "type": "http",
- "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",
- "type": "http",
- "routes": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { }
}
]
}, - "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. |
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). | |
plugins | object The key-value pairs which represent the plugins attached on the object. |
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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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. |
with_publish_info | boolean Default: false Whether to include publish info in the response. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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. |
with_publish_info | boolean Default: false Whether to include publish info in the response. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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. |
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). | |
plugins | object The key-value pairs which represent the plugins attached on the object. |
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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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. |
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 |
plugins | object The key-value pairs which represent the plugins attached on the object. |
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",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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. |
with_publish_info | boolean Default: false Whether to include publish info in the response. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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. |
with_publish_info | boolean Default: false Whether to include publish info in the response. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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. |
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 |
plugins | object The key-value pairs which represent the plugins attached on the object. |
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",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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
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 Example: hosts=httpbin.org |
type | Array of strings Items Enum: "http" "stream" |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "type": "http",
- "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",
- "type": "http",
- "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"
}
Get the OpenAPI Specification 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": {
- "raw_openapi": "string",
- "api_count": 0,
- "api_desc": "string"
}, - "warning_msg": "string"
}
Update the OpenAPI Specification 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. |
Request Body schema: application/json
raw_openapi | string The raw OpenAPI specification of the service. |
Responses
Request samples
- Payload
{- "raw_openapi": "string"
}
Response samples
- 200
- default
{- "value": {
- "raw_openapi": "string",
- "api_count": 0,
- "api_desc": "string"
}, - "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "id": "string",
- "route_id": "string",
- "service_version_id": "string"
}, - "warning_msg": "string"
}
Get the runtime configuration of 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": {
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { }
}, - "warning_msg": "string"
}
Update the runtime configuration of 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
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. |
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": {
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { }
}, - "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",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "id": "string",
- "stream_route_id": "string",
- "service_version_id": "string"
}, - "warning_msg": "string"
}
Get the runtime configuration of 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": {
- "plugins": { }
}, - "warning_msg": "string"
}
Update the runtime configuration of 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
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. |
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": {
- "plugins": { }
}, - "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",
- "type": "http",
- "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": {
- "hosts": [
- "httpbin.org"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "chash",
- "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": "httpbin.org",
- "nodes": [
- {
- "host": "httpbin.org",
- "port": 8080,
- "weight": 100,
- "priority": 0
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "client_certificate": "string",
- "ca_certificates": [
- "string"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "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
}
}
}, - "hash_on": "vars",
- "key": "string"
}, - "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": {
- "hosts": [
- "httpbin.org"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "chash",
- "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": "httpbin.org",
- "nodes": [
- {
- "host": "httpbin.org",
- "port": 8080,
- "weight": 100,
- "priority": 0
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "client_certificate": "string",
- "ca_certificates": [
- "string"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "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
}
}
}, - "hash_on": "vars",
- "key": "string"
}, - "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",
- "type": "http",
- "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": [
- "httpbin.org"
], - "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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
non-emptyname required | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
type | string Default: "http" Enum: "http" "stream" |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "type": "http"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "type": "http",
- "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",
- "type": "http",
- "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",
- "type": "http",
- "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
non-emptyname required | string [ 1 .. 65536 ] characters The object name. |
object | |
desc | string <= 65536 characters The object description. |
type | string Default: "http" Enum: "http" "stream" |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "type": "http"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "type": "http",
- "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",
- "type": "http",
- "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"
}
Get the OpenAPI Specification of a service template.
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": {
- "raw_openapi": "string",
- "api_count": 0,
- "api_desc": "string"
}, - "warning_msg": "string"
}
Update the OpenAPI Specification of a service template.
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
raw_openapi | string The raw OpenAPI specification of the service. |
Responses
Request samples
- Payload
{- "raw_openapi": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "raw_openapi": "string",
- "api_count": 0,
- "api_desc": "string"
}, - "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. |
type | string Default: "http" Value: "http" |
Array of objects non-empty unique |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "type": "http",
- "routes": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "enable_websocket": true
}
]
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "type": "http",
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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",
- "type": "http",
- "routes": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { }
}
]
}, - "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. |
enable_websocket | boolean Define whether to enable Websocket for the route. |
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,
- "enable_websocket": true,
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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. |
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). | |
plugins | object The key-value pairs which represent the plugins attached on the object. |
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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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. |
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 [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "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",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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. |
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 |
plugins | object The key-value pairs which represent the plugins attached on the object. |
service_id | string^[a-zA-Z0-9-_.]+$|^$ The object ID. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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"
}
Get the OpenAPI Specification of 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. |
Responses
Response samples
- 200
- default
{- "value": {
- "raw_openapi": "string",
- "api_count": 0,
- "api_desc": "string"
}, - "warning_msg": "string"
}
Get 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. |
Responses
Response samples
- 200
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "type": "http",
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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 non-empty |
Responses
Request samples
- Payload
{- "create_new_version": true,
- "gateway_group_id": "string",
- "services": [
- {
- "service_id": "string",
- "version": "string",
- "service_version_id": "string"
}
]
}
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",
- "type": "http",
- "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",
- "type": "http",
- "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 [ 1 .. 256 ] 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": {
- "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 [ 1 .. 256 ] 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"
}
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 [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
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 [ 1 .. 256 ] 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": {
- "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 [ 1 .. 256 ] 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"
}
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 [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
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"
}
Get a kubernetes 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 [ 1 .. 256 ] 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": {
- "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 kubernetes 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 [ 1 .. 256 ] 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"
}
Update a kubernetes 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 [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
query Parameters
gateway_group_id required | string >= 1 It's optional when client authenticate with gateway group admin key. |
Request Body schema: application/json
desc | string <= 65536 characters The object description. |
object |
Responses
Request samples
- Payload
{- "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. |
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). | |
plugins | object The key-value pairs which represent the plugins attached on the object. |
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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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. |
with_publish_info | boolean Default: false Whether to include publish info in the response. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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. |
with_publish_info | boolean Default: false Whether to include publish info in the response. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "methods": [
- "GET"
], - "vars": [
- null
], - "paths": [
- "string"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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. |
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). | |
plugins | object The key-value pairs which represent the plugins attached on the object. |
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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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. |
enable_websocket | boolean Define whether to enable Websocket for the route. |
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,
- "enable_websocket": true,
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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. |
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 |
plugins | object The key-value pairs which represent the plugins attached on the object. |
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",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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. |
with_publish_info | boolean Default: false Whether to include publish info in the response. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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. |
with_publish_info | boolean Default: false Whether to include publish info in the response. |
Responses
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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. |
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 |
plugins | object The key-value pairs which represent the plugins attached on the object. |
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",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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. |
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 [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "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",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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. |
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 |
plugins | object The key-value pairs which represent the plugins attached on the object. |
service_id | string^[a-zA-Z0-9-_.]+$|^$ The object ID. |
Responses
Request samples
- Payload
{- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "service_id": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "id": "string",
- "stream_route_id": "string",
- "service_version_id": "string"
}, - "warning_msg": "string"
}
Create a SSL certificate. Deprecated
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 Value: "server" The SSL certificate purpose, now only support 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": [
- "httpbin.org"
], - "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": [
- "httpbin.org"
], - "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. Deprecated
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": [
- "httpbin.org"
], - "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. Deprecated
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": [
- "httpbin.org"
], - "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. Deprecated
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 Value: "server" The SSL certificate purpose, now only support 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": [
- "httpbin.org"
], - "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": [
- "httpbin.org"
], - "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. Deprecated
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
cert required | string [ 1 .. 65536 ] characters ^[^\$] The certificate in PEM format. |
Responses
Request samples
- Payload
{- "cert": "string"
}
Response samples
- 200
- 400
- default
{- "list": [
- {
- "common_name": "string",
- "subject_alt_names": [
- "string"
], - "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"
}
}
], - "total": 0
}
Validate a SSL certificate and key
Authorizations:
Request Body schema: application/json
cert required | string [ 1 .. 65536 ] characters ^[^\$] The certificate in PEM format. |
key required | string [ 1 .. 65536 ] characters ^[^\$] The private key in PEM format. |
Responses
Request samples
- Payload
{- "cert": "string",
- "key": "string"
}
Response samples
- 200
- 400
- default
{- "value": true,
- "warning_msg": "string"
}
Create a certificate.
IAM Action: gateway:CreateCertificate
, 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. |
required | string or string |
object | |
required | string or string |
Responses
Request samples
- Payload
{- "name": "string",
- "desc": "string",
- "cert": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "key": "string"
}
Response samples
- 200
{- "value": {
- "name": "string",
- "desc": "string",
- "cert": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "common_name": "string",
- "subject_alt_names": [
- "string"
], - "associated_snis": [
- "string"
], - "exptime": 0,
- "validity_start": 0,
- "validity_end": 0
}, - "warning_msg": "string"
}
List all certificates on a gateway group.
IAM Action: gateway:GetCertificate
, 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: "exptime" Enum: "name" "exptime" |
search | string The search keyword. |
object non-empty | |
sni_id | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
sni_name | string |
exptime | integer Filter out results that expired before this time. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "desc": "string",
- "cert": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "common_name": "string",
- "subject_alt_names": [
- "string"
], - "associated_snis": [
- "string"
], - "exptime": 0,
- "validity_start": 0,
- "validity_end": 0
}
], - "total": 0
}
Get a certificate on a gateway group.
IAM Action: gateway:GetCertificate
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
certificate_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the Certificate 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",
- "cert": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "common_name": "string",
- "subject_alt_names": [
- "string"
], - "associated_snis": [
- "string"
], - "exptime": 0,
- "validity_start": 0,
- "validity_end": 0
}, - "warning_msg": "string"
}
Update a certificate on a gateway group.
IAM Action: gateway:UpdateCertificate
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
certificate_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the Certificate 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. |
required | string or string |
object | |
required | string or string |
Responses
Request samples
- Payload
{- "name": "string",
- "desc": "string",
- "cert": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "key": "string"
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "desc": "string",
- "cert": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "common_name": "string",
- "subject_alt_names": [
- "string"
], - "associated_snis": [
- "string"
], - "exptime": 0,
- "validity_start": 0,
- "validity_end": 0
}, - "warning_msg": "string"
}
Patch a certificate on a gateway group.
IAM Action: gateway:UpdateCertificate
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
certificate_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the Certificate 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
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",
- "desc": "string",
- "cert": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "common_name": "string",
- "subject_alt_names": [
- "string"
], - "associated_snis": [
- "string"
], - "exptime": 0,
- "validity_start": 0,
- "validity_end": 0
}, - "warning_msg": "string"
}
Delete a certificate on a gateway group.
IAM Action: gateway:DeleteCertificate
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
certificate_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the Certificate 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"
}
Create a CA certificate.
IAM Action: gateway:CreateCertificate
, 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. |
cert required | string [ 1 .. 65536 ] characters ^[^\$] The certificate in PEM format. |
object |
Responses
Request samples
- Payload
{- "name": "string",
- "desc": "string",
- "cert": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}
}
Response samples
- 200
{- "value": {
- "name": "string",
- "desc": "string",
- "cert": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "associated_snis": [
- "string"
], - "exptime": 0,
- "validity_start": 0,
- "validity_end": 0
}, - "warning_msg": "string"
}
List all CA certificates on a gateway group.
IAM Action: gateway:GetCertificate
, 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: "exptime" Enum: "name" "exptime" |
search | string The search keyword. |
object non-empty | |
sni_id | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The object ID. |
sni_name | string |
exptime | integer Filter out results that expired before this time. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "desc": "string",
- "cert": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "associated_snis": [
- "string"
], - "exptime": 0,
- "validity_start": 0,
- "validity_end": 0
}
], - "total": 0
}
Get a CA certificate on a gateway group.
IAM Action: gateway:GetCertificate
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
ca_certificate_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the Certificate 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",
- "cert": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "associated_snis": [
- "string"
], - "exptime": 0,
- "validity_start": 0,
- "validity_end": 0
}, - "warning_msg": "string"
}
Update a CA certificate on a gateway group.
IAM Action: gateway:UpdateCertificate
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
ca_certificate_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the Certificate 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. |
cert required | string [ 1 .. 65536 ] characters ^[^\$] The certificate in PEM format. |
object |
Responses
Request samples
- Payload
{- "name": "string",
- "desc": "string",
- "cert": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "desc": "string",
- "cert": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "associated_snis": [
- "string"
], - "exptime": 0,
- "validity_start": 0,
- "validity_end": 0
}, - "warning_msg": "string"
}
Patch a CA certificate on a gateway group.
IAM Action: gateway:UpdateCertificate
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
ca_certificate_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the Certificate 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
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",
- "desc": "string",
- "cert": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "associated_snis": [
- "string"
], - "exptime": 0,
- "validity_start": 0,
- "validity_end": 0
}, - "warning_msg": "string"
}
Delete a CA certificate on a gateway group.
IAM Action: gateway:DeleteCertificate
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
ca_certificate_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the Certificate 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"
}
Create a sni.
IAM Action: gateway:CreateSNI
, 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. |
domain | string^\*?[0-9a-zA-Z-._]+$ The HTTP host. |
desc | string <= 65536 characters The object description. |
certificates | Array of strings non-empty [ items [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ ] |
object | |
object | |
ssl_protocols | Array of strings Default: ["TLSv1.2","TLSv1.3"] Items Enum: "TLSv1.1" "TLSv1.2" "TLSv1.3" The SSL protocols. |
Responses
Request samples
- Payload
{- "name": "string",
- "domain": "httpbin.org",
- "desc": "string",
- "certificates": [
- "string"
], - "mtls": {
- "enabled": false,
- "ca_certificates": [
- "string"
]
}, - "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "ssl_protocols": [
- "TLSv1.2",
- "TLSv1.3"
]
}
Response samples
- 200
{- "value": {
- "name": "string",
- "domain": "httpbin.org",
- "desc": "string",
- "certificates": [
- "string"
], - "mtls": {
- "enabled": false,
- "ca_certificates": [
- "string"
]
}, - "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "ssl_protocols": [
- "TLSv1.2",
- "TLSv1.3"
], - "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
List all snis on a gateway group.
IAM Action: gateway:GetSNI
, 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: "name" Value: "name" |
search | string The search keyword. |
object non-empty | |
domain | string^\*?[0-9a-zA-Z-._]+$ Example: domain=httpbin.org The domain of the SNI object. |
mtls_enabled | Array of booleans Whether to enable mtls. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "name": "string",
- "domain": "httpbin.org",
- "desc": "string",
- "certificates": [
- "string"
], - "mtls": {
- "enabled": false,
- "ca_certificates": [
- "string"
]
}, - "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "ssl_protocols": [
- "TLSv1.2",
- "TLSv1.3"
], - "id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 0
}
Get a sni on a gateway group.
IAM Action: gateway:GetSNI
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
sni_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the SNI 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",
- "domain": "httpbin.org",
- "desc": "string",
- "certificates": [
- "string"
], - "mtls": {
- "enabled": false,
- "ca_certificates": [
- "string"
]
}, - "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "ssl_protocols": [
- "TLSv1.2",
- "TLSv1.3"
], - "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Update a sni on a gateway group.
IAM Action: gateway:UpdateSNI
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
sni_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the SNI 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. |
domain | string^\*?[0-9a-zA-Z-._]+$ The HTTP host. |
desc | string <= 65536 characters The object description. |
certificates | Array of strings non-empty [ items [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ ] |
object | |
object | |
ssl_protocols | Array of strings Default: ["TLSv1.2","TLSv1.3"] Items Enum: "TLSv1.1" "TLSv1.2" "TLSv1.3" The SSL protocols. |
Responses
Request samples
- Payload
{- "name": "string",
- "domain": "httpbin.org",
- "desc": "string",
- "certificates": [
- "string"
], - "mtls": {
- "enabled": false,
- "ca_certificates": [
- "string"
]
}, - "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "ssl_protocols": [
- "TLSv1.2",
- "TLSv1.3"
]
}
Response samples
- 200
- 400
- default
{- "value": {
- "name": "string",
- "domain": "httpbin.org",
- "desc": "string",
- "certificates": [
- "string"
], - "mtls": {
- "enabled": false,
- "ca_certificates": [
- "string"
]
}, - "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "ssl_protocols": [
- "TLSv1.2",
- "TLSv1.3"
], - "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Patch a sni on a gateway group.
IAM Action: gateway:UpdateSNI
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
sni_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the SNI 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
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",
- "domain": "httpbin.org",
- "desc": "string",
- "certificates": [
- "string"
], - "mtls": {
- "enabled": false,
- "ca_certificates": [
- "string"
]
}, - "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "ssl_protocols": [
- "TLSv1.2",
- "TLSv1.3"
], - "id": "string",
- "created_at": 0,
- "updated_at": 0
}, - "warning_msg": "string"
}
Delete a sni on a gateway group.
IAM Action: gateway:DeleteSNI
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
sni_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the SNI 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"
}
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
type required | string Default: "external" Value: "external" |
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 [ 1 .. 4096 ] characters The server url, if its not defines on the openapi file, the user should specified it. |
status | string Default: "draft" Enum: "draft" "published" |
visibility | string Default: "public" Enum: "public" "logged_in" The visibility of the API product in the API hub. Public means visible to all users, logged_in means only visible to logged in developers. |
Responses
Request samples
- Payload
{- "type": "external",
- "name": "string",
- "raw_openapi": "string",
- "server_url": "string",
- "status": "draft",
- "visibility": "public"
}
Response samples
- 200
- 400
- default
{- "value": {
- "type": "gateway",
- "name": "string",
- "logo": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "auth": {
- "key-auth": {
- "hide_credentials": false,
- "query": "apikey",
- "header": "apikey"
}, - "basic-auth": {
- "hide_credentials": false
}
}, - "linked_gateway_services": [
- {
- "gateway_group_id": "string",
- "service_id": "string",
- "gateway_group_name": "string",
- "name": "string",
- "version": "string",
- "status": 0,
- "hosts": [
- "httpbin.org"
], - "updated_at": 0,
- "openapi_title": "string"
}
], - "status": "draft",
- "subscription_auto_approval": false,
- "can_view_unsubscribed": true,
- "visibility": "public",
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "notifications": [
- {
- "type": "email",
- "email_subject": "string",
- "content": "string",
- "id": "string",
- "event": "subscription_approval_created",
- "contact_point_ids": [
- "string"
]
}
]
}, - "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. |
service_id | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the service template. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "type": "gateway",
- "name": "string",
- "logo": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "auth": {
- "key-auth": {
- "hide_credentials": false,
- "query": "apikey",
- "header": "apikey"
}, - "basic-auth": {
- "hide_credentials": false
}
}, - "linked_gateway_services": [
- {
- "gateway_group_id": "string",
- "service_id": "string",
- "gateway_group_name": "string",
- "name": "string",
- "version": "string",
- "status": 0,
- "hosts": [
- "httpbin.org"
], - "updated_at": 0,
- "openapi_title": "string"
}
], - "status": "draft",
- "subscription_auto_approval": false,
- "can_view_unsubscribed": true,
- "visibility": "public",
- "id": "string",
- "created_at": 0,
- "updated_at": 0
}
], - "total": 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": {
- "type": "gateway",
- "name": "string",
- "logo": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "auth": {
- "key-auth": {
- "hide_credentials": false,
- "query": "apikey",
- "header": "apikey"
}, - "basic-auth": {
- "hide_credentials": false
}
}, - "linked_gateway_services": [
- {
- "gateway_group_id": "string",
- "service_id": "string",
- "gateway_group_name": "string",
- "name": "string",
- "version": "string",
- "status": 0,
- "hosts": [
- "httpbin.org"
], - "updated_at": 0,
- "openapi_title": "string"
}
], - "status": "draft",
- "subscription_auto_approval": false,
- "can_view_unsubscribed": true,
- "visibility": "public",
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "notifications": [
- {
- "type": "email",
- "email_subject": "string",
- "content": "string",
- "id": "string",
- "event": "subscription_approval_created",
- "contact_point_ids": [
- "string"
]
}
]
}, - "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
type required | string Default: "external" Value: "external" |
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 [ 1 .. 4096 ] characters The server url, if its not defines on the openapi file, the user should specified it. |
status | string Default: "draft" Enum: "draft" "published" |
visibility | string Default: "public" Enum: "public" "logged_in" The visibility of the API product in the API hub. Public means visible to all users, logged_in means only visible to logged in developers. |
Responses
Request samples
- Payload
{- "type": "external",
- "name": "string",
- "raw_openapi": "string",
- "server_url": "string",
- "status": "draft",
- "visibility": "public"
}
Response samples
- 200
- 400
- default
{- "value": {
- "type": "gateway",
- "name": "string",
- "logo": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "auth": {
- "key-auth": {
- "hide_credentials": false,
- "query": "apikey",
- "header": "apikey"
}, - "basic-auth": {
- "hide_credentials": false
}
}, - "linked_gateway_services": [
- {
- "gateway_group_id": "string",
- "service_id": "string",
- "gateway_group_name": "string",
- "name": "string",
- "version": "string",
- "status": 0,
- "hosts": [
- "httpbin.org"
], - "updated_at": 0,
- "openapi_title": "string"
}
], - "status": "draft",
- "subscription_auto_approval": false,
- "can_view_unsubscribed": true,
- "visibility": "public",
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "notifications": [
- {
- "type": "email",
- "email_subject": "string",
- "content": "string",
- "id": "string",
- "event": "subscription_approval_created",
- "contact_point_ids": [
- "string"
]
}
]
}, - "warning_msg": "string"
}
Patch 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
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": {
- "type": "gateway",
- "name": "string",
- "logo": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "auth": {
- "key-auth": {
- "hide_credentials": false,
- "query": "apikey",
- "header": "apikey"
}, - "basic-auth": {
- "hide_credentials": false
}
}, - "linked_gateway_services": [
- {
- "gateway_group_id": "string",
- "service_id": "string",
- "gateway_group_name": "string",
- "name": "string",
- "version": "string",
- "status": 0,
- "hosts": [
- "httpbin.org"
], - "updated_at": 0,
- "openapi_title": "string"
}
], - "status": "draft",
- "subscription_auto_approval": false,
- "can_view_unsubscribed": true,
- "visibility": "public",
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "notifications": [
- {
- "type": "email",
- "email_subject": "string",
- "content": "string",
- "id": "string",
- "event": "subscription_approval_created",
- "contact_point_ids": [
- "string"
]
}
]
}, - "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 subscriptions in Provider Portal for an API product.
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. |
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: "subscribed_at" Enum: "developer_name" "subscribed_at" |
search | string The search keyword. |
object non-empty |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "id": "string",
- "developer_id": "string",
- "developer_name": "string",
- "subscribed_at": 0
}
], - "total": 0
}
Cancel a subscription in Provider Portal for an API product.
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. |
subscription_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ the unique identifier of the subscription. |
Responses
Response samples
- 200
- 400
- default
{- "value": { },
- "warning_msg": "string"
}
List all notification histories for api_product.
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. |
query Parameters
notification_type | string Enum: "email" "webhook" The type of the notification. |
event | string Enum: "subscription_approval_created" "subscription_approval_accepted" "subscription_approval_rejected" "subscription_cancelled" The event type of the notification. |
contact_point_id | string The contact point ids of the notification. |
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: "notified_at" Value: "notified_at" |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "notified_at": 0,
- "notification": {
- "id": "string",
- "type": "email",
- "event": "subscription_approval_created",
- "contact_points": [
- {
- "id": "string",
- "name": "string"
}
], - "subject": "string",
- "content": "string",
- "message": "string"
}, - "developer_id": "string",
- "developer_name": "string",
- "application_id": "string",
- "application_name": "string",
- "approval_id": "string",
- "subscription_id": "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"
}
], - "resource_id": "string",
- "resource_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"
}
List Developers.
IAM Action: portal:GetDeveloper
, Resource: arn:api7:portal:developer/%s
Authorizations:
query Parameters
object non-empty | |
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: "last_active_at" Enum: "last_active_at" "created_at" |
search | string The search keyword. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "username": "string",
- "name": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "last_active_at": 0,
- "email": "string",
- "email_verified": true,
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "state": "Pending"
}
], - "total": 0
}
Invite a developer to join the portal.
IAM Action: portal:InviteDeveloper
, Resource: arn:api7:portal:developer/*
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. |
name | string [ 1 .. 128 ] characters The name of the user. |
Responses
Request samples
- Payload
{- "username": "string",
- "password": "string",
- "name": "string"
}
Response samples
- 200
- default
{- "value": {
- "username": "string",
- "name": "string",
- "desc": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "last_active_at": 0,
- "email": "string",
- "email_verified": true,
- "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "state": "Pending"
}, - "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. |
compatibility | string Enum: "Compatible" "Incompatible" "PartiallyCompatible" The compatibility of the gateway instance version. |
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,
- "compatibility": "Compatible"
}
], - "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 SNI Usage in a gateway group
IAM Action: gateway:GetSNI
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
sni_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the SNI 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. |
search | string The search keyword. |
Responses
Response samples
- 200
- 400
- default
{- "list": [
- {
- "service_id": "string",
- "service_name": "string",
- "hosts": [
- "httpbin.org"
]
}
], - "total": 0
}
List Certificate Usage in a gateway group
IAM Action: gateway:GetCertificate
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
certificate_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the Certificate object. |
query Parameters
resource_type | string Default: "sni" Enum: "sni" "upstream" Type of resource referencing the certificate. |
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": [
- {
- "resource_type": "sni",
- "sni_id": "string",
- "sni_name": "string",
- "service_id": "string",
- "service_name": "string",
- "hosts": [
- "httpbin.org"
]
}
], - "total": 0
}
List CA Certificate Usage in a gateway group
IAM Action: gateway:GetCACertificate
, Resource: arn:api7:gateway:gatewaygroup/%s
Authorizations:
path Parameters
gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 |
ca_certificate_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The unique identifier of the Certificate object. |
query Parameters
resource_type | string Default: "sni" Enum: "sni" "upstream" Type of resource referencing the certificate. |
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": [
- {
- "resource_type": "sni",
- "sni_id": "string",
- "sni_name": "string",
- "service_id": "string",
- "service_name": "string",
- "hosts": [
- "httpbin.org"
]
}
], - "total": 0
}
Check if a certificate exists in a gateway group
IAM Action: gateway:GetCACertificate
, 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
string or string | |
One of string^\$(secret|env|ENV):// |
Responses
Request samples
- Payload
{- "cert": "string"
}
Response samples
- 200
- 400
- 404
- default
{- "value": {
- "name": "string",
- "desc": "string",
- "cert": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "common_name": "string",
- "subject_alt_names": [
- "string"
], - "associated_snis": [
- "string"
], - "exptime": 0,
- "validity_start": 0,
- "validity_end": 0
}, - "warning_msg": "string"
}
Check if a CA certificate exists in a gateway group
IAM Action: gateway:GetCACertificate
, 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
cert | string [ 1 .. 65536 ] characters ^[^\$] The certificate in PEM format. |
Responses
Request samples
- Payload
{- "cert": "string"
}
Response samples
- 200
- 400
- 404
- default
{- "value": {
- "name": "string",
- "desc": "string",
- "cert": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "id": "string",
- "created_at": 0,
- "updated_at": 0,
- "associated_snis": [
- "string"
], - "exptime": 0,
- "validity_start": 0,
- "validity_end": 0
}, - "warning_msg": "string"
}
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" "kubernetes" |
secret_provider_id required | string [ 1 .. 256 ] characters |
query Parameters
resource_type | string Enum: "consumer" "service" "route" "ssl" "global_rule" "consumer_credential" "certificate" |
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 |
validity_period | integer [ 1 .. 10950 ] Default: 3650 The validity period of the certificate in days. |
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 |
validity_period | integer [ 1 .. 10950 ] Default: 3650 The validity period of the certificate in days. |
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 |
validity_period | integer [ 1 .. 10950 ] Default: 3650 The validity period of the certificate in days. |
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"
}
Generate script to install the gateway api resources for ingress 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 |
query Parameters
name required | string |
namespace required | string |
endpoints required | Array of strings non-empty |
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 |
Request Body schema: application/json
validity_period | integer [ 1 .. 10950 ] Default: 3650 The validity period of the certificate in days. |
Responses
Request samples
- Payload
{- "validity_period": 3650
}
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
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 Example: hosts=httpbin.org |
type | Array of strings Items Enum: "http" "stream" |
Responses
Response samples
- 200
- default
{- "list": [
- {
- "name": "string",
- "labels": {
- "keyA": "valueA",
- "keyB": "valueB"
}, - "desc": "string",
- "type": "http",
- "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",
- "type": "http",
- "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"
}
Get the OpenAPI Specification 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": {
- "raw_openapi": "string",
- "api_count": 0,
- "api_desc": "string"
}, - "warning_msg": "string"
}
Update the OpenAPI Specification 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. |
Request Body schema: application/json
raw_openapi | string The raw OpenAPI specification of the service. |
Responses
Request samples
- Payload
{- "raw_openapi": "string"
}
Response samples
- 200
- default
{- "value": {
- "raw_openapi": "string",
- "api_count": 0,
- "api_desc": "string"
}, - "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "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,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { },
- "id": "string",
- "route_id": "string",
- "service_version_id": "string"
}, - "warning_msg": "string"
}
Get the runtime configuration of 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": {
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { }
}, - "warning_msg": "string"
}
Update the runtime configuration of 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
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. |
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": {
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": { }
}, - "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",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "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",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": { },
- "id": "string",
- "stream_route_id": "string",
- "service_version_id": "string"
}, - "warning_msg": "string"
}
Get the runtime configuration of 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": {
- "plugins": { }
}, - "warning_msg": "string"
}
Update the runtime configuration of 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
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. |
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": {
- "plugins": { }
}, - "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",
- "type": "http",
- "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": {
- "hosts": [
- "httpbin.org"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "chash",
- "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": "httpbin.org",
- "nodes": [
- {
- "host": "httpbin.org",
- "port": 8080,
- "weight": 100,
- "priority": 0
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "client_certificate": "string",
- "ca_certificates": [
- "string"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "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
}
}
}, - "hash_on": "vars",
- "key": "string"
}, - "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": {
- "hosts": [
- "httpbin.org"
], - "path_prefix": "string",
- "strip_path_prefix": true,
- "upstream": {
- "name": "default",
- "scheme": "http",
- "desc": "string",
- "type": "chash",
- "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": "httpbin.org",
- "nodes": [
- {
- "host": "httpbin.org",
- "port": 8080,
- "weight": 100,
- "priority": 0
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "kubernetes",
- "discovery_args": {
- "metadata": {
- "idc": "shanghai"
}
}, - "tls": {
- "client_cert": "string",
- "client_key": "string"
}, - "client_certificate": "string",
- "ca_certificates": [
- "string"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "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
}
}
}, - "hash_on": "vars",
- "key": "string"
}, - "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": "httpbin.org",
- "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": "httpbin.org",
- "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": "httpbin.org",
- "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",
- "type": "http",
- "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 |
gateway_group_id | string >= 1 |
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. |
compatibility | string Enum: "Compatible" "Incompatible" "PartiallyCompatible" The compatibility of the gateway instance version. |
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,
- "compatibility": "Compatible"
}
], - "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. |
compatibility | string Enum: "Compatible" "Incompatible" "PartiallyCompatible" The compatibility of the gateway instance version. |
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,
- "compatibility": "Compatible"
}
], - "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. |
run_id | string The run ID of the gateway instance. |
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",
- "run_id": "string",
- "hostname": "string",
- "ip": "string",
- "version": "string",
- "ports": [
- 0
], - "cores": 0,
- "control_plane_revision": "string",
- "conf_server_revision": "string"
}
Response samples
- 403
- default
{- "error_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 |
validity_period | integer [ 1 .. 10950 ] Default: 3650 The validity period of the certificate in days. |
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 |
validity_period | integer [ 1 .. 10950 ] Default: 3650 The validity period of the certificate in days. |
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 |
validity_period | integer [ 1 .. 10950 ] Default: 3650 The validity period of the certificate in days. |
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 |
Request Body schema: application/json
validity_period | integer [ 1 .. 10950 ] Default: 3650 The validity period of the certificate in days. |
Responses
Request samples
- Payload
{- "validity_period": 3650
}
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",
- "username": "string",
- "name": "string",
- "email": "string",
- "email_verified": true,
- "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",
- "username": "string",
- "name": "string",
- "email": "string",
- "email_verified": true,
- "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",
- "username": "string",
- "name": "string",
- "email": "string",
- "email_verified": true,
- "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
name required | string [ 1 .. 200 ] characters |
Responses
Request samples
- Payload
{- "name": "string"
}
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string"
}
Update the user email.
Authorizations:
Request Body schema: application/json
email required | string <email> [ 1 .. 128 ] characters |
Responses
Request samples
- Payload
{- "email": "user@example.com"
}
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. |
name | string [ 1 .. 128 ] characters The name of the user. |
Responses
Request samples
- Payload
{- "username": "string",
- "password": "string",
- "boundaries": [
- "string"
], - "name": "string"
}
Response samples
- 200
- default
{- "value": {
- "id": "string",
- "username": "string",
- "name": "string",
- "email": "string",
- "email_verified": true,
- "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 [ 1 .. 256 ] characters 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 [ 1 .. 256 ] characters 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 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"
}
Get the developer based on the plugin name and key value.
Authorizations:
query Parameters
plugin_name | string Enum: "key-auth" "basic-auth" The plugin name. |
key_value | string The key value. |
service_id | string The matched service id. |
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 License 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 License 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",
- "operator": {
- "id": "string",
- "username": "string",
- "name": "string",
- "email": "string",
- "email_verified": true
}, - "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": "httpbin.org",
- "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": "httpbin.org",
- "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": "httpbin.org",
- "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",
- "type": "http",
- "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" "certificate" "api_product" "sni" |
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^\s*("(?:[^"\\]|\\.)*"|([^<>@]+))?\s*$ Sender's name. |
from_address required | string <email> 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": "user@example.com"
}
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": "user@example.com"
}, - "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": "user@example.com"
}, - "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"
}, - "builtin_config": {
- "login_with_email": false
}, - "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 [ 1 .. 256 ] characters |
logo | string The base64 logo image. |
disable | boolean Default: false Whether to disable the login option. |
provider_type | string Enum: "ldap" "oidc" "saml" "built_in" "cas" The login option type. |
object | |
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": null,
- "sp_root_url": null,
- "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,
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}
}, - "builtin_config": {
- "login_with_email": false
}, - "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"
}, - "builtin_config": {
- "login_with_email": false
}, - "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"
}, - "builtin_config": {
- "login_with_email": false
}, - "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"
}, - "builtin_config": {
- "login_with_email": false
}, - "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 [ 1 .. 256 ] characters |
logo | string The base64 logo image. |
disable | boolean Default: false Whether to disable the login option. |
provider_type | string Enum: "ldap" "oidc" "saml" "built_in" "cas" The login option type. |
object | |
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": null,
- "sp_root_url": null,
- "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,
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}
}, - "builtin_config": {
- "login_with_email": false
}, - "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"
}, - "builtin_config": {
- "login_with_email": false
}, - "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",
- "builtin_config": {
- "login_with_email": false
}
}
], - "total": 0
}
Update developer portal public access.
IAM Action: portal:UpdateDeveloperPortalPublicAccess
, Resource: arn:api7:portal:loginsetting/*
Authorizations:
Request Body schema: application/json
portal_public_access | boolean Whether to allow public access to the developer portal. |
Responses
Request samples
- Payload
{- "portal_public_access": true
}
Response samples
- 200
- 400
- default
{- "value": {
- "portal_public_access": true
}, - "warning_msg": "string"
}
List all developer login options.
IAM Action: portal:GetDeveloperLoginOption
, Resource: arn:api7:portal:loginsetting/*
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
{- "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"
}, - "builtin_config": {
- "enable_self_registration": true,
- "registration_auto_approval": true,
- "login_with_email": false
}
}, - "warning_msg": "string"
}
Create a developer login option.
IAM Action: portal:CreateDeveloperLoginOption
, Resource: arn:api7:portal:loginsetting/*
Authorizations:
Request Body schema: application/json
name required | string [ 1 .. 256 ] characters |
logo | string The base64 logo image. |
disable | boolean Default: false Whether to disable the login option. |
provider_type | string Enum: "ldap" "oidc" "saml" "built_in" The login option type. |
object | |
object | |
object | |
object Built-in specific configuration |
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": null,
- "sp_root_url": null,
- "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"
}, - "builtin_config": {
- "enable_self_registration": true,
- "registration_auto_approval": true,
- "login_with_email": false
}
}
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"
}, - "builtin_config": {
- "login_with_email": false
}, - "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
}
Get a developer login option.
IAM Action: portal:GetDeveloperLoginOption
, Resource: arn:api7:portal:loginsetting/*
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"
}, - "builtin_config": {
- "enable_self_registration": true,
- "registration_auto_approval": true,
- "login_with_email": false
}
}, - "warning_msg": "string"
}
Update a developer login option.
IAM Action: portal:UpdateDeveloperLoginOption
, Resource: arn:api7:portal:loginsetting/*
Authorizations:
path Parameters
login_option_id required | string |
Request Body schema: application/json
name required | string [ 1 .. 256 ] characters |
logo | string The base64 logo image. |
disable | boolean Default: false Whether to disable the login option. |
provider_type | string Enum: "ldap" "oidc" "saml" "built_in" The login option type. |
object | |
object | |
object | |
object Built-in specific configuration |
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": null,
- "sp_root_url": null,
- "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"
}, - "builtin_config": {
- "enable_self_registration": true,
- "registration_auto_approval": true,
- "login_with_email": false
}
}
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"
}, - "builtin_config": {
- "enable_self_registration": true,
- "registration_auto_approval": true,
- "login_with_email": false
}
}, - "warning_msg": "string"
}
Patch a developer login option.
IAM Action: portal:UpdateDeveloperLoginOption
, Resource: arn:api7:portal:loginsetting/*
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"
}, - "builtin_config": {
- "enable_self_registration": true,
- "registration_auto_approval": true,
- "login_with_email": false
}
}, - "warning_msg": "string"
}
Delete a developer login option.
IAM Action: portal:DeleteDeveloperLoginOption
, Resource: arn:api7:portal:loginsetting/*
Authorizations:
path Parameters
login_option_id required | string |
Responses
Response samples
- 200
- default
{- "value": { },
- "warning_msg": "string"
}
Update Developer SCIM settings.
IAM Action: portal:UpdateDeveloperSCIMProvisioning
, Resource: arn:api7:portal:loginsetting/*
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"
}
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"
}, - "builtin_config": {
- "login_with_email": false
}, - "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 [ 1 .. 256 ] characters |
logo | string The base64 logo image. |
disable | boolean Default: false Whether to disable the login option. |
provider_type | string Enum: "ldap" "oidc" "saml" "built_in" "cas" The login option type. |
object | |
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": null,
- "sp_root_url": null,
- "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,
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}
}, - "builtin_config": {
- "login_with_email": false
}, - "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"
}, - "builtin_config": {
- "login_with_email": false
}, - "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"
}, - "builtin_config": {
- "login_with_email": false
}, - "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"
}, - "builtin_config": {
- "login_with_email": false
}, - "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 [ 1 .. 256 ] characters |
logo | string The base64 logo image. |
disable | boolean Default: false Whether to disable the login option. |
provider_type | string Enum: "ldap" "oidc" "saml" "built_in" "cas" The login option type. |
object | |
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": null,
- "sp_root_url": null,
- "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,
- "attributes": {
- "username": "string",
- "property1": "string",
- "property2": "string"
}
}, - "builtin_config": {
- "login_with_email": false
}, - "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"
}, - "builtin_config": {
- "login_with_email": false
}, - "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",
- "builtin_config": {
- "login_with_email": false
}
}
], - "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
gateway_group_id | string >= 1 |
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,
- "gateway_groups": [
- "string"
], - "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. |
gateway_groups required | Array of strings The IDs of Gateway Groups that the custom plugin will be deployed. |
Responses
Request samples
- Payload
{- "source_code": "string",
- "file": "string",
- "catalog": "string",
- "description": "string",
- "author": "string",
- "logo": "string",
- "gateway_groups": [
- "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,
- "gateway_groups": [
- "string"
], - "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,
- "gateway_groups": [
- "string"
], - "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. |
gateway_groups required | Array of strings The IDs of Gateway Groups that the custom plugin will be deployed. |
Responses
Request samples
- Payload
{- "source_code": "string",
- "file": "string",
- "catalog": "string",
- "description": "string",
- "author": "string",
- "logo": "string",
- "gateway_groups": [
- "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,
- "gateway_groups": [
- "string"
], - "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 [ 1 .. 256 ] characters |
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. |