Download OpenAPI specification:Download
API7 Enterprise Admin APIs are RESTful APIs that allow you to create, configure, and manage all API7 Enterprise resources programmatically. These APIs power the API7 Dashboard and can be used directly for automation, CI/CD pipelines, and integration with external systems.
All API paths are relative to your API7 Dashboard address, e.g. https://your-api7-dashboard:7443.
Every request must include one of the following credentials:
X-API-KEY HTTP header.API7 Enterprise exposes two families of endpoints:
| Path prefix | Purpose |
|---|---|
/api/... |
Dashboard management APIs for services, gateway groups, users, roles, and all other resources. |
/apisix/admin/... |
APISIX-compatible Admin APIs that operate on published services within a specific gateway group. Use these if you are migrating from or integrating with Apache APISIX. |
All JSON responses follow an envelope structure:
{ "value": { ... } }{ "list": [ ... ], "total": 42 }{ "error_msg": "description of the error" }Pagination is controlled via page (1-indexed) and page_size query parameters.
Manage reusable service definitions (upstream, routes, plugins) that serve as blueprints before deployment.
IAM Action: gateway:CreateServiceTemplate, Resource: arn:api7:gateway:servicetemplate/*
| name required | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
| type | string Default: "http" Enum: "http" "stream" Type of service. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http"
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "last_published": 1742288230,
- "published_gateway_groups_count": 0,
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}IAM Action: gateway:GetServiceTemplate, Resource: arn:api7:gateway:servicetemplate/%s
| page | integer <int32> >= 1 Page number of the listed resources. Used together with |
| page_size | integer <int32> >= 1 Number of resources listed per page. Used together with |
| direction | string Default: "desc" Enum: "asc" "desc" Order to list the resources by. The sorting index follows the configuration of |
| order_by | string Default: "updated_at" Enum: "created_at" "updated_at" "last_published" "name" Index to order the services by. |
| search | string Example: search=version%3Dv2 Condition to search resources by. |
| labels | string non-empty Example: labels=labels%5Bversion%5D=v2 Label(s) to filter resources by. The format is |
| gateway_group_id | string >= 1 Gateway group ID. |
| last_publish_start_at | integer >= 0 |
| last_publish_end_at | integer >= 0 |
| type | string Enum: "http" "stream" Example: type=http Type of service. |
{- "list": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "last_published": 1742288230,
- "published_gateway_groups_count": 0,
- "created_at": 1742288232,
- "updated_at": 1742288235
}
], - "total": 1
}IAM Action: gateway:GetServiceTemplate, Resource: arn:api7:gateway:servicetemplate/%s
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "last_published": 1742288230,
- "published_gateway_groups_count": 0,
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}IAM Action: gateway:UpdateServiceTemplate, Resource: arn:api7:gateway:servicetemplate/%s
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| name required | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
| type | string Default: "http" Enum: "http" "stream" Type of service. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http"
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "last_published": 1742288230,
- "published_gateway_groups_count": 0,
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}IAM Action: gateway:UpdateServiceTemplate, Resource: arn:api7:gateway:servicetemplate/%s
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| dry-run | string Value: "all" When specified, run the operation in dry-run mode. |
| op required | string Enum: "add" "replace" The operation to be performed. |
| path required | string Path to the field to be replaced or added. Path should follow the JSON Pointer format. |
| value required | any Value to be added or replaced. |
[- {
- "op": "add",
- "path": "/name",
- "value": "new-name"
}
]{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "last_published": 1742288230,
- "published_gateway_groups_count": 0,
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}IAM Action: gateway:DeleteServiceTemplate, Resource: arn:api7:gateway:servicetemplate/%s
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
""IAM Action: gateway:GetServiceTemplate, Resource: arn:api7:gateway:servicetemplate/%s
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
{- "value": {
- "raw_openapi": "Raw OpenAPI spec",
- "api_count": 10,
- "api_desc": "OAS description."
}
}IAM Action: gateway:UpdateServiceTemplate, Resource: arn:api7:gateway:servicetemplate/%s
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| raw_openapi | string The raw OpenAPI spec of the service. |
{- "raw_openapi": "Raw OpenAPI spec"
}{- "value": {
- "raw_openapi": "Raw OpenAPI spec",
- "api_count": 10,
- "api_desc": "OAS description."
}
}Export service template definitions as an OpenAPI 3.0 specification document. Use this endpoint to share, version, or migrate API definitions between environments.
Required IAM Permission: Action gateway:GetServiceTemplate, Resource arn:api7:gateway:servicetemplate/%s
| scope | string Enum: "partial" "all" Scope of the service. |
| service_ids | Array of strings[ items [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ ] The service ID list. |
required | object API metadata. |
Array of objects An array of one or more base servers in the exported API definition. |
{- "service_ids": [
- "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
], - "info": {
- "title": "Swagger Petstore",
- "version": "3.0.1",
- "description": "API description."
},
}{- "value": {
- "openapi": "3.0.1",
- "info": {
- "title": "Swagger Petstore",
- "version": "3.0.1",
- "description": "API description."
}, - "paths": {
- "/anything": {
- "delete": {
- "responses": {
- "default": {
- "description": ""
}
}, - "tags": [
- "httpbin"
]
}, - "get": {
- "responses": {
- "default": {
- "description": ""
}
}, - "tags": [
- "httpbin"
]
}, - "patch": {
- "responses": {
- "default": {
- "description": ""
}
}, - "tags": [
- "httpbin"
]
}, - "post": {
- "responses": {
- "default": {
- "description": ""
}
}, - "tags": [
- "httpbin"
]
}, - "put": {
- "responses": {
- "default": {
- "description": ""
}
}, - "tags": [
- "httpbin"
]
}, - "trace": {
- "responses": {
- "default": {
- "description": ""
}
}, - "tags": [
- "httpbin"
]
}
}
}
}
}Import an OpenAPI specification and create service template resources from it. This operation translates API paths and components into template-level gateway configuration.
Required IAM Permission: Action gateway:CreateServiceTemplate, Resource arn:api7:gateway:servicetemplate/*
| name | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
| type | string Default: "http" Value: "http" Type of service. |
Array of objects non-empty unique Route configurations. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "routes": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true
}
]
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "last_published": 1742288230,
- "published_gateway_groups_count": 0,
- "created_at": 1742288232,
- "updated_at": 1742288235,
- "routes": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
]
}
}Convert a given OpenAPI Specification into service and route resource structures without creating those resources. Use this endpoint for preview, validation, and transformation workflows before import.
| raw_openapi required | string The raw OpenAPI content. |
{- "raw_openapi": "Raw OpenAPI spec"
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "routes": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}
}
]
}
}IAM Action: gateway:UpdateServiceTemplate, Resource: arn:api7:gateway:servicetemplate/%s
| name required | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
| methods | Array of strings [ 1 .. 9 ] items unique Items Enum: "GET" "POST" "PUT" "DELETE" "PATCH" "HEAD" "OPTIONS" "CONNECT" "TRACE" The allowed HTTP methods to access the route. If empty, all HTTP methods are allowed. |
| vars | Array of any Conditions in the format of APISIX expressions to match requests to routes. Case sensitive when matching a cookie name. |
| paths required | Array of strings [ 1 .. 64 ] items [ items [ 1 .. 4096 ] characters ] The URL path(s) (after the service's |
| priority | integer Default: 0 Priority of the route. A higher value corresponds to a higher priority. If different Routes matches to the same URI, then the Route with the highest priority will be matched. |
| enable_websocket | boolean or null If true, enable Websocket proxying for the route. |
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The service ID. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01"
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}IAM Action: gateway:GetServiceTemplate, Resource: arn:api7:gateway:servicetemplate/%s
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: service_id=bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| page | integer <int32> >= 1 Page number of the listed resources. Used together with |
| page_size | integer <int32> >= 1 Number of resources listed per page. Used together with |
| direction | string Default: "desc" Enum: "asc" "desc" Order to list the resources by. The sorting index follows the configuration of |
| order_by | string Default: "updated_at" Enum: "created_at" "updated_at" Index to order resources by. |
| search | string Example: search=version%3Dv2 Condition to search resources by. |
| labels | string non-empty Example: labels=labels%5Bversion%5D=v2 Label(s) to filter resources by. The format is |
{- "list": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
], - "total": 1
}IAM Action: gateway:GetServiceTemplate, Resource: arn:api7:gateway:servicetemplate/%s
| route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the route in the service template. |
{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}IAM Action: gateway:UpdateServiceTemplate, Resource: arn:api7:gateway:servicetemplate/%s
| route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the route in the service template. |
| name required | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
| methods | Array of strings [ 1 .. 9 ] items unique Items Enum: "GET" "POST" "PUT" "DELETE" "PATCH" "HEAD" "OPTIONS" "CONNECT" "TRACE" The allowed HTTP methods to access the route. If empty, all HTTP methods are allowed. |
| vars | Array of any Conditions in the format of APISIX expressions to match requests to routes. Case sensitive when matching a cookie name. |
| paths required | Array of strings [ 1 .. 64 ] items [ items [ 1 .. 4096 ] characters ] The URL path(s) (after the service's |
| priority | integer Default: 0 Priority of the route. A higher value corresponds to a higher priority. If different Routes matches to the same URI, then the Route with the highest priority will be matched. |
| enable_websocket | boolean or null If true, enable Websocket proxying for the route. |
object Timeout settings for connecting to, sending, and receiving messages from the upstream, in seconds. | |
| plugins | object Key-value pairs of plugins and their configurations on the object. |
| service_id | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The service ID. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01"
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}IAM Action: gateway:UpdateServiceTemplate, Resource: arn:api7:gateway:servicetemplate/%s
| route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the route in the service template. |
| op required | string Enum: "add" "replace" The operation to be performed. |
| path required | string Path to the field to be replaced or added. Path should follow the JSON Pointer format. |
| value required | any Value to be added or replaced. |
[- {
- "op": "add",
- "path": "/name",
- "value": "new-name"
}
]{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}IAM Action: gateway:UpdateServiceTemplate, Resource: arn:api7:gateway:servicetemplate/%s
| route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the route in the service template. |
""Create a Layer 4 stream route in the service template to route TCP or UDP traffic for non-HTTP protocols. Define matching rules and upstream behavior to control how connection-level traffic is proxied.
Required IAM Permission: Action gateway:UpdateServiceTemplate, Resource arn:api7:gateway:servicetemplate/%s
| name required | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string) Client address filter. If the client request does not originate from | |
(IPAddress (IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string))) or Domain (string) Stream server address. | |
| server_port | integer <= 65535 Stream server port. |
| service_id | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The service ID. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01"
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "gateway_group_name": "us-west-rsc",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}List stream routes defined in the service template for TCP/UDP traffic proxying. Use pagination and filters to inspect existing Layer 4 routing policies.
Required IAM Permission: Action gateway:GetServiceTemplate, Resource arn:api7:gateway:servicetemplate/%s
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: service_id=bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| page | integer <int32> >= 1 Page number of the listed resources. Used together with |
| page_size | integer <int32> >= 1 Number of resources listed per page. Used together with |
| direction | string Default: "desc" Enum: "asc" "desc" Order to list the resources by. The sorting index follows the configuration of |
| order_by | string Default: "updated_at" Enum: "created_at" "updated_at" Index to order resources by. |
| search | string Example: search=version%3Dv2 Condition to search resources by. |
| labels | string non-empty Example: labels=labels%5Bversion%5D=v2 Label(s) to filter resources by. The format is |
{- "list": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "gateway_group_name": "us-west-rsc",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
], - "total": 1
}Retrieve a specific stream route from the service template, including its matching and forwarding configuration for non-HTTP traffic.
Required IAM Permission: Action gateway:GetServiceTemplate, Resource arn:api7:gateway:servicetemplate/%s
| stream_route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the stream route in the service template. |
{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "gateway_group_name": "us-west-rsc",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Replace a stream route configuration in the service template. Updates may immediately affect active TCP/UDP connection routing behavior.
Required IAM Permission: Action gateway:UpdateServiceTemplate, Resource arn:api7:gateway:servicetemplate/%s
| stream_route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the stream route in the service template. |
| name required | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string) Client address filter. If the client request does not originate from | |
(IPAddress (IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string))) or Domain (string) Stream server address. | |
| server_port | integer <= 65535 Stream server port. |
| plugins | object Key-value pairs of plugins and their configurations on the object. |
| service_id | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The service ID. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01"
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "gateway_group_name": "us-west-rsc",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Delete a stream route from the service template to stop applying that Layer 4 routing rule. Confirm there is an alternative path for affected TCP/UDP traffic before deletion.
Required IAM Permission: Action gateway:UpdateServiceTemplate, Resource arn:api7:gateway:servicetemplate/%s
| stream_route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the stream route in the service template. |
""Retrieve the OpenAPI 3.0 document generated from a specific service version snapshot. Use this for documentation export, change review, or rollback planning.
Required IAM Permission: Action gateway:GetServiceTemplate, Resource arn:api7:gateway:servicetemplate/%s
| service_version_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service version. |
{- "value": {
- "raw_openapi": "Raw OpenAPI spec",
- "api_count": 10,
- "api_desc": "OAS description."
}
}Retrieve a specific historical service version snapshot by ID. Service version IDs can be discovered by listing versions for the service template.
Required IAM Permission: Action gateway:GetServiceTemplate, Resource arn:api7:gateway:servicetemplate/%s
| service_version_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service version. |
{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "apisix_service_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "version": "1.3.2",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}List HTTP route snapshots contained in the specified service version. This helps compare historical routing configuration or inspect rollback candidates.
Required IAM Permission: Action gateway:GetServiceTemplate, Resource arn:api7:gateway:servicetemplate/%s
| service_version_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service version. |
| page | integer <int32> >= 1 Page number of the listed resources. Used together with |
| page_size | integer <int32> >= 1 Number of resources listed per page. Used together with |
| direction | string Default: "desc" Enum: "asc" "desc" Order to list the resources by. The sorting index follows the configuration of |
| order_by | string Default: "updated_at" Enum: "created_at" "updated_at" Index to order resources by. |
{- "list": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "route_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_version_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
}
], - "total": 1
}Retrieve a specific HTTP route snapshot from a service version. Use this endpoint for detailed route-level audits of historical service states.
Required IAM Permission: Action gateway:GetServiceTemplate, Resource arn:api7:gateway:servicetemplate/%s
| service_version_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service version. |
| route_version_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the route version. |
{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "route_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_version_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
}
}List stream route snapshots included in the specified service version. This is useful when auditing TCP/UDP traffic configuration history.
Required IAM Permission: Action gateway:GetServiceTemplate, Resource arn:api7:gateway:servicetemplate/%s
| service_version_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service version. |
| page | integer <int32> >= 1 Page number of the listed resources. Used together with |
| page_size | integer <int32> >= 1 Number of resources listed per page. Used together with |
| direction | string Default: "desc" Enum: "asc" "desc" Order to list the resources by. The sorting index follows the configuration of |
| order_by | string Default: "updated_at" Enum: "created_at" "updated_at" Index to order resources by. |
{- "list": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "stream_route_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_version_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
}
], - "total": 1
}Retrieve a specific stream route snapshot from a service version for deep inspection or historical troubleshooting.
Required IAM Permission: Action gateway:GetServiceTemplate, Resource arn:api7:gateway:servicetemplate/%s
| service_version_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service version. |
| stream_route_version_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the stream route version. |
{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "stream_route_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_version_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
}
}IAM Action: gateway:PublishServices, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| create_new_version | boolean If true, create a new service version. |
| gateway_group_id | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The gateway group ID. |
Array of objects non-empty Services configurations. |
{- "create_new_version": true,
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "services": [
- {
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "version": "string",
- "service_version_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
}
]
}{- "value": { }
}IAM Action: gateway:GetPublishedService, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
{- "list": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "apisix_service_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "version": "1.3.2",
- "created_at": 1742288232,
- "updated_at": 1742288235,
- "gateway_group_name": "us-west-rsc",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "unhealthy_nodes_count": 0,
- "status": 0
}
], - "total": 1
}Retrieve a service version snapshot by template ID and semantic version name. Use this when version labels are known but internal version IDs are not.
Required IAM Permission: Action gateway:GetServiceTemplate, Resource arn:api7:gateway:servicetemplate/%s
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| version required | string Service version. |
{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "apisix_service_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "version": "1.3.2",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Manage services deployed to a specific gateway group. Published services actively handle live API traffic.
Create a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. The payload follows APISIX conventions while operating on the same underlying service resource managed by dashboard APIs.
Required IAM Permission: Action gateway:CreatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/*
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| name | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
| type required | string Default: "http" Enum: "http" "stream" Type of service. |
| hosts | Array of strings [ 1 .. 32 ] items unique [ items^\*?[0-9a-zA-Z-._]+$ ] The hosts of 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 If true, strip the path prefix when proxying the request to the upstream. |
| plugins | object Key-value pairs of plugins and their configurations on the object. |
Use Upstream Nodes (object) or Use Service Registry (object) The upstream contains necessary information for the gateway to proxy request to the backend service. | |
| status | integer Default: 1 Enum: 0 1 The object status. 1 means the object is active while 0 means it's inactive. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "hosts": [
- "httpbin.org"
], - "path_prefix": "/test",
- "strip_path_prefix": true,
- "plugins": {
- "key-auth": { }
}, - "upstream": {
- "name": "us-west-rsc",
- "scheme": "http",
- "desc": "Object description.",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "type": "chash",
- "hash_on": "vars",
- "key": "$host",
- "retries": 50,
- "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
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "nacos",
- "discovery_args": {
- "metadata": {
- "namespace_id": "public",
- "group_name": "DEFAULT_GROUP"
}
}, - "tls": {
- "client_cert": "$secret://aws/john/apisix-secrets/john-key-auth",
- "client_key": "$secret://aws/john/apisix-secrets/john-key-auth"
}, - "client_certificate": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "ca_certificates": [
- "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "user-agent: go/1.20"
], - "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
}
}
}
}, - "status": 0
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "last_published": 1742288230,
- "published_gateway_groups_count": 0,
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}List published services through an APISIX Admin API compatible endpoint under /apisix/admin/. Use this to browse APISIX-formatted service objects in a gateway group.
Required IAM Permission: Action gateway:GetPublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| page | integer <int32> >= 1 Page number of the listed resources. Used together with |
| page_size | integer <int32> >= 1 Number of resources listed per page. Used together with |
| direction | string Default: "desc" Enum: "asc" "desc" Order to list the resources by. The sorting index follows the configuration of |
| order_by | string Default: "updated_at" Enum: "created_at" "updated_at" "last_published" "name" Index to order the services by. |
| search | string Example: search=version%3Dv2 Condition to search resources by. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| unhealthy_nodes | Array of strings Items Enum: "unhealthy_nodes_exists" "no_unhealthy_nodes" Filter of services based on whether unhealthy nodes exist. |
| labels | string non-empty Example: labels=labels%5Bversion%5D=v2 Label(s) to filter resources by. The format is |
| hosts | Array of strings[ items^\*?[0-9a-zA-Z-._]+$ ] Example: hosts=httpbin.org |
| type | Array of strings Items Enum: "http" "stream" Type of service. |
| with_publish_info | boolean Default: false If true, include publish information in the response, such as |
{- "list": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "last_published": 1742288230,
- "published_gateway_groups_count": 0,
- "created_at": 1742288232,
- "updated_at": 1742288235
}
], - "total": 1
}Get one published service through an APISIX Admin API compatible endpoint under /apisix/admin/. The response keeps APISIX field conventions for migration and interoperability scenarios.
Required IAM Permission: Action gateway:GetPublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published service. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| with_publish_info | boolean Default: false If true, include publish information in the response, such as |
{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "last_published": 1742288230,
- "published_gateway_groups_count": 0,
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Fully update a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. This replaces the stored service configuration without executing a separate publish trigger.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published service. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| name | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
| type required | string Default: "http" Enum: "http" "stream" Type of service. |
| hosts | Array of strings [ 1 .. 32 ] items unique [ items^\*?[0-9a-zA-Z-._]+$ ] The hosts of 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 If true, strip the path prefix when proxying the request to the upstream. |
| plugins | object Key-value pairs of plugins and their configurations on the object. |
Use Upstream Nodes (object) or Use Service Registry (object) The upstream contains necessary information for the gateway to proxy request to the backend service. | |
| status | integer Default: 1 Enum: 0 1 The object status. 1 means the object is active while 0 means it's inactive. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "hosts": [
- "httpbin.org"
], - "path_prefix": "/test",
- "strip_path_prefix": true,
- "plugins": {
- "key-auth": { }
}, - "upstream": {
- "name": "us-west-rsc",
- "scheme": "http",
- "desc": "Object description.",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "type": "chash",
- "hash_on": "vars",
- "key": "$host",
- "retries": 50,
- "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
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "nacos",
- "discovery_args": {
- "metadata": {
- "namespace_id": "public",
- "group_name": "DEFAULT_GROUP"
}
}, - "tls": {
- "client_cert": "$secret://aws/john/apisix-secrets/john-key-auth",
- "client_key": "$secret://aws/john/apisix-secrets/john-key-auth"
}, - "client_certificate": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "ca_certificates": [
- "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "user-agent: go/1.20"
], - "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
}
}
}
}, - "status": 0
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "last_published": 1742288230,
- "published_gateway_groups_count": 0,
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Partially update a published service via JSON Patch (RFC 6902) through an APISIX Admin API compatible endpoint under /apisix/admin/. Use this for targeted field changes.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published service. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| op required | string Enum: "add" "replace" The operation to be performed. |
| path required | string Path to the field to be replaced or added. Path should follow the JSON Pointer format. |
| value required | any Value to be added or replaced. |
[- {
- "op": "add",
- "path": "/name",
- "value": "new-name"
}
]{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "last_published": 1742288230,
- "published_gateway_groups_count": 0,
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Delete a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. Removing this object affects all APISIX-compatible references to the service in that gateway group.
Required IAM Permission: Action gateway:DeletePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published service. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
""Create an upstream within a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. This adds backend target configuration in APISIX format.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published service. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| 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. |
object Key-value pairs of labels. | |
| type | string Default: "roundrobin" Enum: "chash" "roundrobin" "least_conn" "ewma" Load balancing algorithm to distribute traffic. |
| hash_on | string Default: "vars" Enum: "vars" "header" "cookie" "consumer" "vars_combinations" Type of value to hash on when |
| key | string non-empty The |
| retries | integer [ 0 .. 65535 ] The number of retries while passing the request to an upstream. |
object Upstream keepalive connection pool. | |
object Timeout settings for connecting to, sending, and receiving messages 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" The approach to decide the host header before forwarding requests to an upstream.
|
| upstream_host | string^\*?[0-9a-zA-Z-._]+$ Value to rewrite the host header to. Only used if |
required | Array of objects The upstream endpoints. |
| service_name | string [ 1 .. 256 ] characters Service name in the service registry. Only valid for service discovery. |
| discovery_type | string Enum: "kubernetes" "nacos" Type of service discovery. Only valid for service discovery. |
object Service discovery arguments. 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-_.]+$ ] CA certificates. |
| tls_verify | boolean If true, verify TLS. |
Active Check (object) or Passive Check (object) Health check configurations. |
{- "name": "us-west-rsc",
- "scheme": "http",
- "desc": "Object description.",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "type": "chash",
- "hash_on": "vars",
- "key": "$host",
- "retries": 50,
- "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
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "nacos",
- "discovery_args": {
- "metadata": {
- "namespace_id": "public",
- "group_name": "DEFAULT_GROUP"
}
}, - "tls": {
- "client_cert": "$secret://aws/john/apisix-secrets/john-key-auth",
- "client_key": "$secret://aws/john/apisix-secrets/john-key-auth"
}, - "client_certificate": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "ca_certificates": [
- "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "user-agent: go/1.20"
], - "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
}
}
}
}{- "value": {
- "name": "us-west-rsc",
- "scheme": "http",
- "desc": "Object description.",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "type": "chash",
- "hash_on": "vars",
- "key": "$host",
- "retries": 50,
- "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
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "nacos",
- "discovery_args": {
- "metadata": {
- "namespace_id": "public",
- "group_name": "DEFAULT_GROUP"
}
}, - "tls": {
- "client_cert": "$secret://aws/john/apisix-secrets/john-key-auth",
- "client_key": "$secret://aws/john/apisix-secrets/john-key-auth"
}, - "client_certificate": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "ca_certificates": [
- "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "user-agent: go/1.20"
], - "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
}
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "apisix_service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}List upstreams attached to a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. Use this to inspect backend pools and their current settings.
Required IAM Permission: Action gateway:GetPublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published service. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| order_by | string Default: "created_at" Value: "created_at" |
| direction | string Default: "asc" Value: "asc" Order to list the routes by. The sorting index follows the configuration of |
| with_publish_info | boolean Default: false If true, include publish information in the response, such as |
{- "list": [
- {
- "name": "us-west-rsc",
- "scheme": "http",
- "desc": "Object description.",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "type": "chash",
- "hash_on": "vars",
- "key": "$host",
- "retries": 50,
- "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
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "nacos",
- "discovery_args": {
- "metadata": {
- "namespace_id": "public",
- "group_name": "DEFAULT_GROUP"
}
}, - "tls": {
- "client_cert": "$secret://aws/john/apisix-secrets/john-key-auth",
- "client_key": "$secret://aws/john/apisix-secrets/john-key-auth"
}, - "client_certificate": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "ca_certificates": [
- "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "user-agent: go/1.20"
], - "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
}
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "apisix_service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
], - "total": 1
}Get one upstream in a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. The response uses APISIX-style upstream structure.
Required IAM Permission: Action gateway:GetPublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published service. |
| upstream_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the upstream. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| with_publish_info | boolean Default: false If true, include publish information in the response, such as |
{- "value": {
- "name": "us-west-rsc",
- "scheme": "http",
- "desc": "Object description.",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "type": "chash",
- "hash_on": "vars",
- "key": "$host",
- "retries": 50,
- "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
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "nacos",
- "discovery_args": {
- "metadata": {
- "namespace_id": "public",
- "group_name": "DEFAULT_GROUP"
}
}, - "tls": {
- "client_cert": "$secret://aws/john/apisix-secrets/john-key-auth",
- "client_key": "$secret://aws/john/apisix-secrets/john-key-auth"
}, - "client_certificate": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "ca_certificates": [
- "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "user-agent: go/1.20"
], - "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
}
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "apisix_service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Fully update an upstream in a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. Submit the complete upstream object to replace existing configuration.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published service. |
| upstream_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the upstream. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| 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. |
object Key-value pairs of labels. | |
| type | string Default: "roundrobin" Enum: "chash" "roundrobin" "least_conn" "ewma" Load balancing algorithm to distribute traffic. |
| hash_on | string Default: "vars" Enum: "vars" "header" "cookie" "consumer" "vars_combinations" Type of value to hash on when |
| key | string non-empty The |
| retries | integer [ 0 .. 65535 ] The number of retries while passing the request to an upstream. |
object Upstream keepalive connection pool. | |
object Timeout settings for connecting to, sending, and receiving messages 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" The approach to decide the host header before forwarding requests to an upstream.
|
| upstream_host | string^\*?[0-9a-zA-Z-._]+$ Value to rewrite the host header to. Only used if |
required | Array of objects The upstream endpoints. |
| service_name | string [ 1 .. 256 ] characters Service name in the service registry. Only valid for service discovery. |
| discovery_type | string Enum: "kubernetes" "nacos" Type of service discovery. Only valid for service discovery. |
object Service discovery arguments. 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-_.]+$ ] CA certificates. |
| tls_verify | boolean If true, verify TLS. |
Active Check (object) or Passive Check (object) Health check configurations. |
{- "name": "us-west-rsc",
- "scheme": "http",
- "desc": "Object description.",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "type": "chash",
- "hash_on": "vars",
- "key": "$host",
- "retries": 50,
- "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
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "nacos",
- "discovery_args": {
- "metadata": {
- "namespace_id": "public",
- "group_name": "DEFAULT_GROUP"
}
}, - "tls": {
- "client_cert": "$secret://aws/john/apisix-secrets/john-key-auth",
- "client_key": "$secret://aws/john/apisix-secrets/john-key-auth"
}, - "client_certificate": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "ca_certificates": [
- "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "user-agent: go/1.20"
], - "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
}
}
}
}{- "value": {
- "name": "us-west-rsc",
- "scheme": "http",
- "desc": "Object description.",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "type": "chash",
- "hash_on": "vars",
- "key": "$host",
- "retries": 50,
- "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
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "nacos",
- "discovery_args": {
- "metadata": {
- "namespace_id": "public",
- "group_name": "DEFAULT_GROUP"
}
}, - "tls": {
- "client_cert": "$secret://aws/john/apisix-secrets/john-key-auth",
- "client_key": "$secret://aws/john/apisix-secrets/john-key-auth"
}, - "client_certificate": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "ca_certificates": [
- "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "user-agent: go/1.20"
], - "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
}
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "apisix_service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Partially update an upstream in a published service via JSON Patch (RFC 6902) through an APISIX Admin API compatible endpoint under /apisix/admin/.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published service. |
| upstream_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the upstream. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| op required | string Enum: "add" "replace" The operation to be performed. |
| path required | string Path to the field to be replaced or added. Path should follow the JSON Pointer format. |
| value required | any Value to be added or replaced. |
[- {
- "op": "add",
- "path": "/name",
- "value": "new-name"
}
]{- "value": {
- "name": "us-west-rsc",
- "scheme": "http",
- "desc": "Object description.",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "type": "chash",
- "hash_on": "vars",
- "key": "$host",
- "retries": 50,
- "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
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "nacos",
- "discovery_args": {
- "metadata": {
- "namespace_id": "public",
- "group_name": "DEFAULT_GROUP"
}
}, - "tls": {
- "client_cert": "$secret://aws/john/apisix-secrets/john-key-auth",
- "client_key": "$secret://aws/john/apisix-secrets/john-key-auth"
}, - "client_certificate": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "ca_certificates": [
- "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "user-agent: go/1.20"
], - "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
}
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "apisix_service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Delete an upstream from a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. This updates service backend routing targets without deleting the service itself.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published service. |
| upstream_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the upstream. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
{- "value": { }
}Import an OpenAPI specification directly into published services for a gateway group. This operation creates runtime service resources scoped to the target gateway group.
Required IAM Permission: Action gateway:CreatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/*
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| name | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
| type | string Default: "http" Value: "http" Type of service. |
Array of objects non-empty unique Route configurations. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "routes": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true
}
]
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "apisix_service_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "version": "1.3.2",
- "created_at": 1742288232,
- "updated_at": 1742288235,
- "gateway_group_name": "us-west-rsc",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "unhealthy_nodes_count": 0,
- "status": 0
}
}Convert a given OpenAPI Specification into service and route resource structures without creating those resources. Use this endpoint for preview, validation, and transformation workflows before import.
| raw_openapi required | string The raw OpenAPI content. |
{- "raw_openapi": "Raw OpenAPI spec"
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "routes": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}
}
]
}
}Create a route in a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. This adds APISIX-formatted HTTP routing rules on shared dashboard resources.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| name required | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
| methods | Array of strings [ 1 .. 9 ] items unique Items Enum: "GET" "POST" "PUT" "DELETE" "PATCH" "HEAD" "OPTIONS" "CONNECT" "TRACE" The allowed HTTP methods to access the route. If empty, all HTTP methods are allowed. |
| vars | Array of any Conditions in the format of APISIX expressions to match requests to routes. Case sensitive when matching a cookie name. |
| paths required | Array of strings [ 1 .. 64 ] items [ items [ 1 .. 4096 ] characters ] The URL path(s) (after the service's |
| priority | integer Default: 0 Priority of the route. A higher value corresponds to a higher priority. If different Routes matches to the same URI, then the Route with the highest priority will be matched. |
| enable_websocket | boolean or null If true, enable Websocket proxying for the route. |
object Timeout settings for connecting to, sending, and receiving messages from the upstream, in seconds. | |
| plugins | object Key-value pairs of plugins and their configurations on the object. |
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The service ID. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01"
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}List routes in a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. Use pagination and filters to inspect APISIX-compatible route entries.
Required IAM Permission: Action gateway:GetPublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: service_id=bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published service. |
| page | integer <int32> >= 1 Page number of the listed resources. Used together with |
| page_size | integer <int32> >= 1 Number of resources listed per page. Used together with |
| direction | string Default: "desc" Enum: "asc" "desc" Order to list the resources by. The sorting index follows the configuration of |
| order_by | string Default: "updated_at" Enum: "created_at" "updated_at" Index to order resources by. |
| search | string Example: search=version%3Dv2 Condition to search resources by. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| with_publish_info | boolean Default: false If true, include publish information in the response, such as |
{- "list": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
], - "total": 1
}Get one route in a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. This returns the route with APISIX field format.
Required IAM Permission: Action gateway:GetPublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published route. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| with_publish_info | boolean Default: false If true, include publish information in the response, such as |
{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Fully update a route in a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. Use this when replacing the entire route object.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published route. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| name required | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
| methods | Array of strings [ 1 .. 9 ] items unique Items Enum: "GET" "POST" "PUT" "DELETE" "PATCH" "HEAD" "OPTIONS" "CONNECT" "TRACE" The allowed HTTP methods to access the route. If empty, all HTTP methods are allowed. |
| vars | Array of any Conditions in the format of APISIX expressions to match requests to routes. Case sensitive when matching a cookie name. |
| paths required | Array of strings [ 1 .. 64 ] items [ items [ 1 .. 4096 ] characters ] The URL path(s) (after the service's |
| priority | integer Default: 0 Priority of the route. A higher value corresponds to a higher priority. If different Routes matches to the same URI, then the Route with the highest priority will be matched. |
| enable_websocket | boolean or null If true, enable Websocket proxying for the route. |
object Timeout settings for connecting to, sending, and receiving messages from the upstream, in seconds. | |
| plugins | object Key-value pairs of plugins and their configurations on the object. |
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The service ID. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01"
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Partially update a route in a published service via JSON Patch (RFC 6902) through an APISIX Admin API compatible endpoint under /apisix/admin/.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published route. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| op required | string Enum: "add" "replace" The operation to be performed. |
| path required | string Path to the field to be replaced or added. Path should follow the JSON Pointer format. |
| value required | any Value to be added or replaced. |
[- {
- "op": "add",
- "path": "/name",
- "value": "new-name"
}
]{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Delete a route from a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. Requests that matched this rule will no longer be routed by it.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published route. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
""Create a stream route in a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. This configures APISIX-style TCP/UDP traffic matching rules.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| name required | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string) Client address filter. If the client request does not originate from | |
(IPAddress (IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string))) or Domain (string) Stream server address. | |
| server_port | integer <= 65535 Stream server port. |
| plugins | object Key-value pairs of plugins and their configurations on the object. |
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The service ID. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01"
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "gateway_group_name": "us-west-rsc",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}List stream routes in a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. Use this for visibility into current L4 routing rules.
Required IAM Permission: Action gateway:GetPublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: service_id=bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published service. |
| page | integer <int32> >= 1 Page number of the listed resources. Used together with |
| page_size | integer <int32> >= 1 Number of resources listed per page. Used together with |
| direction | string Default: "desc" Enum: "asc" "desc" Order to list the resources by. The sorting index follows the configuration of |
| order_by | string Default: "updated_at" Enum: "created_at" "updated_at" Index to order resources by. |
| search | string Example: search=version%3Dv2 Condition to search resources by. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| with_publish_info | boolean Default: false If true, include publish information in the response, such as |
{- "list": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "gateway_group_name": "us-west-rsc",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
], - "total": 1
}Get one stream route in a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. The returned object matches APISIX stream-route conventions.
Required IAM Permission: Action gateway:GetPublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| stream_route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published stream route. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| with_publish_info | boolean Default: false If true, include publish information in the response, such as |
{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "gateway_group_name": "us-west-rsc",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Fully update a stream route in a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. This replaces the existing stream-route configuration.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| stream_route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published stream route. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| name required | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string) Client address filter. If the client request does not originate from | |
(IPAddress (IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string))) or Domain (string) Stream server address. | |
| server_port | integer <= 65535 Stream server port. |
| plugins | object Key-value pairs of plugins and their configurations on the object. |
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The service ID. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01"
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "gateway_group_name": "us-west-rsc",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Delete a stream route from a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. This removes a specific L4 route while preserving other service objects.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| stream_route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published stream route. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
""IAM Action: gateway:GetPublishedService, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s Deprecated, you can use GET /apisix/admin/services for instead.
| gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. |
| unhealthy_nodes | Array of strings Items Enum: "unhealthy_nodes_exists" "no_unhealthy_nodes" Filter of services based on whether unhealthy nodes exist. |
| direction | string Default: "desc" Enum: "asc" "desc" Order to list the resources by. The sorting index follows the configuration of |
| page_size | integer <int32> >= 1 Number of resources listed per page. Used together with |
| page | integer <int32> >= 1 Page number of the listed resources. Used together with |
| order_by | string Default: "updated_at" Enum: "created_at" "updated_at" "publish_time" "name" Index to order published services by. |
| search | string Example: search=version%3Dv2 Condition to search resources by. |
| labels | string non-empty Example: labels=labels%5Bversion%5D=v2 Label(s) to filter resources by. The format is |
| hosts | Array of strings[ items^\*?[0-9a-zA-Z-._]+$ ] Example: hosts=httpbin.org |
| type | Array of strings Items Enum: "http" "stream" Type of service. |
{- "list": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "apisix_service_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "version": "1.3.2",
- "created_at": 1742288232,
- "updated_at": 1742288235,
- "gateway_group_name": "us-west-rsc",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "unhealthy_nodes_count": 0,
- "status": 0
}
], - "total": 1
}IAM Action: gateway:GetPublishedService, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. |
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "apisix_service_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "version": "1.3.2",
- "created_at": 1742288232,
- "updated_at": 1742288235,
- "gateway_group_name": "us-west-rsc",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "unhealthy_nodes_count": 0,
- "status": 0
}
}IAM Action: gateway:DeletePublishedService, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. |
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
""IAM Action: gateway:GetPublishedService, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. |
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
{- "value": {
- "raw_openapi": "Raw OpenAPI spec",
- "api_count": 10,
- "api_desc": "OAS description."
}
}IAM Action: gateway:UpdatePublishedService, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. |
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| raw_openapi | string The raw OpenAPI spec of the service. |
{- "raw_openapi": "Raw OpenAPI spec"
}{- "value": {
- "raw_openapi": "Raw OpenAPI spec",
- "api_count": 10,
- "api_desc": "OAS description."
}
}IAM Action: gateway:GetPublishedService, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. |
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| page | integer <int32> >= 1 Page number of the listed resources. Used together with |
| page_size | integer <int32> >= 1 Number of resources listed per page. Used together with |
| direction | string Default: "desc" Enum: "asc" "desc" Order to list the resources by. The sorting index follows the configuration of |
| order_by | string Default: "updated_at" Enum: "created_at" "updated_at" Index to order resources by. |
{- "list": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "route_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_version_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
}
], - "total": 1
}IAM Action: gateway:GetPublishedService, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. |
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the route in the service template. |
{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "route_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_version_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
}
}IAM Action: gateway:GetPublishedService, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. |
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the route in the service template. |
{- "value": {
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}
}
}IAM Action: gateway:UpdatePublishedService, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. |
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the route in the service template. |
| op required | string Enum: "add" "replace" The operation to be performed. |
| path required | string Path to the field to be replaced or added. Path should follow the JSON Pointer format. |
| value required | any Value to be added or replaced. |
[- {
- "op": "add",
- "path": "/name",
- "value": "new-name"
}
]{- "value": {
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}
}
}IAM Action: gateway:GetPublishedService, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. |
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| page | integer <int32> >= 1 Page number of the listed resources. Used together with |
| page_size | integer <int32> >= 1 Number of resources listed per page. Used together with |
| direction | string Default: "desc" Enum: "asc" "desc" Order to list the resources by. The sorting index follows the configuration of |
| order_by | string Default: "updated_at" Enum: "created_at" "updated_at" Index to order resources by. |
{- "list": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "stream_route_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_version_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
}
], - "total": 1
}IAM Action: gateway:GetPublishedService, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. |
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| stream_route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the stream route in the service template. |
{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "stream_route_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_version_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
}
}IAM Action: gateway:GetPublishedService, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. |
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| stream_route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the stream route in the service template. |
{- "value": {
- "plugins": {
- "key-auth": { }
}
}
}IAM Action: gateway:UpdatePublishedService, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. |
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| stream_route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the stream route in the service template. |
| op required | string Enum: "add" "replace" The operation to be performed. |
| path required | string Path to the field to be replaced or added. Path should follow the JSON Pointer format. |
| value required | any Value to be added or replaced. |
[- {
- "op": "add",
- "path": "/name",
- "value": "new-name"
}
]{- "value": {
- "plugins": {
- "key-auth": { }
}
}
}IAM Action: gateway:GetPublishedService, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. |
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| direction | string Default: "desc" Enum: "asc" "desc" Order to list the resources by. The sorting index follows the configuration of |
| order_by | string Default: "publish_time" Value: "publish_time" Index to order resources by. |
{- "list": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "apisix_service_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "version": "1.3.2",
- "created_at": 1742288232,
- "updated_at": 1742288235,
- "publish_time": 1742288232
}
], - "total": 1
}IAM Action: gateway:GetPublishedService, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. |
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
{- "value": {
- "hosts": [
- "httpbin.org"
], - "path_prefix": "/test",
- "strip_path_prefix": true,
- "upstream": {
- "name": "us-west-rsc",
- "scheme": "http",
- "desc": "Object description.",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "type": "chash",
- "hash_on": "vars",
- "key": "$host",
- "retries": 50,
- "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
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "nacos",
- "discovery_args": {
- "metadata": {
- "namespace_id": "public",
- "group_name": "DEFAULT_GROUP"
}
}, - "tls": {
- "client_cert": "$secret://aws/john/apisix-secrets/john-key-auth",
- "client_key": "$secret://aws/john/apisix-secrets/john-key-auth"
}, - "client_certificate": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "ca_certificates": [
- "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "user-agent: go/1.20"
], - "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
}
}
}
}, - "status": 0,
- "plugins": {
- "key-auth": { }
}
}
}IAM Action: gateway:UpdatePublishedService, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. |
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| dry-run | string Value: "all" When specified, run the operation in dry-run mode. |
| op required | string Enum: "add" "replace" The operation to be performed. |
| path required | string Path to the field to be replaced or added. Path should follow the JSON Pointer format. |
| value required | any Value to be added or replaced. |
[- {
- "op": "add",
- "path": "/name",
- "value": "new-name"
}
]{- "value": {
- "hosts": [
- "httpbin.org"
], - "path_prefix": "/test",
- "strip_path_prefix": true,
- "upstream": {
- "name": "us-west-rsc",
- "scheme": "http",
- "desc": "Object description.",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "type": "chash",
- "hash_on": "vars",
- "key": "$host",
- "retries": 50,
- "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
}
], - "service_name": "<ServiceRegistryID>/public/group/httpbin",
- "discovery_type": "nacos",
- "discovery_args": {
- "metadata": {
- "namespace_id": "public",
- "group_name": "DEFAULT_GROUP"
}
}, - "tls": {
- "client_cert": "$secret://aws/john/apisix-secrets/john-key-auth",
- "client_key": "$secret://aws/john/apisix-secrets/john-key-auth"
}, - "client_certificate": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "ca_certificates": [
- "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
], - "tls_verify": true,
- "checks": {
- "active": {
- "type": "http",
- "timeout": 1,
- "concurrency": 10,
- "host": "httpbin.org",
- "port": 1,
- "http_path": "/",
- "https_verify_certificate": true,
- "req_headers": [
- "user-agent: go/1.20"
], - "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
}
}
}
}, - "status": 0,
- "plugins": {
- "key-auth": { }
}
}
}Retrieve upstream node health check results for a published service in a gateway group. If no upstream ID is provided, the status of the service's default upstream is returned.
Required IAM Permission: Action gateway:GetPublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. |
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| upstream_id | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: upstream_id=bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the upstream. |
{- "value": {
- "httpbin.com:80": {
- "host": "httpbin.com",
- "port": 80,
- "total": 1,
- "healthy": 1,
- "unhealthy": 0,
- "unknown": 0,
- "updated_at": 1750150319,
- "gateway_instances": [
- {
- "id": "xxx-yyy-zzz",
- "hostname": "api7ee3-apisix-699b68db7f-cxgcw",
- "status": "healthy",
- "created_at": 1750150300,
- "updated_at": 1750150335
}
]
}
}
}IAM Action: gateway:GetServiceRegistry, Resource: arn:api7:gateway:gatewaygroup/%s
| service_registry_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Service registry ID. |
| gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. |
| page | integer <int32> >= 1 Page number of the listed resources. Used together with |
| page_size | integer <int32> >= 1 Number of resources listed per page. Used together with |
| direction | string Default: "desc" Enum: "asc" "desc" Order to list the resources by. The sorting index follows the configuration of |
| order_by | string Default: "updated_at" Enum: "created_at" "updated_at" "publish_time" "name" Index to order published services by. |
{- "list": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "type": "http",
- "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "apisix_service_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "version": "1.3.2",
- "created_at": 1742288232,
- "updated_at": 1742288235,
- "gateway_group_name": "us-west-rsc",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "unhealthy_nodes_count": 0,
- "status": 0
}
], - "total": 1
}| create_new_version | boolean If true, create a new service version. |
| gateway_group_id | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The gateway group ID. |
Array of objects non-empty Services configurations. |
{- "create_new_version": true,
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "services": [
- {
- "name": "us-west-rsc",
- "hosts": [
- "httpbin.org"
], - "path_prefix": "/test",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "version": "string",
- "service_version_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "status": 0,
- "routes": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01"
}
]
}
]
}{- "value": {
- "duplicate": [
- [
- {
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "service_name": "httpbin-svc",
- "route_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "route_name": "httpbin-route",
- "url": "/test"
}
]
], - "overlapping": [
- [
- {
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "service_name": "httpbin-svc",
- "route_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "route_name": "httpbin-route",
- "url": "/test"
}
]
]
}
}Create a route in a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. This adds APISIX-formatted HTTP routing rules on shared dashboard resources.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| name required | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
| methods | Array of strings [ 1 .. 9 ] items unique Items Enum: "GET" "POST" "PUT" "DELETE" "PATCH" "HEAD" "OPTIONS" "CONNECT" "TRACE" The allowed HTTP methods to access the route. If empty, all HTTP methods are allowed. |
| vars | Array of any Conditions in the format of APISIX expressions to match requests to routes. Case sensitive when matching a cookie name. |
| paths required | Array of strings [ 1 .. 64 ] items [ items [ 1 .. 4096 ] characters ] The URL path(s) (after the service's |
| priority | integer Default: 0 Priority of the route. A higher value corresponds to a higher priority. If different Routes matches to the same URI, then the Route with the highest priority will be matched. |
| enable_websocket | boolean or null If true, enable Websocket proxying for the route. |
object Timeout settings for connecting to, sending, and receiving messages from the upstream, in seconds. | |
| plugins | object Key-value pairs of plugins and their configurations on the object. |
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The service ID. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01"
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}List routes in a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. Use pagination and filters to inspect APISIX-compatible route entries.
Required IAM Permission: Action gateway:GetPublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: service_id=bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published service. |
| page | integer <int32> >= 1 Page number of the listed resources. Used together with |
| page_size | integer <int32> >= 1 Number of resources listed per page. Used together with |
| direction | string Default: "desc" Enum: "asc" "desc" Order to list the resources by. The sorting index follows the configuration of |
| order_by | string Default: "updated_at" Enum: "created_at" "updated_at" Index to order resources by. |
| search | string Example: search=version%3Dv2 Condition to search resources by. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| with_publish_info | boolean Default: false If true, include publish information in the response, such as |
{- "list": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
], - "total": 1
}Get one route in a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. This returns the route with APISIX field format.
Required IAM Permission: Action gateway:GetPublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published route. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| with_publish_info | boolean Default: false If true, include publish information in the response, such as |
{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Fully update a route in a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. Use this when replacing the entire route object.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published route. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| name required | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
| methods | Array of strings [ 1 .. 9 ] items unique Items Enum: "GET" "POST" "PUT" "DELETE" "PATCH" "HEAD" "OPTIONS" "CONNECT" "TRACE" The allowed HTTP methods to access the route. If empty, all HTTP methods are allowed. |
| vars | Array of any Conditions in the format of APISIX expressions to match requests to routes. Case sensitive when matching a cookie name. |
| paths required | Array of strings [ 1 .. 64 ] items [ items [ 1 .. 4096 ] characters ] The URL path(s) (after the service's |
| priority | integer Default: 0 Priority of the route. A higher value corresponds to a higher priority. If different Routes matches to the same URI, then the Route with the highest priority will be matched. |
| enable_websocket | boolean or null If true, enable Websocket proxying for the route. |
object Timeout settings for connecting to, sending, and receiving messages from the upstream, in seconds. | |
| plugins | object Key-value pairs of plugins and their configurations on the object. |
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The service ID. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01"
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Partially update a route in a published service via JSON Patch (RFC 6902) through an APISIX Admin API compatible endpoint under /apisix/admin/.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published route. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| op required | string Enum: "add" "replace" The operation to be performed. |
| path required | string Path to the field to be replaced or added. Path should follow the JSON Pointer format. |
| value required | any Value to be added or replaced. |
[- {
- "op": "add",
- "path": "/name",
- "value": "new-name"
}
]{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Delete a route from a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. Requests that matched this rule will no longer be routed by it.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published route. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
""IAM Action: gateway:UpdateServiceTemplate, Resource: arn:api7:gateway:servicetemplate/%s
| name required | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
| methods | Array of strings [ 1 .. 9 ] items unique Items Enum: "GET" "POST" "PUT" "DELETE" "PATCH" "HEAD" "OPTIONS" "CONNECT" "TRACE" The allowed HTTP methods to access the route. If empty, all HTTP methods are allowed. |
| vars | Array of any Conditions in the format of APISIX expressions to match requests to routes. Case sensitive when matching a cookie name. |
| paths required | Array of strings [ 1 .. 64 ] items [ items [ 1 .. 4096 ] characters ] The URL path(s) (after the service's |
| priority | integer Default: 0 Priority of the route. A higher value corresponds to a higher priority. If different Routes matches to the same URI, then the Route with the highest priority will be matched. |
| enable_websocket | boolean or null If true, enable Websocket proxying for the route. |
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The service ID. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01"
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}IAM Action: gateway:GetServiceTemplate, Resource: arn:api7:gateway:servicetemplate/%s
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: service_id=bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| page | integer <int32> >= 1 Page number of the listed resources. Used together with |
| page_size | integer <int32> >= 1 Number of resources listed per page. Used together with |
| direction | string Default: "desc" Enum: "asc" "desc" Order to list the resources by. The sorting index follows the configuration of |
| order_by | string Default: "updated_at" Enum: "created_at" "updated_at" Index to order resources by. |
| search | string Example: search=version%3Dv2 Condition to search resources by. |
| labels | string non-empty Example: labels=labels%5Bversion%5D=v2 Label(s) to filter resources by. The format is |
{- "list": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
], - "total": 1
}IAM Action: gateway:GetServiceTemplate, Resource: arn:api7:gateway:servicetemplate/%s
| route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the route in the service template. |
{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}IAM Action: gateway:UpdateServiceTemplate, Resource: arn:api7:gateway:servicetemplate/%s
| route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the route in the service template. |
| op required | string Enum: "add" "replace" The operation to be performed. |
| path required | string Path to the field to be replaced or added. Path should follow the JSON Pointer format. |
| value required | any Value to be added or replaced. |
[- {
- "op": "add",
- "path": "/name",
- "value": "new-name"
}
]{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}IAM Action: gateway:UpdateServiceTemplate, Resource: arn:api7:gateway:servicetemplate/%s
| route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the route in the service template. |
""IAM Action: gateway:GetPublishedService, Resource: arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: 86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. |
| service_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the route in the service template. |
{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "methods": [
- "GET"
], - "vars": [
- [
- "arg_version",
- "==",
- "v2"
], - [
- "arg_ttl",
- "<",
- 3600
]
], - "paths": [
- "/get"
], - "priority": 0,
- "enable_websocket": true,
- "timeout": {
- "connect": 60,
- "send": 60,
- "read": 60
}, - "plugins": {
- "key-auth": { }
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "route_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_version_id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101"
}
}Create a stream route in a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. This configures APISIX-style TCP/UDP traffic matching rules.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| name required | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string) Client address filter. If the client request does not originate from | |
(IPAddress (IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string))) or Domain (string) Stream server address. | |
| server_port | integer <= 65535 Stream server port. |
| plugins | object Key-value pairs of plugins and their configurations on the object. |
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The service ID. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01"
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "gateway_group_name": "us-west-rsc",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}List stream routes in a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. Use this for visibility into current L4 routing rules.
Required IAM Permission: Action gateway:GetPublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: service_id=bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published service. |
| page | integer <int32> >= 1 Page number of the listed resources. Used together with |
| page_size | integer <int32> >= 1 Number of resources listed per page. Used together with |
| direction | string Default: "desc" Enum: "asc" "desc" Order to list the resources by. The sorting index follows the configuration of |
| order_by | string Default: "updated_at" Enum: "created_at" "updated_at" Index to order resources by. |
| search | string Example: search=version%3Dv2 Condition to search resources by. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| with_publish_info | boolean Default: false If true, include publish information in the response, such as |
{- "list": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "gateway_group_name": "us-west-rsc",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
], - "total": 1
}Get one stream route in a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. The returned object matches APISIX stream-route conventions.
Required IAM Permission: Action gateway:GetPublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| stream_route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published stream route. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| with_publish_info | boolean Default: false If true, include publish information in the response, such as |
{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "gateway_group_name": "us-west-rsc",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Fully update a stream route in a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. This replaces the existing stream-route configuration.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| stream_route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published stream route. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
| name required | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string) Client address filter. If the client request does not originate from | |
(IPAddress (IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string))) or Domain (string) Stream server address. | |
| server_port | integer <= 65535 Stream server port. |
| plugins | object Key-value pairs of plugins and their configurations on the object. |
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The service ID. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01"
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "gateway_group_name": "us-west-rsc",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Delete a stream route from a published service through an APISIX Admin API compatible endpoint under /apisix/admin/. This removes a specific L4 route while preserving other service objects.
Required IAM Permission: Action gateway:UpdatePublishedService, Resource arn:api7:gateway:gatewaygroup/%s/publishedservice/%s
| stream_route_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the published stream route. |
| gateway_group_id required | string >= 1 Example: gateway_group_id=86fb9981-d9d2-4555-9df8-91ae92129335 Gateway group ID. Optional when using the gateway group admin key to authenticate. |
""Create a Layer 4 stream route in the service template to route TCP or UDP traffic for non-HTTP protocols. Define matching rules and upstream behavior to control how connection-level traffic is proxied.
Required IAM Permission: Action gateway:UpdateServiceTemplate, Resource arn:api7:gateway:servicetemplate/%s
| name required | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string) Client address filter. If the client request does not originate from | |
(IPAddress (IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string))) or Domain (string) Stream server address. | |
| server_port | integer <= 65535 Stream server port. |
| service_id | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The service ID. |
{- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01"
}{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "gateway_group_name": "us-west-rsc",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}List stream routes defined in the service template for TCP/UDP traffic proxying. Use pagination and filters to inspect existing Layer 4 routing policies.
Required IAM Permission: Action gateway:GetServiceTemplate, Resource arn:api7:gateway:servicetemplate/%s
| service_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: service_id=bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the service template. |
| page | integer <int32> >= 1 Page number of the listed resources. Used together with |
| page_size | integer <int32> >= 1 Number of resources listed per page. Used together with |
| direction | string Default: "desc" Enum: "asc" "desc" Order to list the resources by. The sorting index follows the configuration of |
| order_by | string Default: "updated_at" Enum: "created_at" "updated_at" Index to order resources by. |
| search | string Example: search=version%3Dv2 Condition to search resources by. |
| labels | string non-empty Example: labels=labels%5Bversion%5D=v2 Label(s) to filter resources by. The format is |
{- "list": [
- {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "gateway_group_name": "us-west-rsc",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
], - "total": 1
}Retrieve a specific stream route from the service template, including its matching and forwarding configuration for non-HTTP traffic.
Required IAM Permission: Action gateway:GetServiceTemplate, Resource arn:api7:gateway:servicetemplate/%s
| stream_route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the stream route in the service template. |
{- "value": {
- "name": "us-west-rsc",
- "labels": {
- "version": "v2",
- "env": "prod"
}, - "desc": "Object description.",
- "remote_addr": "127.0.0.1",
- "server_addr": "mysql",
- "server_port": 3306,
- "plugins": {
- "ip-restriction": {
- "whitelist": [
- "192.168.0.1/24"
], - "message": "Access denied"
}
}, - "id": "bd58fce2-b6cc-4d2d-a53c-6ce11b19c101",
- "service_id": "b32e678e-7f6b-4a50-b113-550621ed4c01",
- "gateway_group_id": "bc1b95c9-b348-4832-acc3-e257d2342df1",
- "gateway_group_name": "us-west-rsc",
- "created_at": 1742288232,
- "updated_at": 1742288235
}
}Replace a stream route configuration in the service template. Updates may immediately affect active TCP/UDP connection routing behavior.
Required IAM Permission: Action gateway:UpdateServiceTemplate, Resource arn:api7:gateway:servicetemplate/%s
| stream_route_template_id required | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ Example: bd58fce2-b6cc-4d2d-a53c-6ce11b19c101 The unique identifier of the stream route in the service template. |
| name required | string [ 1 .. 65536 ] characters The object name. |
object Key-value pairs of labels. | |
| desc | string <= 65536 characters The object description. |
IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string) Client address filter. If the client request does not originate from | |
(IPAddress (IPv4 (string) or IPv4/CIDR (string) or IPv6 (string) or IPv6/CIDR (string))) or Domain (string) Stream server address. | |
| server_port | integer <= 65535 Stream server port. |
| plugins | object Key-value pairs of plugins and their configurations on the object. |
| service_id | string [ 1 .. 256 ] characters ^[a-zA-Z0-9-_.]+$ The service ID. |