summaryrefslogtreecommitdiff
path: root/data/en_us/apig/2024-03-27/api-docs.php
diff options
context:
space:
mode:
authorZhineng Li <im@zhineng.li>2026-07-12 17:11:17 +0800
committerZhineng Li <im@zhineng.li>2026-07-12 17:11:17 +0800
commit1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634 (patch)
tree5f0857666365b7e40cdaa3733ebe1f3ba9e13c67 /data/en_us/apig/2024-03-27/api-docs.php
parent7347bac4ab7e136157fc94777e6cf87ef9e08599 (diff)
downloadafterglow-metadata-full-1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634.tar.gz
afterglow-metadata-full-1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634.zip
update APIs 20260712
Diffstat (limited to 'data/en_us/apig/2024-03-27/api-docs.php')
-rw-r--r--data/en_us/apig/2024-03-27/api-docs.php34836
1 files changed, 15087 insertions, 19749 deletions
diff --git a/data/en_us/apig/2024-03-27/api-docs.php b/data/en_us/apig/2024-03-27/api-docs.php
index 2e1f69e..ad0d94e 100644
--- a/data/en_us/apig/2024-03-27/api-docs.php
+++ b/data/en_us/apig/2024-03-27/api-docs.php
@@ -1,671 +1,759 @@
<?php return [
'version' => '1.0',
- 'info' => [
- 'style' => 'ROA',
- 'product' => 'APIG',
- 'version' => '2024-03-27',
- ],
+ 'info' => ['style' => 'ROA', 'product' => 'APIG', 'version' => '2024-03-27'],
'directories' => [
[
- 'id' => 194304,
- 'title' => 'API Management',
+ 'children' => ['ExportHttpApi', 'ImportHttpApi', 'DeployHttpApi', 'CreateHttpApi', 'UpdateHttpApi', 'GetHttpApi', 'ListHttpApis', 'UndeployHttpApi', 'DeleteHttpApi'],
'type' => 'directory',
- 'children' => [
- 'ExportHttpApi',
- 'ImportHttpApi',
- 'DeployHttpApi',
- 'CreateHttpApi',
- 'UpdateHttpApi',
- 'GetHttpApi',
- 'ListHttpApis',
- 'UndeployHttpApi',
- 'DeleteHttpApi',
- ],
+ 'title' => 'API Management',
],
[
- 'id' => 197650,
- 'title' => 'Interface Management',
+ 'children' => ['CreateHttpApiOperation', 'GetHttpApiOperation', 'UpdateHttpApiOperation', 'ListHttpApiOperations', 'DeleteHttpApiOperation'],
'type' => 'directory',
- 'children' => [
- 'CreateHttpApiOperation',
- 'GetHttpApiOperation',
- 'UpdateHttpApiOperation',
- 'ListHttpApiOperations',
- 'DeleteHttpApiOperation',
- ],
+ 'title' => 'Interface Management',
],
[
- 'id' => 278728,
- 'title' => 'MCP Management',
+ 'children' => ['CreateMcpServer', 'UpdateMcpServer', 'GetMcpServer', 'ListMcpServers', 'DeleteMcpServer', 'DeployMcpServer', 'UnDeployMcpServer', 'SyncMCPServers'],
'type' => 'directory',
- 'children' => [
- 'CreateMcpServer',
- 'UpdateMcpServer',
- 'GetMcpServer',
- 'ListMcpServers',
- 'DeleteMcpServer',
- 'DeployMcpServer',
- 'UnDeployMcpServer',
- 'SyncMCPServers',
- ],
+ 'title' => 'MCP Management',
],
[
- 'id' => 199795,
- 'title' => 'Routing Management',
+ 'children' => ['CreateHttpApiRoute', 'UpdateHttpApiRoute', 'GetHttpApiRoute', 'DeleteHttpApiRoute', 'ListHttpApiRoutes'],
'type' => 'directory',
- 'children' => [
- 'CreateHttpApiRoute',
- 'UpdateHttpApiRoute',
- 'GetHttpApiRoute',
- 'DeleteHttpApiRoute',
- 'ListHttpApiRoutes',
- ],
+ 'title' => 'Routing Management',
],
[
- 'id' => 203189,
- 'title' => 'Service Management',
+ 'children' => ['CreateServiceVersion', 'UpdateServiceVersion', 'DeleteServiceVersion'],
'type' => 'directory',
- 'children' => [
- 'GetService',
- 'CreateService',
- 'ListServices',
- 'UpdateService',
- 'DeleteService',
- 'CreateServiceVersion',
- 'UpdateServiceVersion',
- 'DeleteServiceVersion',
- 'CreateSource',
- 'GetSource',
- 'DeleteSource',
- ],
+ 'title' => 'Service Management',
],
[
- 'id' => 194166,
- 'title' => 'Gateway Management',
+ 'children' => ['CreateGateway', 'UpdateGatewayName', 'UpdateGatewayFeature', 'UpgradeGateway', 'GetGateway', 'ListGateways', 'AddGatewaySecurityGroupRule', 'DeleteGateway', 'DeleteGatewaySecurityGroupRule', 'ListZones', 'RestartGateway', 'ListGatewayFeatures'],
'type' => 'directory',
- 'children' => [
- 'CreateGateway',
- 'UpdateGatewayName',
- 'UpdateGatewayFeature',
- 'UpgradeGateway',
- 'GetGateway',
- 'ListGateways',
- 'AddGatewaySecurityGroupRule',
- 'DeleteGateway',
- 'DeleteGatewaySecurityGroupRule',
- 'ListZones',
- 'RestartGateway',
- 'ListGatewayFeatures',
- ],
+ 'title' => 'Gateway Management',
],
[
- 'id' => 249179,
- 'title' => 'Consumer Management',
+ 'children' => ['RemoveConsumerAuthorizationRule', 'QueryConsumerAuthorizationRules', 'CreateConsumerAuthorizationRules', 'BatchDeleteConsumerAuthorizationRule', 'DeleteConsumer', 'ListConsumers', 'DeleteConsumerAuthorizationRule', 'CreateConsumer', 'UpdateConsumer', 'GetConsumer', 'CreateConsumerAuthorizationRule', 'UpdateConsumerAuthorizationRule', 'GetConsumerAuthorizationRule'],
'type' => 'directory',
- 'children' => [
- 'RemoveConsumerAuthorizationRule',
- 'QueryConsumerAuthorizationRules',
- 'CreateConsumerAuthorizationRules',
- 'BatchDeleteConsumerAuthorizationRule',
- 'DeleteConsumer',
- 'ListConsumers',
- 'DeleteConsumerAuthorizationRule',
- 'CreateConsumer',
- 'UpdateConsumer',
- 'GetConsumer',
- 'CreateConsumerAuthorizationRule',
- 'UpdateConsumerAuthorizationRule',
- 'GetConsumerAuthorizationRule',
- ],
+ 'title' => 'Consumer Management',
],
[
- 'id' => 202847,
- 'title' => 'Policy Management',
+ 'children' => ['ListPolicyClasses', 'UpdatePolicy', 'CreatePolicyAttachment', 'GetPolicyAttachment', 'DeletePolicyAttachment'],
'type' => 'directory',
- 'children' => [
- 'ListPolicies',
- 'ListPolicyClasses',
- 'CreatePolicy',
- 'GetPolicy',
- 'UpdatePolicy',
- 'DeletePolicy',
- 'CreatePolicyAttachment',
- 'GetPolicyAttachment',
- 'DeletePolicyAttachment',
- ],
+ 'title' => 'Policy Management',
],
[
- 'id' => 206755,
- 'title' => 'Plug-in Management',
+ 'children' => ['ListPlugins', 'CreatePluginAttachment', 'GetPluginAttachment', 'ListPluginAttachments', 'UpdatePluginAttachment', 'DeletePluginAttachment', 'InstallPlugin', 'UninstallPlugin'],
'type' => 'directory',
- 'children' => [
- 'ListPlugins',
- 'CreatePluginAttachment',
- 'GetPluginAttachment',
- 'ListPluginAttachments',
- 'UpdatePluginAttachment',
- 'DeletePluginAttachment',
- 'InstallPlugin',
- 'UninstallPlugin',
- ],
+ 'title' => 'Plug-in Management',
],
[
- 'id' => 199044,
- 'title' => 'Domain Name Management',
+ 'children' => ['ListSslCerts', 'GetDomain', 'CreateDomain', 'ListDomains', 'DeleteDomain', 'UpdateDomain'],
'type' => 'directory',
- 'children' => [
- 'ListSslCerts',
- 'GetDomain',
- 'CreateDomain',
- 'ListDomains',
- 'DeleteDomain',
- 'UpdateDomain',
- ],
+ 'title' => 'Domain Name Management',
],
[
- 'id' => 204225,
- 'title' => 'Monitoring Management',
+ 'children' => ['GetTraceConfig', 'GetDashboard'],
'type' => 'directory',
- 'children' => [
- 'GetTraceConfig',
- 'GetDashboard',
- ],
+ 'title' => 'Monitoring Management',
],
[
- 'id' => 204226,
- 'title' => 'Resource Management',
+ 'children' => ['GetResourceOverview'],
'type' => 'directory',
- 'children' => [
- 'ChangeResourceGroup',
- 'GetResourceOverview',
- ],
+ 'title' => 'Resource Management',
],
[
- 'id' => 201876,
- 'title' => 'Historical Interfaces',
- 'type' => 'directory',
'children' => [
'CreateAndAttachPolicy',
'UpdateAndAttachPolicy',
[
- 'id' => 199043,
- 'title' => 'Environmental Management',
+ 'children' => ['GetEnvironment'],
'type' => 'directory',
- 'children' => [
- 'CreateEnvironment',
- 'GetEnvironment',
- 'UpdateEnvironment',
- 'DeleteEnvironment',
- 'ListEnvironments',
- ],
+ 'title' => 'Environmental Management',
],
],
+ 'type' => 'directory',
+ 'title' => 'Historical Interfaces',
],
[
- 'id' => 372396,
- 'title' => null,
+ 'children' => ['ListPluginClasses', 'ListConsumerAuthorizationRules', 'ListSecretReferences', 'UpdateSecret', 'GetSecret'],
'type' => 'directory',
+ 'title' => 'Other',
+ ],
+ [
'children' => [
- 'ListPluginClasses',
- 'ListConsumerAuthorizationRules',
- 'GetSecretValue',
- 'DeleteSecret',
- 'ListSecretReferences',
- 'UpdateSecret',
- 'GetSecret',
- 'CreateSecret',
- 'ListSecrets',
+ 'AddGatewayQuotaRule', 'ChangeResourceGroup', 'CreateAiModelProvider', 'CreateEnvironment', 'CreatePluginClass', 'CreatePolicy', 'CreateSecret', 'CreateService', 'CreateSource', 'DeleteEnvironment', 'DeleteGatewayQuotaRule', 'DeletePluginClass', 'DeletePolicy', 'DeleteSecret', 'DeleteService', 'DeleteSource', 'DescribeRegions', 'GetGatewayQuotaRule', 'GetGatewayQuotaRuleSubjectUsage', 'GetPluginClass',
+ 'GetPolicy', 'GetSecretValue', 'GetService', 'GetSource', 'ListConsumerQuotaRules', 'ListEnvironments', 'ListExternalServices', 'ListGatewayQuotaRules', 'ListPolicies', 'ListSecrets', 'ListServices', 'ListTagResources', 'ResetGatewayQuotaRule', 'TagResources', 'UntagResources', 'UpdateEnvironment', 'UpdateGatewayQuotaRule', 'UpdateGatewayQuotaRuleStatus', 'UpdateService',
],
+ 'title' => 'Others',
+ 'type' => 'directory',
],
],
'components' => [
'schemas' => [
'AgentServiceConfig' => [
- 'title' => '',
+ 'title' => 'Agent服务配置',
'description' => 'The agent service configuration.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'address' => [
- 'title' => '',
- 'description' => 'The address.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'https://dashscope.aliyuncs.com/api/v1',
- 'backendName' => 'address',
- ],
+ 'address' => ['title' => '地址', 'description' => 'The address.'."\n", 'type' => 'string', 'required' => true, 'example' => 'https://dashscope.aliyuncs.com/api/v1'],
'dashScopeConfig' => [
- 'title' => '',
+ 'title' => '百炼服务配置',
'description' => 'The Model Studio service configuration.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'appCredentials' => [
- 'title' => '',
+ 'title' => '应用配置',
'description' => 'The application configuration.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'The application configuration',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'apiKey' => [
- 'title' => 'apiKey',
- 'description' => 'apiKey'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'sk-xxx',
- 'backendName' => 'apiKey',
- ],
- 'appId' => [
- 'title' => '',
- 'description' => 'The application ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'app-xxx',
- 'backendName' => 'appId',
- ],
+ 'apiKey' => ['title' => 'apiKey', 'description' => 'apiKey'."\n", 'type' => 'string', 'example' => 'sk-xxx'],
+ 'appId' => ['title' => '应用ID', 'description' => 'The application ID.'."\n", 'type' => 'string', 'example' => 'app-xxx'],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'appCredentials',
+ 'example' => '',
],
],
- 'backendName' => 'dashScopeConfig',
+ 'example' => '',
],
'enableHealthCheck' => [
- 'title' => '',
+ 'title' => '启用健康检查',
'description' => 'Specifies whether to enable health check.'."\n",
- 'visibility' => 'Public',
'type' => 'boolean',
- 'enumValueTitles' => [
- 'true' => 'true',
- 'false' => 'false',
- ],
+ 'enumValueTitles' => ['true' => 'true', 'false' => 'false'],
'example' => 'true',
- 'backendName' => 'enableHealthCheck',
- ],
- 'provider' => [
- 'title' => '',
- 'description' => 'The service provider.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'aliyun',
- 'backendName' => 'provider',
],
+ 'provider' => ['title' => '服务供应商', 'description' => 'The service provider.'."\n", 'type' => 'string', 'required' => true, 'example' => 'qwen'],
'difyConfig' => [
- 'title' => '',
+ 'title' => 'Dify服务配置',
'description' => 'The Dify service configuration.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'botType' => [
- 'title' => '',
- 'description' => 'The interaction type.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'chatbot',
- 'backendName' => 'botType',
- ],
- 'apiKey' => [
- 'title' => 'apiKey',
- 'description' => 'API Key'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'sk-xxx',
- 'backendName' => 'apiKey',
- ],
+ 'botType' => ['title' => '交互类型', 'description' => 'The interaction type.'."\n", 'type' => 'string', 'example' => 'chatbot'],
+ 'apiKey' => ['title' => 'apiKey', 'description' => 'API Key'."\n", 'type' => 'string', 'example' => 'app-xxx'],
],
- 'backendName' => 'difyConfig',
+ 'example' => '',
],
'enableOutlierDetection' => [
'description' => 'Whether to enable outlier detection',
- 'visibility' => 'Public',
'type' => 'boolean',
- 'enumValueTitles' => [
- 'true' => 'true',
- 'false' => 'false',
- ],
+ 'enumValueTitles' => ['true' => 'true', 'false' => 'false'],
'example' => 'true',
- 'backendName' => 'enableOutlierDetection',
+ 'title' => '',
],
'customConfig' => [
'description' => 'User-defined configuration',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'apiKey' => [
- 'description' => 'apiKey',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'sk-xxx',
- 'backendName' => 'apiKey',
- ],
+ 'apiKey' => ['description' => 'apiKey', 'type' => 'string', 'example' => 'app-xxx'."\n", 'title' => ''],
'apiKeyGenerateMode' => [
'description' => 'API key generation mode.',
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'Reference' => 'Reference',
- 'Custom' => 'Custom',
- ],
+ 'enumValueTitles' => ['Reference' => 'Reference', 'Custom' => 'Custom'],
'example' => 'Reference',
- 'backendName' => 'apiKeyGenerateMode',
+ 'title' => '',
],
],
- 'backendName' => 'customConfig',
+ 'title' => '',
+ 'example' => '',
],
'protocols' => [
- 'title' => '',
+ 'title' => '协议',
'description' => 'The protocol.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'description' => 'The protocol.',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'DashScope',
- 'extendType' => 'true',
- ],
+ 'items' => ['description' => 'The protocol.', 'type' => 'string', 'example' => 'DashScope', 'title' => ''],
'required' => false,
- 'backendName' => 'protocols',
+ 'example' => '',
],
],
+ 'example' => '',
],
- 'AiServiceConfig' => [
- 'title' => 'A short description of struct',
- 'description' => 'The struct description.'."\n",
- 'visibility' => 'Public',
+ 'AiCacheConfig' => [
+ 'description' => 'object.',
'type' => 'object',
'properties' => [
- 'provider' => [
+ 'cacheTTL' => ['description' => 'The cache expiration time, in seconds.', 'type' => 'integer', 'title' => '', 'example' => '3600', 'format' => 'int32'],
+ 'redisConfig' => ['description' => 'The Redis configuration for exact cache count storage.', 'title' => '', 'example' => '', '$ref' => '#/components/schemas/AiPolicyRedisConfig'],
+ 'vectorConfig' => [
+ 'description' => 'The vector database configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'type' => ['description' => 'The vector database type.', 'type' => 'string', 'title' => '', 'example' => 'dashvector'],
+ 'serviceHost' => ['description' => 'The service address of the vector database.', 'type' => 'string', 'title' => '', 'example' => 'vdb-xxx.dashvector.aliyuncs.com'],
+ 'apiKey' => ['description' => 'The API key of the vector database.', 'type' => 'string', 'title' => '', 'example' => 'sk-xxx'],
+ 'timeout' => ['description' => 'The request timeout period, in milliseconds.', 'type' => 'integer', 'title' => '', 'example' => '5000', 'format' => 'int32'],
+ 'collectionId' => ['description' => 'The vector collection ID.', 'type' => 'string', 'title' => '', 'example' => 'col-xxx'],
+ 'threshold' => ['description' => 'The similarity threshold.', 'type' => 'number', 'title' => '', 'example' => '0.95', 'format' => 'float'],
+ ],
'title' => '',
- 'description' => 'The Large Language Model (LLM) provider.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'qwen',
- 'backendName' => 'provider',
+ 'example' => '',
],
- 'address' => [
+ 'embeddingConfig' => [
+ 'description' => 'The embedding service configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'type' => ['description' => 'The embedding service type.', 'type' => 'string', 'title' => '', 'example' => 'dashscope'],
+ 'serviceId' => ['description' => 'The embedding service ID.', 'type' => 'string', 'title' => '', 'example' => 'svc-xxx'],
+ 'timeout' => ['description' => 'The request timeout period, in milliseconds.', 'type' => 'integer', 'title' => '', 'example' => '5000', 'format' => 'int32'],
+ 'modelName' => ['description' => 'The embedding model name.', 'type' => 'string', 'title' => '', 'example' => 'text-embedding-v2'],
+ ],
'title' => '',
- 'description' => 'The service endpoint.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'https://dashscope.aliyun.com',
- 'backendName' => 'address',
+ 'example' => '',
],
- 'enableHealthCheck' => [
+ 'cacheKeyStrategy' => ['description' => 'The cache key generation strategy.', 'type' => 'string', 'title' => '', 'example' => '-'],
+ 'cacheMode' => ['description' => 'The cache mode.', 'type' => 'string', 'title' => '', 'example' => 'exact'],
+ 'pluginStatus' => ['description' => 'The plugin running status.', 'title' => '', 'example' => '', '$ref' => '#/components/schemas/AiPluginStatus'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AiFallbackConfig' => [
+ 'description' => 'object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'onlyRedirectUpstreamCode' => ['description' => 'When set to true, fallback is triggered only when the backend returns a 4xx/5xx status code. Status codes generated by the gateway itself (such as 503 connection failed) do not trigger fallback. Requires DPI engine version 2.1.11 or later. If the version is insufficient, this setting is silently ignored.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ 'serviceConfigs' => [
+ 'description' => 'The list of fallback target services, excluding the primary routing service.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'object',
+ 'type' => 'object',
+ 'properties' => [
+ 'serviceId' => ['description' => 'The ID of the fallback target service.', 'type' => 'string', 'title' => '', 'example' => 'svc-bbb'],
+ 'name' => ['description' => 'The service name.', 'type' => 'string', 'title' => '', 'example' => '—'],
+ 'targetModelName' => ['description' => 'The name of the fallback target model.', 'type' => 'string', 'title' => '', 'example' => 'qwen-max'],
+ 'passThroughModelName' => ['description' => 'Specifies whether to pass through the model name from the original request.', 'type' => 'boolean', 'title' => '', 'example' => 'false'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
'title' => '',
- 'description' => 'Specifies whether to enable health check.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'enableHealthCheck',
+ 'example' => '',
],
- 'paiEASServiceConfig' => [
- 'title' => 'PAI-EAS服务专属配置',
- 'description' => 'PAI-EAS service configuration settings.',
- 'visibility' => 'Public',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AiNetworkConfigSearchEngine' => [
+ 'description' => 'object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'type' => ['description' => 'The search engine type.', 'type' => 'string', 'title' => '', 'example' => 'aliyunQuark'],
+ 'apiKey' => ['description' => 'The API key of the search engine.', 'type' => 'string', 'title' => '', 'example' => 'sk-xxx'],
+ 'count' => ['description' => 'The number of results returned per search.', 'type' => 'integer', 'title' => '', 'example' => '5', 'format' => 'int32'],
+ 'start' => ['description' => 'The offset of search results.', 'type' => 'integer', 'title' => '', 'example' => '0', 'format' => 'int32'],
+ 'timeoutMillisecond' => ['description' => 'The API call timeout period, in milliseconds.', 'type' => 'integer', 'title' => '', 'example' => '5000', 'format' => 'int32'],
+ 'optionArgs' => [
+ 'description' => 'The search engine-specific parameters in key-value pair format.',
+ 'type' => 'object',
+ 'additionalProperties' => ['description' => 'Search engine-specific parameters in key-value pair format.', 'type' => 'string', 'title' => '', 'example' => '{"market":"zh-CN"}'],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'endpoint' => ['description' => 'The endpoint of the search engine.', 'type' => 'string', 'title' => '', 'example' => 'https://cloud-iqs.aliyuncs.com'],
+ 'contentMode' => ['description' => 'Quark-specific: the content mode.', 'type' => 'string', 'title' => '', 'example' => 'summary'],
+ 'industry' => ['description' => 'Quark-specific: the industry filter.', 'type' => 'string', 'title' => '', 'example' => '互联网'],
+ 'timeRange' => ['description' => 'Quark-specific: the time range filter.', 'type' => 'string', 'title' => '', 'example' => '7d'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AiNetworkSearchConfig' => [
+ 'description' => 'object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'needReference' => ['description' => 'Specifies whether to add reference sources in the answer.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ 'referenceFormat' => ['description' => 'The format template for reference content. The template must contain at least one %s placeholder.', 'type' => 'string', 'title' => '', 'example' => '参考来源:\\n%s'],
+ 'referenceLocation' => ['description' => 'The reference location.', 'type' => 'string', 'title' => '', 'example' => 'head'],
+ 'defaultLang' => ['description' => 'The default search language code.', 'type' => 'string', 'title' => '', 'example' => 'zh-CN'],
+ 'defaultEnable' => ['description' => 'Specifies whether the plug-in feature is enabled by default.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ 'searchFrom' => [
+ 'description' => 'The list of search engines (multi-engine configuration).',
+ 'type' => 'array',
+ 'items' => ['description' => 'The list of search engines.', 'title' => '', 'example' => '', '$ref' => '#/components/schemas/AiNetworkConfigSearchEngine'],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'searchEngineConfig' => ['description' => 'The search engine configuration.', 'title' => '', 'example' => '', '$ref' => '#/components/schemas/AiNetworkConfigSearchEngine'],
+ 'searchRewrite' => [
+ 'description' => 'The search term rewriting configuration.',
'type' => 'object',
'properties' => [
- 'workspaceId' => [
- 'title' => '工作空间ID',
- 'description' => 'Workspace identifier.',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'plw-d5g7qsem1hkmih54g210',
- 'backendName' => 'workspaceId',
+ 'enable' => ['description' => 'Specifies whether to enable search query rewriting.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ 'serviceId' => ['description' => 'The ID of the rewriting service.', 'type' => 'string', 'title' => '', 'example' => 'svc-xxx'],
+ 'modelName' => ['description' => 'The name of the model used for rewriting.', 'type' => 'string', 'title' => '', 'example' => 'qwen-max'],
+ 'timeoutMillisecond' => ['description' => 'The timeout period for the rewriting request, in milliseconds.', 'type' => 'integer', 'title' => '', 'example' => '5000', 'format' => 'int32'],
+ 'maxCount' => ['description' => 'The maximum number of search queries after rewriting.', 'type' => 'integer', 'title' => '', 'example' => '3', 'format' => 'int32'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'pluginStatus' => ['description' => 'The plug-in running status.', 'title' => '', 'example' => '', '$ref' => '#/components/schemas/AiPluginStatus'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AiPluginStatus' => [
+ 'description' => 'The object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'serviceHealthy' => ['description' => 'Indicates whether the backend service that the plug-in depends on is healthy.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ 'pluginId' => ['description' => 'The plug-in instance ID.', 'type' => 'string', 'title' => '', 'example' => 'pi-xxx'],
+ 'errorLogs' => [
+ 'description' => 'The list of plug-in runtime error logs. Each item is a map[string]any key-value pair.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'additionalProperties' => ['type' => 'any', 'description' => '', 'example' => '[{"timestamp":"2026-06-29T10:00:00Z","message":"redis connection timeout"}]', 'title' => ''],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'additionalProperties' => ['description' => '', 'type' => 'string', 'title' => '', 'example' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AiPolicyRedisConfig' => [
+ 'description' => 'The object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'host' => ['description' => 'The Redis host address.', 'type' => 'string', 'title' => '', 'example' => 'r-xxx.redis.rds.aliyuncs.com'],
+ 'port' => ['description' => 'The Redis port.', 'type' => 'integer', 'title' => '', 'example' => '6379', 'format' => 'int32'],
+ 'username' => ['description' => 'The Redis username.', 'type' => 'string', 'title' => '', 'example' => 'user'],
+ 'password' => ['description' => 'The Redis password.', 'type' => 'string', 'title' => '', 'example' => 'pass'],
+ 'timeout' => ['description' => 'The timeout period, in milliseconds.', 'type' => 'integer', 'title' => '', 'example' => '5000', 'format' => 'int32'],
+ 'databaseNumber' => ['description' => 'The Redis database number.', 'type' => 'integer', 'title' => '', 'example' => '0', 'format' => 'int32'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AiSecurityGuardConfig' => [
+ 'description' => 'object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'serviceAddress' => ['description' => 'The security guardrail service address (green-cip endpoint). Use the VPC internal address when the gateway and security guardrail are in the same region.', 'type' => 'string', 'title' => '', 'example' => 'https://green-cip-vpc.cn-shanghai.aliyuncs.com'],
+ 'checkRequest' => ['description' => 'Specifies whether to check request content.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ 'checkResponse' => ['description' => 'Specifies whether to check response content.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ 'checkRequestImage' => ['description' => 'Specifies whether to check request images.', 'type' => 'boolean', 'title' => '', 'example' => 'false'],
+ 'checkResponseImage' => ['description' => 'Specifies whether to check response images.', 'type' => 'boolean', 'title' => '', 'example' => 'false'],
+ 'requestCheckService' => ['description' => 'The ServiceCode of the request text detection service (system-injected default value).', 'type' => 'string', 'title' => '', 'example' => 'query_security_check'],
+ 'responseCheckService' => ['description' => 'The ServiceCode of the response text detection service (system-injected default value).', 'type' => 'string', 'title' => '', 'example' => 'response_security_check'],
+ 'requestImageCheckService' => ['description' => 'The ServiceCode of the request image detection service (system-injected default value).', 'type' => 'string', 'title' => '', 'example' => 'img_query_guard'],
+ 'responseImageCheckService' => ['description' => 'The ServiceCode of the response image detection service (system-injected default value).', 'type' => 'string', 'title' => '', 'example' => 'img_response_guard'],
+ 'riskAlertLevel' => ['description' => 'The global risk alert level.', 'type' => 'string', 'title' => '', 'example' => 'high'],
+ 'bufferLimit' => ['description' => 'The response buffer size in KB. Default value: 1000. Valid values: 1 to 1500.', 'type' => 'integer', 'title' => '', 'example' => '1000', 'format' => 'int32'],
+ 'pluginStatus' => ['description' => 'The plugin running status.', 'title' => '', 'example' => '', '$ref' => '#/components/schemas/AiPluginStatus'],
+ 'consumerRiskLevel' => [
+ 'description' => 'The consumer-level risk level configuration.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The consumer-level risk level configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The consumer name.', 'type' => 'string', 'title' => '', 'example' => 'consumer-a'],
+ 'matchType' => ['description' => 'The consumer matching method.', 'type' => 'string', 'title' => '', 'example' => 'exact'],
+ 'type' => ['description' => 'The risk dimension type.', 'type' => 'string', 'title' => '', 'example' => 'ContentModeration'],
+ 'level' => ['description' => 'The risk level.', 'type' => 'string', 'title' => '', 'example' => 'high'],
],
- 'serviceId' => [
- 'title' => '服务ID',
- 'description' => 'Service identifier.',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'svc-d33onfmm1hkn5duhuqjg',
- 'backendName' => 'serviceId',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'consumerRequestCheckService' => [
+ 'description' => 'The consumer-level request detection service configuration.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The consumer-level request check service configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The consumer name.', 'type' => 'string', 'title' => '', 'example' => 'consumer-a'],
+ 'requestCheckService' => ['description' => 'The check service.', 'type' => 'string', 'title' => '', 'example' => 'query_security_check'],
+ 'requestImageCheckService' => ['description' => 'The image check service.', 'type' => 'string', 'title' => '', 'example' => 'img_query_guard'],
+ 'matchType' => ['description' => 'The consumer matching method.', 'type' => 'string', 'title' => '', 'example' => 'exact'],
+ 'modalityType' => ['description' => 'The modality type.', 'type' => 'string', 'title' => '', 'example' => 'Text'],
],
- 'serviceName' => [
- 'title' => '服务名称',
- 'description' => 'Name of the service.',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'service-hello',
- 'backendName' => 'serviceName',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'consumerResponseCheckService' => [
+ 'description' => 'The consumer-level response detection service configuration.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The consumer-level response check service configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The consumer name.', 'type' => 'string', 'title' => '', 'example' => 'consumer-a'."\n"],
+ 'responseCheckService' => ['description' => 'The check service.', 'type' => 'string', 'title' => '', 'example' => 'query_security_check'],
+ 'responseImageCheckService' => ['description' => 'The image check service.', 'type' => 'string', 'title' => '', 'example' => 'img_query_guard'."\n"],
+ 'matchType' => ['description' => 'The consumer matching method.', 'type' => 'string', 'title' => '', 'example' => 'exact'],
+ 'modalityType' => ['description' => 'The modality type.', 'type' => 'string', 'title' => '', 'example' => 'Text'],
],
- 'endpointType' => [
- 'title' => '连接类型:私网(vpc)/公网(public)',
- 'description' => 'Type of endpoint.',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '"public","private"',
- 'backendName' => 'endpointType',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'riskConfig' => [
+ 'description' => 'The risk dimension configuration list (system-injected, normalized from ConsumerRiskLevel).',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The risk dimension configuration list. This is system-injected and generated by normalizing ConsumerRiskLevel.',
+ 'type' => 'object',
+ 'properties' => [
+ 'type' => ['description' => 'The risk dimension type.', 'type' => 'string', 'title' => '', 'example' => 'ContentModeration'],
+ 'level' => ['description' => 'The risk level.', 'type' => 'string', 'title' => '', 'example' => 'high'],
+ 'consumerRules' => [
+ 'description' => 'The consumer-level matching rules.',
+ 'type' => 'object',
+ 'properties' => [
+ 'pattern' => ['description' => 'The consumer matching pattern value.', 'type' => 'string', 'title' => '', 'example' => 'consumer-a'],
+ 'matchType' => ['description' => 'The matching method.', 'type' => 'string', 'title' => '', 'example' => 'Exact'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AiServiceConfig' => [
+ 'title' => '',
+ 'description' => 'The struct description.',
+ 'type' => 'object',
+ 'properties' => [
+ 'provider' => ['description' => 'The Large Language Model (LLM) provider.', 'type' => 'string', 'title' => '', 'example' => 'qwen'."\n"
+ .'moonshot'."\n"
+ .'baichuan'."\n"
+ .'yi'."\n"
+ .'zhipuai'."\n"
+ .'360ai'."\n"
+ .'hunyuan'."\n"
+ .'stepfun'."\n"
+ .'spark'."\n"
+ .'openai'."\n"
+ .'claude'."\n"
+ .'anthropic'."\n"
+ .'doubao'."\n"
+ .'minimax'."\n"
+ .'gemini'."\n"
+ .'azure'."\n"
+ .'deepseek'."\n"
+ .'custom'."\n"
+ .'pai-eas'."\n"
+ .'bedrock'."\n"
+ .'vertex'],
+ 'address' => ['description' => 'The service endpoint.', 'type' => 'string', 'title' => '', 'example' => 'https://dashscope.aliyun.com'],
+ 'enableHealthCheck' => ['description' => 'Specifies whether to enable health check.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ 'paiEASServiceConfig' => [
+ 'title' => '',
+ 'description' => 'PAI-EAS service configuration settings.',
+ 'type' => 'object',
+ 'properties' => [
+ 'workspaceId' => ['description' => 'Workspace identifier.', 'type' => 'string', 'title' => '', 'example' => 'cb89d4de30042df4459442589664e00d'],
+ 'serviceId' => ['description' => 'Service identifier.', 'type' => 'string', 'title' => '', 'example' => 'svc-cvaeb0um1hkqp79k72v0'],
+ 'serviceName' => ['description' => 'Name of the service.', 'type' => 'string', 'title' => '', 'example' => 'auto-ai-service'],
+ 'endpointType' => ['description' => 'Type of endpoint.', 'type' => 'string', 'title' => '', 'example' => '"public","private"'],
],
- 'backendName' => 'paiEASServiceConfig',
+ 'example' => '',
],
'bedrockServiceConfig' => [
- 'title' => 'Bedrock服务专属配置',
+ 'title' => '',
'description' => 'Bedrock service configuration.',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'awsRegion' => [
- 'title' => 'AWS-Region',
- 'description' => 'AWS-Region',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'us-west-2',
- 'backendName' => 'awsRegion',
- ],
- 'awsAccessKey' => [
- 'title' => 'AWS-AccessKey',
- 'description' => 'AWS-AccessKey',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'AKIAIOSFODNN7EXAMPLE',
- 'backendName' => 'awsAccessKey',
- ],
- 'awsSecretKey' => [
- 'title' => 'AWS-SecretKey',
- 'description' => 'AWS-SecretKey',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY',
- 'backendName' => 'awsSecretKey',
- ],
+ 'awsRegion' => ['description' => 'AWS-Region', 'type' => 'string', 'title' => '', 'example' => 'us-east-1'],
+ 'awsAccessKey' => ['description' => 'AWS-AccessKey', 'type' => 'string', 'title' => '', 'example' => 'AKIAIOSFODNN7EXAMPLE'],
+ 'awsSecretKey' => ['description' => 'AWS-SecretKey', 'type' => 'string', 'title' => '', 'example' => 'wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY'],
],
- 'backendName' => 'bedrockServiceConfig',
- ],
- 'ApiKeyGenerateMode' => [
- 'description' => 'API key generation mode.',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '-',
- 'backendName' => 'apiKeyGenerateMode',
- ],
- 'defaultModelName' => [
- 'description' => 'Default model name.',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'qwen-turbo',
- 'backendName' => 'defaultModelName',
- ],
- 'enableOutlierDetection' => [
- 'description' => 'Enable outlier detection.',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'false',
- 'backendName' => 'enableOutlierDetection',
+ 'example' => '',
],
+ 'ApiKeyGenerateMode' => ['description' => 'API key generation mode.', 'type' => 'string', 'example' => 'Custom', 'title' => ''],
+ 'defaultModelName' => ['description' => 'Default model name.', 'type' => 'string', 'example' => 'gpt-4', 'title' => ''],
+ 'enableOutlierDetection' => ['description' => 'Enable outlier detection.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'vertexServiceConfig' => [
'description' => 'Vertex AI service configuration.',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'vertexAuthKey' => [
- 'description' => 'Vertex AI authentication key.',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '{\\"type\\":\\"service_account\\",\\"project_id\\":\\"xxx\\",\\"private_key\\":\\"-----BEGIN PRIVATE KEY-----\\",\\"client_email\\":\\"xxx@xxx.iam.gserviceaccount.com\\",\\"token_uri\\":\\"https://oauth2.googleapis.com/token\\"}',
- 'backendName' => 'vertexAuthKey',
- ],
- 'vertexRegion' => [
- 'description' => 'Vertex AI region.',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'us-central1',
- 'backendName' => 'vertexRegion',
- ],
- 'vertexProjectId' => [
- 'description' => 'Vertex AI project ID.',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'my-gcp-project-123',
- 'backendName' => 'vertexProjectId',
- ],
- 'vertexAuthServiceName' => [
- 'description' => 'Vertex AI auth service name.',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'custom-vertex-auth',
- 'backendName' => 'vertexAuthServiceName',
- ],
+ 'vertexAuthKey' => ['description' => 'Vertex AI authentication key.', 'type' => 'string', 'example' => '{\\"type\\":\\"service_account\\",\\"project_id\\":\\"my-project\\",\\"private_key\\":\\"-----BEGIN PRIVATE KEY-----...\\",\\"client_email\\":\\"xxx@xxx.iam.gserviceaccount.com\\",\\"token_uri\\":\\"https://oauth2.googleapis.com/token\\"}', 'title' => ''],
+ 'vertexRegion' => ['description' => 'Vertex AI region.', 'type' => 'string', 'example' => 'us-central1', 'title' => ''],
+ 'vertexProjectId' => ['description' => 'Vertex AI project ID.', 'type' => 'string', 'example' => 'my-project', 'title' => ''],
+ 'vertexAuthServiceName' => ['description' => 'Vertex AI auth service name.', 'type' => 'string', 'example' => 'google-oauth2', 'title' => ''],
'geminiSafetySetting' => [
'description' => 'Gemini safety settings.',
- 'visibility' => 'Public',
'type' => 'object',
- 'additionalProperties' => [
- 'description' => 'string',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'category":"HARM_CATEGORY_SEXUALLY_EXPLICIT',
- ],
- 'backendName' => 'geminiSafetySetting',
- ],
- 'vertexTokenRefreshAhead' => [
- 'description' => 'Vertex token refresh lead time.',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '300',
- 'backendName' => 'vertexTokenRefreshAhead',
+ 'additionalProperties' => ['description' => 'string', 'type' => 'string', 'example' => '{"BLOCK_NONE": "true"}', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
+ 'vertexTokenRefreshAhead' => ['description' => 'Vertex token refresh lead time.', 'type' => 'integer', 'format' => 'int32', 'example' => '300', 'title' => ''],
],
- 'backendName' => 'vertexServiceConfig',
+ 'title' => '',
+ 'example' => '',
],
'protocols' => [
'title' => '',
- 'description' => 'The LLM protocols.'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The LLM protocols.',
'type' => 'array',
- 'items' => [
- 'description' => 'The protocol.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'OpenAI/v1',
- 'extendType' => 'true',
- ],
- 'backendName' => 'protocols',
+ 'items' => ['description' => 'The protocol.', 'type' => 'string', 'example' => 'OpenAI/v1', 'title' => ''],
+ 'example' => '',
],
'apiKeys' => [
'title' => '',
- 'description' => 'The API keys.'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The API keys.',
'type' => 'array',
- 'items' => [
- 'description' => 'apiKey'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'sk-xxx',
- 'extendType' => 'true',
- ],
- 'backendName' => 'apiKeys',
+ 'items' => ['description' => 'apiKey', 'type' => 'string', 'example' => 'sk-xxx', 'title' => ''],
+ 'example' => '',
],
'compatibleProtocols' => [
'description' => 'Supported compatible protocols.',
- 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => ['description' => 'string', 'type' => 'string', 'example' => '"openai", "anthropic"', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'example' => '',
+ ],
+ 'AiStatisticsConfig' => [
+ 'description' => 'The object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'logRequestContent' => ['description' => 'Specifies whether to log request content (controls whether question-related attributes are generated).', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ 'logResponseContent' => ['description' => 'Specifies whether to log response content (controls whether answer-related attributes are generated).', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ 'pathFieldConfigs' => [
+ 'description' => 'The list of custom field collection configurations, configured by API path.',
'type' => 'array',
'items' => [
- 'description' => 'string',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '"openai", "anthropic"',
- 'extendType' => 'true',
+ 'description' => 'The custom field.',
+ 'type' => 'object',
+ 'properties' => [
+ 'path' => ['description' => 'The API path.', 'type' => 'string', 'title' => '', 'example' => '/v1/chat/completions'],
+ 'fieldPaths' => [
+ 'description' => 'The field collection configuration.',
+ 'type' => 'object',
+ 'additionalProperties' => ['description' => 'The field collection configuration.', 'title' => '', 'example' => '', '$ref' => '#/components/schemas/AiStatisticsPathField'],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'compatibleProtocols',
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AiStatisticsPathField' => [
+ 'description' => 'object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'fieldKey' => ['title' => '', 'description' => 'The log key.', 'type' => 'string', 'example' => 'question'],
+ 'jsonPath' => ['title' => '', 'description' => 'The corresponding JSON path (GJSON syntax).', 'type' => 'string', 'example' => 'messages.#.content'],
+ 'rule' => ['title' => '', 'description' => 'The rule used for streaming response extraction. Valid values:'."\n"
+ .'- append: appends content'."\n"
+ .'- first: retrieves the first value'."\n"
+ .'- replace: retrieves the last value', 'type' => 'string', 'example' => 'append'],
+ 'name' => ['description' => 'The display name of the field.', 'type' => 'string', 'title' => '', 'example' => '问题内容'],
+ 'description' => ['description' => 'The field description.', 'type' => 'string', 'title' => '', 'example' => '用户输入的问题内容'],
+ 'source' => ['description' => 'The data source.', 'type' => 'string', 'title' => '', 'example' => 'request_body'],
+ 'category' => ['description' => 'The secondary category.', 'type' => 'string', 'title' => '', 'example' => 'conversation'],
+ 'io' => ['description' => 'The request or response direction.', 'type' => 'string', 'title' => '', 'example' => 'request'],
+ 'sensitive' => ['description' => 'Indicates whether the field is sensitive.', 'type' => 'boolean', 'title' => '', 'example' => 'false'],
+ 'recordEnabled' => ['description' => 'Specifies whether collection is enabled.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AiTokenRateLimitConfig' => [
+ 'description' => 'object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'redisConfig' => ['description' => 'The Redis configuration.', 'title' => '', 'example' => '', '$ref' => '#/components/schemas/AiPolicyRedisConfig'],
+ 'pluginStatus' => ['description' => 'The running status of the plugin.', 'title' => '', 'example' => '', '$ref' => '#/components/schemas/AiPluginStatus'],
+ 'rules' => [
+ 'description' => 'The list of throttling rules.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The list of throttling rules.', 'title' => '', 'example' => '', '$ref' => '#/components/schemas/AiTokenRateLimitConfigRule'],
+ 'title' => '',
+ 'example' => '',
],
+ 'globalRules' => [
+ 'description' => 'The list of global throttling rules. Only the LimitByGlobal type is allowed.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The list of global throttling rules. Only the LimitByGlobal type is allowed.', 'title' => '', 'example' => '', '$ref' => '#/components/schemas/AiTokenRateLimitConfigRule'],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'enableGlobalRules' => ['description' => 'Specifies whether to enable global (API-level) throttling rules. Default value: false.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AiTokenRateLimitConfigRule' => [
+ 'description' => 'object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'limitType' => ['description' => 'The throttling type.', 'type' => 'string', 'title' => '', 'example' => 'Consumer'],
+ 'matchKey' => ['description' => 'The match key name.', 'type' => 'string', 'title' => '', 'example' => 'X-API-Key'],
+ 'matchType' => ['description' => 'The matching method.', 'type' => 'string', 'title' => '', 'example' => 'Exact'],
+ 'matchValue' => ['description' => 'The match value.', 'type' => 'string', 'title' => '', 'example' => 'consumer-a'],
+ 'limitMode' => ['description' => 'The throttling mode.', 'type' => 'string', 'title' => '', 'example' => 'TokenPerMinute'],
+ 'limitValue' => ['description' => 'The throttling value.', 'type' => 'integer', 'title' => '', 'example' => '1000', 'format' => 'int32'],
],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'AiToolSelectionConfig' => [
+ 'description' => 'object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'enableConditions' => [
+ 'description' => 'The enable conditions configuration. Controls when the overall feature is triggered.',
+ 'type' => 'object',
+ 'properties' => [
+ 'toolCountThreshold' => ['description' => 'The tool count threshold.', 'type' => 'integer', 'title' => '', 'example' => '10', 'format' => 'int32'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'toolReranking' => [
+ 'description' => 'The tool reranking configuration. Uses a model to rank and filter candidate tools.',
+ 'type' => 'object',
+ 'properties' => [
+ 'modelService' => [
+ 'description' => 'The reranking model service configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'serviceId' => ['description' => 'The model service ID.', 'type' => 'string', 'title' => '', 'example' => 'svc-xxx'."\n"],
+ 'modelName' => ['description' => 'The model name.', 'type' => 'string', 'title' => '', 'example' => 'gte-rerank-v2'],
+ 'timeoutMillisecond' => ['description' => 'The request timeout period, in milliseconds.', 'type' => 'integer', 'title' => '', 'example' => '5000', 'format' => 'int32'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'filteringMethod' => ['description' => 'The filtering method.', 'type' => 'string', 'title' => '', 'example' => 'topN'],
+ 'topKPercent' => ['description' => 'The retention percentage.', 'type' => 'integer', 'title' => '', 'example' => '50', 'format' => 'int32'],
+ 'topNCount' => ['description' => 'The retention count.', 'type' => 'integer', 'title' => '', 'example' => '5', 'format' => 'int32'],
+ 'scoreThreshold' => ['description' => 'The score threshold.', 'type' => 'number', 'title' => '', 'example' => '0.5', 'format' => 'float'],
+ 'fallbackStrategy' => ['description' => 'The fallback strategy upon failure.', 'type' => 'string', 'title' => '', 'example' => 'skip'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'queryRewriting' => [
+ 'description' => 'The query rewrite configuration. Rewrites user queries before tool reranking to improve matching precision.',
+ 'type' => 'object',
+ 'properties' => [
+ 'enabled' => ['description' => 'Specifies whether query rewrite is enabled.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ 'modelService' => [
+ 'description' => 'The rewriting model service configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'serviceId' => ['description' => 'The model service ID.', 'type' => 'string', 'title' => '', 'example' => 'svc-xxx'],
+ 'modelName' => ['description' => 'The model name.', 'type' => 'string', 'title' => '', 'example' => 'gte-rerank-v2'],
+ 'timeoutMillisecond' => ['description' => 'The request timeout period, in milliseconds.', 'type' => 'integer', 'title' => '', 'example' => '5000', 'format' => 'int32'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'promptConfig' => [
+ 'description' => 'The prompt configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'type' => ['description' => 'The prompt type.', 'type' => 'string', 'title' => '', 'example' => 'builtIn'],
+ 'customPrompt' => ['description' => 'The custom prompt content.', 'type' => 'string', 'title' => '', 'example' => '请将以下用户问题改写为...'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'maxOutputTokens' => ['description' => 'The maximum number of output tokens for rewriting.', 'type' => 'integer', 'title' => '', 'example' => '50', 'format' => 'int32'],
+ 'triggerConditions' => [
+ 'description' => 'The trigger condition configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'messageCountThreshold' => ['description' => 'The number of conversation turns after which rewriting is triggered.', 'type' => 'integer', 'title' => '', 'example' => '1', 'format' => 'int32'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'contextSelection' => [
+ 'description' => 'The context selection configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'type' => ['description' => 'The context selection method.', 'type' => 'string', 'title' => '', 'example' => 'allMessages'],
+ 'value' => ['description' => 'The number of retained messages or characters.', 'type' => 'integer', 'title' => '', 'example' => '5', 'format' => 'int32'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'fallbackStrategy' => ['description' => 'The fallback strategy.', 'type' => 'string', 'title' => '', 'example' => 'skip'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'pluginStatus' => ['description' => 'The plug-in running status.', 'title' => '', 'example' => '', '$ref' => '#/components/schemas/AiPluginStatus'],
+ ],
+ 'title' => '',
+ 'example' => '',
],
'AkSkIdentityConfig' => [
'title' => 'A short description of struct',
'description' => 'object',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'type' => [
'title' => 'type',
'description' => 'Identity authentication type',
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'Apikey' => '',
- 'Jwt' => '',
- 'AkSk' => '',
- ],
+ 'enumValueTitles' => ['Apikey' => 'APIKEY鉴权方式', 'Jwt' => 'JWT鉴权方式', 'AkSk' => 'AKSK鉴权方式'],
'example' => 'Jwt',
- 'backendName' => 'type',
],
'generateMode' => [
'title' => 'generateMode',
'description' => 'Generation mode',
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'Custom' => '',
- 'System' => '',
- ],
+ 'enumValueTitles' => ['Custom' => '自定义', 'System' => '系统'],
'example' => 'System',
- 'backendName' => 'generateMode',
- ],
- 'ak' => [
- 'title' => 'ak',
- 'description' => 'Access Key',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'xxxx',
- 'backendName' => 'ak',
- ],
- 'sk' => [
- 'title' => 'sk',
- 'description' => 'Secret Key',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'xxxx',
- 'backendName' => 'sk',
],
+ 'ak' => ['title' => 'ak', 'description' => 'Access Key', 'type' => 'string', 'example' => 'xxxx'],
+ 'sk' => ['title' => 'sk', 'description' => 'Secret Key', 'type' => 'string', 'example' => 'xxxx'],
],
+ 'example' => '',
],
'ApiKeyIdentityConfig' => [
'title' => 'A short description of struct',
'description' => 'The API key authentication configuration.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'type' => [
- 'title' => 'type',
- 'description' => 'The type.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Apikey',
- 'backendName' => 'type',
- ],
+ 'type' => ['title' => 'type', 'description' => 'The type.'."\n", 'type' => 'string', 'example' => 'Apikey'],
'apikeySource' => [
'title' => 'apikey',
'description' => 'The source configuration of the API key.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'source' => [
@@ -677,1540 +765,913 @@
.'* Header'."\n"
.'* QueryString'."\n"
.'* Default'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'Header' => '',
- 'QueryString' => '',
- 'Default' => '',
- ],
+ 'enumValueTitles' => ['Header' => 'Header参数', 'QueryString' => 'Query参数', 'Default' => '默认'],
'example' => 'Default',
- 'backendName' => 'source',
- ],
- 'value' => [
- 'title' => 'value',
- 'description' => 'The value of the API key.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'xxxx',
- 'backendName' => 'value',
],
+ 'value' => ['title' => 'value', 'description' => 'The value of the API key.'."\n", 'type' => 'string', 'example' => 'xxxx'],
],
- 'backendName' => 'apikeySource',
+ 'example' => '',
],
'credentials' => [
'title' => 'credentials',
'description' => 'The list of certificates.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'The certificate.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'generateMode' => [
- 'title' => 'generateMode',
- 'description' => 'The production mode.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'System',
- 'backendName' => 'generateMode',
- ],
- 'apikey' => [
- 'title' => 'apikey',
- 'description' => 'The API key configuration.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'xxxxx',
- 'backendName' => 'apikey',
- ],
+ 'generateMode' => ['title' => 'generateMode', 'description' => 'The production mode.'."\n", 'type' => 'string', 'example' => 'System'],
+ 'apikey' => ['title' => 'apikey', 'description' => 'The API key configuration.'."\n", 'type' => 'string', 'example' => 'xxxxx'],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'credentials',
+ 'example' => '',
],
],
+ 'example' => '',
],
'ApiRouteConflictInfo' => [
'title' => 'A short description of struct',
'description' => 'The conflict definition.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'domainInfo' => [
- 'title' => '',
+ 'title' => '冲突的域名信息',
'description' => 'The conflicting routes.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'domainId' => [
- 'title' => '',
- 'description' => 'The domain name ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'd-cqookcllhtgvof7e***',
- 'backendName' => 'domainId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The domain name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'httpbin',
- 'backendName' => 'name',
- ],
+ 'domainId' => ['title' => '域名ID', 'description' => 'The domain name ID.'."\n", 'type' => 'string', 'example' => 'd-cqookcllhtgvof7e***'],
+ 'name' => ['title' => '域名名称', 'description' => 'The domain name.'."\n", 'type' => 'string', 'example' => 'httpbin'],
],
- 'backendName' => 'domainInfo',
+ 'example' => '',
],
'conflicts' => [
- 'title' => '',
+ 'title' => '冲突',
'description' => 'The conflicts.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'The conflict.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'resourceType' => [
- 'title' => '',
+ 'title' => '冲突资源类型. string, 取值范围: RestApi| HttpApiRoute',
'description' => 'The type of the conflicting resource.'."\n"
."\n"
.'Valid values:'."\n"
."\n"
.'* RestApi'."\n"
.'* HttpApiRoute'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'RestApi' => 'Rest API',
- 'HttpApiRoute' => '',
- ],
+ 'enumValueTitles' => ['RestApi' => 'Rest API', 'HttpApiRoute' => '路由'],
'example' => 'HttpApiRoute',
- 'backendName' => 'resourceType',
- ],
- 'resourceId' => [
- 'title' => '',
- 'description' => 'The conflicting resource ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'api-crdclqllhtggm***',
- 'backendName' => 'resourceId',
- ],
- 'resourceName' => [
- 'title' => '',
- 'description' => 'The conflicting resource name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'item-stock',
- 'backendName' => 'resourceName',
],
+ 'resourceId' => ['title' => '冲突资源ID, API ID', 'description' => 'The conflicting resource ID.'."\n", 'type' => 'string', 'example' => 'api-crdclqllhtggm***'],
+ 'resourceName' => ['title' => '冲突资源名称, API名称', 'description' => 'The conflicting resource name.'."\n", 'type' => 'string', 'example' => 'item-stock'],
'environmentInfo' => [
- 'title' => '',
+ 'title' => '对于API来讲, 是在具体环境里存在冲突. 若冲突对象为路由, 则忽略',
'description' => 'For APIs, conflicts exist in the specific environment. If the conflict object is a route, ignore.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'environmentId' => [
- 'title' => '',
- 'description' => 'The environment ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'env-cquqsollhtgidd***',
- 'backendName' => 'environmentId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The environment name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'itemcenter-dev',
- 'backendName' => 'name',
- ],
+ 'environmentId' => ['title' => '环境ID', 'description' => 'The environment ID.'."\n", 'type' => 'string', 'example' => 'env-cquqsollhtgidd***'],
+ 'name' => ['title' => '环境名', 'description' => 'The environment name.'."\n", 'type' => 'string', 'example' => 'itemcenter-dev'],
],
- 'backendName' => 'environmentInfo',
+ 'example' => '',
],
'details' => [
- 'title' => '',
+ 'title' => '冲突详细信息',
'description' => 'The details about the conflicts.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'The details about the conflict.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'level' => [
- 'title' => '',
+ 'title' => '冲突等级, 类型: string.取值: [Critical, Warning, Informational]',
'description' => 'The conflict level. Valid values: Critical, Warning, and Informational.'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'Warning' => 'Warning',
- 'Critical' => 'Critical',
- 'Informational' => 'Informational',
- ],
+ 'enumValueTitles' => ['Warning' => 'Warning', 'Critical' => 'Critical', 'Informational' => 'Informational'],
'example' => 'Critical',
- 'backendName' => 'level',
],
'conflictingMatch' => [
- 'title' => '',
+ 'title' => '冲突目标的匹配规则信息',
'description' => 'The matching rule information of the conflicting target.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'operationInfo' => [
- 'title' => '',
+ 'title' => '冲突目标为Api时候, 表示对应的接口信息',
'description' => 'The corresponding operation information if the conflicting target is an API.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'operationId' => [
- 'title' => '',
- 'description' => 'The operation ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'op-cq35jadlhtgrv07***',
- 'backendName' => 'operationId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The operation name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'GetItem',
- 'backendName' => 'name',
- ],
+ 'operationId' => ['title' => '接口ID', 'description' => 'The operation ID.'."\n", 'type' => 'string', 'example' => 'op-cq35jadlhtgrv07***'],
+ 'name' => ['title' => '接口名称', 'description' => 'The operation name.'."\n", 'type' => 'string', 'example' => 'GetItem'],
],
- 'backendName' => 'operationInfo',
- ],
- 'match' => [
- 'title' => '',
- 'description' => 'The matching rule.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'match',
- '$ref' => '#/components/schemas/HttpRouteMatch',
+ 'example' => '',
],
+ 'match' => ['title' => '匹配规则', 'description' => 'The matching rule.'."\n", '$ref' => '#/components/schemas/HttpRouteMatch', 'example' => ''],
],
- 'backendName' => 'conflictingMatch',
+ 'example' => '',
],
'detectedMatch' => [
- 'title' => '',
+ 'title' => '被检测目标的匹配规则信息',
'description' => 'The matching rule information of the object being detected.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'operationInfo' => [
- 'title' => '',
+ 'title' => '被检测目标为API的, 需要返回冲突的接口信息',
'description' => 'If the object is an API, the conflicting operation information needs to be returned.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'operationId' => [
- 'title' => '',
- 'description' => 'The operation ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'op-cqf17dllhtgng1m**',
- 'backendName' => 'operationId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The operation name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'GetItemV2',
- 'backendName' => 'name',
- ],
+ 'operationId' => ['title' => '接口ID', 'description' => 'The operation ID.'."\n", 'type' => 'string', 'example' => 'op-cqf17dllhtgng1m**'],
+ 'name' => ['title' => '接口名', 'description' => 'The operation name.'."\n", 'type' => 'string', 'example' => 'GetItemV2'],
],
- 'backendName' => 'operationInfo',
- ],
- 'match' => [
- 'title' => '',
- 'description' => 'The matching rule information of the object being detected.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'match',
- '$ref' => '#/components/schemas/HttpRouteMatch',
+ 'example' => '',
],
+ 'match' => ['title' => '被检测目标的匹配规则信息', 'description' => 'The matching rule information of the object being detected.'."\n", '$ref' => '#/components/schemas/HttpRouteMatch', 'example' => ''],
],
- 'backendName' => 'detectedMatch',
+ 'example' => '',
],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'details',
+ 'example' => '',
],
'routeInfo' => [
- 'title' => '',
+ 'title' => '路由信息',
'description' => 'The route information.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'routeId' => [
- 'title' => '',
- 'description' => 'The route ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'hr-cr82undlhtgrlej***',
- 'backendName' => 'routeId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The route name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'itemcenter-route',
- 'backendName' => 'name',
- ],
+ 'routeId' => ['title' => '路由ID', 'description' => 'The route ID.'."\n", 'type' => 'string', 'example' => 'hr-cr82undlhtgrlej***'],
+ 'name' => ['title' => '路由名称', 'description' => 'The route name.'."\n", 'type' => 'string', 'example' => 'itemcenter-route'],
],
- 'backendName' => 'routeInfo',
+ 'example' => '',
],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'conflicts',
+ 'example' => '',
],
],
+ 'example' => '',
],
'Attachment' => [
- 'title' => 'A short description of struct',
- 'description' => 'The mount information.'."\n",
- 'visibility' => 'Public',
+ 'title' => '',
+ 'description' => 'The mount information.',
'type' => 'object',
'properties' => [
- 'policyAttachmentId' => [
- 'title' => 'policyAttachmentId',
- 'description' => 'The mount ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'pr-cq7l5s5lhtgi6qasrdc0',
- 'backendName' => 'policyAttachmentId',
- ],
+ 'policyAttachmentId' => ['title' => '', 'description' => 'The policy mount ID.', 'type' => 'string', 'example' => 'pr-cq7l5s5lhtgi6qasrdc0'],
+ 'attachResourceId' => ['title' => '', 'description' => 'attachResourceId', 'type' => 'string', 'example' => 'gw-xxx'],
+ 'attachResourceType' => ['title' => '', 'description' => 'The type of mount point supported by the policy. Valid values:'."\n"
+ ."\n"
+ .'- HttpApi: HttpApi.'."\n"
+ .'- Operation: Operation of HttpApi.'."\n"
+ .'- GatewayRoute: gateway route.'."\n"
+ .'- GatewayService: gateway service.'."\n"
+ .'- GatewayServicePort: gateway service port.'."\n"
+ .'- Domain: gateway domain name.'."\n"
+ .'- Gateway: gateway.', 'type' => 'string', 'example' => 'HttpApi'],
+ 'environmentId' => ['title' => '', 'description' => 'The environment to which the mounted resource belongs. If the environment ID is *, the mounted resource of the policy is not associated with any environment.', 'type' => 'string', 'example' => 'env-cq7l5s5lhtgi6qasrdc0'],
+ 'gatewayId' => ['title' => '', 'description' => 'The gateway to which the mounted resource belongs.', 'type' => 'string', 'example' => 'gw-cpr4f9dlhtgq5ksfgmb0'],
'attachResourceIds' => [
- 'title' => 'attachResourceIds',
- 'description' => 'The resource IDs.'."\n",
- 'visibility' => 'Public',
+ 'title' => '',
+ 'description' => 'The list of mounted resource IDs.',
'type' => 'array',
- 'items' => [
- 'description' => 'The mount point ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'api-cq7l5s5lhtgi6qasrdc0',
- 'extendType' => 'true',
- ],
- 'backendName' => 'attachResourceIds',
- ],
- 'attachResourceType' => [
- 'title' => 'attachResourceType',
- 'description' => 'The supported mount point type. Valid values:'."\n"
- ."\n"
- .'* HttpApi: an HTTP API'."\n"
- .'* Operation: an operation in an HTTP API'."\n"
- .'* GatewayRoute: a gateway route'."\n"
- .'* GatewayService: a gateway service'."\n"
- .'* GatewayServicePort: a gateway service port'."\n"
- .'* Domain: a gateway domain name'."\n"
- .'* Gateway: a gateway instance'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'HttpApi',
- 'backendName' => 'attachResourceType',
- ],
- 'environmentId' => [
- 'title' => 'environmentId',
- 'description' => 'The environment to which the mounted resource belongs. If an asterisk (\\*) is returned as the environment ID, the mounted resource is not related to the environment.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'env-cq7l5s5lhtgi6qasrdc0',
- 'backendName' => 'environmentId',
+ 'items' => ['description' => 'The mount point ID.', 'type' => 'string', 'example' => 'api-cq7l5s5lhtgi6qasrdc0', 'title' => ''],
+ 'example' => '',
],
- 'gatewayId' => [
- 'title' => 'gatewayId',
- 'description' => 'The instance to which the mounted resource belongs.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gw-cpr4f9dlhtgq5ksfgmb0',
- 'backendName' => 'gatewayId',
+ 'attachResourceParentIds' => [
+ 'title' => '',
+ 'description' => 'The list of parent IDs of the mounted resource.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The parent ID.', 'type' => 'string', 'title' => '', 'example' => '["api-xxx"]'],
+ 'example' => '',
],
],
+ 'example' => '',
],
'AuthConfig' => [
- 'title' => 'A short description of struct',
+ 'title' => '',
'description' => 'The authentication configurations.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'authType' => [
- 'title' => '',
- 'description' => 'The authentication type.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Jwt',
- 'backendName' => 'authType',
- ],
- 'authMode' => [
- 'title' => '',
- 'description' => 'The authentication mode.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'NoAuth',
- 'backendName' => 'authMode',
- ],
+ 'authType' => ['title' => '', 'description' => 'The authentication type.'."\n", 'type' => 'string', 'example' => 'Jwt'],
+ 'authMode' => ['title' => '', 'description' => 'The authentication mode.'."\n", 'type' => 'string', 'example' => 'NoAuth'],
],
+ 'example' => '',
],
'AuthorizationResourceInfo' => [
'title' => 'A short description of struct',
- 'description' => '',
- 'visibility' => 'Public',
+ 'description' => 'Authorization resource information ',
'type' => 'object',
'properties' => [
- 'resourceId' => [
- 'title' => 'resourceId',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'hr-d0mnu16m1hkgujnkgrcg',
- 'backendName' => 'resourceId',
- ],
- 'parentResourceId' => [
- 'title' => 'parentResourceId',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'api-cujbijem1hkr4voden8g',
- 'backendName' => 'parentResourceId',
- ],
- 'environmentId' => [
- 'title' => 'environmentId',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'env-cq7l5s5lhtgi6qasrdc0',
- 'backendName' => 'environmentId',
- ],
+ 'resourceId' => ['title' => 'resourceId', 'description' => 'Resource ID. ', 'type' => 'string', 'example' => 'hr-d0mnu16m1hkgujnkgrcg'],
+ 'parentResourceId' => ['title' => 'parentResourceId', 'description' => 'Parent resource ID. ', 'type' => 'string', 'example' => 'api-cujbijem1hkr4voden8g'],
+ 'environmentId' => ['title' => 'environmentId', 'description' => 'Environment ID. ', 'type' => 'string', 'example' => 'env-cq7l5s5lhtgi6qasrdc0'],
],
+ 'example' => '',
],
'Backend' => [
'title' => '',
- 'description' => 'The backend services.'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The backend service.',
'type' => 'object',
'properties' => [
'scene' => [
'title' => '',
- 'description' => 'The backend service scenario. Valid values: Single, MultiServiceByRatio, MultiServiceByTag, Mock, and Redirect.'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The backend service scenario. Valid values: Single, MultiServiceByRatio, MultiServiceByTag, Mock, Redirect.',
+ 'enumValueTitles' => ['Single' => 'Single backend service.', 'MultiServiceByRatio' => 'Traffic percentage-based routing across multiple services.', 'Redirect' => 'Redirect.', 'MultiServiceByTag' => 'Tag-based routing across multiple services.', 'Mock' => 'Mock backend that returns simulated data.'],
'type' => 'string',
'example' => 'Single',
- 'backendName' => 'scene',
],
'services' => [
'title' => '',
- 'description' => 'The backend services.'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The backend service.',
'type' => 'array',
'items' => [
- 'visibility' => 'Public',
+ 'description' => 'The backend service.',
'type' => 'object',
'properties' => [
- 'serviceId' => [
- 'title' => '',
- 'description' => 'The service ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'service-cq2bmmdlhtgj***',
- 'backendName' => 'serviceId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The service name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'item-service',
- 'backendName' => 'name',
- ],
+ 'serviceId' => ['title' => '', 'description' => 'The service ID.', 'type' => 'string', 'example' => 'service-cq2bmmdlhtgj***'],
+ 'name' => ['title' => '', 'description' => 'The service name.', 'type' => 'string', 'example' => 'item-service'],
'protocol' => [
'title' => '',
- 'description' => 'The service protocol. Valid values: HTTP, TCP, and DUBBO.'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The service protocol. Valid values: [HTTP, TCP, DUBBO].',
+ 'enumValueTitles' => ['TCP' => 'TCP protocol.', 'HTTP' => 'HTTP protocol.', 'DUBBO' => 'Dubbo protocol.'],
'type' => 'string',
'example' => 'HTTP',
- 'backendName' => 'protocol',
- ],
- 'port' => [
- 'title' => '',
- 'description' => 'The service port. If you want to use a dynamic port, do not pass this parameter.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => 'port',
- 'backendName' => 'port',
- ],
- 'weight' => [
- 'title' => '',
- 'description' => 'The percentage value of traffic.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '49',
- 'backendName' => 'weight',
- ],
- 'version' => [
- 'title' => '',
- 'description' => 'The service version.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'v1',
- 'backendName' => 'version',
],
+ 'port' => ['title' => '', 'description' => 'The service port. Do not specify this parameter for dynamic ports.', 'type' => 'integer', 'format' => 'int32', 'example' => 'port'],
+ 'weight' => ['title' => '', 'description' => 'The traffic percentage value.', 'type' => 'integer', 'format' => 'int32', 'example' => '49'],
+ 'version' => ['title' => '', 'description' => 'The service version.', 'type' => 'string', 'example' => 'v1'],
],
- 'extendType' => 'true',
- 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'services',
- 'itemName' => 'service',
+ 'example' => '',
],
],
+ 'example' => '',
+ ],
+ 'ConsumerGroupInfo' => [
+ 'title' => '',
+ 'description' => 'The consumer group information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'consumerGroupId' => ['title' => '', 'type' => 'string', 'description' => '', 'example' => 'csg-8c13d2b4f8a1'],
+ 'name' => ['title' => '', 'type' => 'string', 'description' => '', 'example' => 'api-consumer-group'],
+ 'gatewayType' => ['title' => '', 'type' => 'string', 'description' => '', 'example' => 'API'],
+ ],
+ 'example' => '',
],
'ConsumerInfo' => [
'title' => 'A short description of struct',
'description' => 'The consumer information.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'consumerId' => [
- 'title' => 'consumerId',
- 'description' => 'consumerId'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'cs-ctd4l1um1hkph7ki1k80',
- 'backendName' => 'consumerId',
- ],
- 'name' => [
- 'title' => 'name',
- 'description' => 'name'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'test',
- 'backendName' => 'name',
- ],
- 'enable' => [
- 'title' => 'enable',
- 'description' => 'enable'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'false',
- 'backendName' => 'enable',
- ],
+ 'consumerId' => ['title' => 'consumerId', 'description' => 'consumerId'."\n", 'type' => 'string', 'example' => 'cs-ctd4l1um1hkph7ki1k80'],
+ 'name' => ['title' => 'name', 'description' => 'name'."\n", 'type' => 'string', 'example' => 'test'],
+ 'enable' => ['title' => 'enable', 'description' => 'enable'."\n", 'type' => 'boolean', 'example' => 'false'],
],
+ 'example' => '',
],
'DomainInfo' => [
- 'title' => 'A short description of struct',
- 'description' => 'The domain name information.'."\n",
- 'visibility' => 'Public',
+ 'title' => '',
+ 'description' => 'The domain name information.',
'type' => 'object',
'properties' => [
- 'domainId' => [
- 'title' => 'domainId',
- 'description' => 'The domain name ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'd-cq1lthllhtgja4dk54eg',
- 'backendName' => 'domainId',
- ],
+ 'domainId' => ['title' => '', 'description' => 'The domain name ID.', 'type' => 'string', 'example' => 'd-cq1lthllhtgja4dk54eg'],
'status' => [
- 'title' => 'status',
- 'description' => 'The domain name status.'."\n"
- ."\n"
- .'Valid values:'."\n"
- ."\n"
- .'* UnPublished'."\n"
- .'* Published'."\n",
- 'visibility' => 'Public',
+ 'title' => '',
+ 'description' => 'The domain name status.',
+ 'enumValueTitles' => ['UnPublished' => 'UnPublished', 'Published' => 'Published'],
'type' => 'string',
- 'enumValueTitles' => [
- 'UnPublished' => 'UnPublished',
- 'Published' => 'Published',
- ],
'example' => 'Published',
- 'backendName' => 'status',
],
'createFrom' => [
- 'title' => 'createFrom',
- 'description' => 'The creation source of the domain name.'."\n"
- ."\n"
- .'Valid values:'."\n"
- ."\n"
- .'* Console'."\n"
- .'* Ingress'."\n",
- 'visibility' => 'Public',
+ 'title' => '',
+ 'description' => 'The source from which the domain name was created.',
+ 'enumValueTitles' => ['Console' => 'Console', 'Ingress' => 'Ingress'],
'type' => 'string',
- 'enumValueTitles' => [
- 'Console' => 'Console',
- 'Ingress' => 'Ingress',
- ],
'example' => 'Console',
- 'backendName' => 'createFrom',
- ],
- 'name' => [
- 'title' => 'name',
- 'description' => 'The domain name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'abc.com',
- 'backendName' => 'name',
],
+ 'name' => ['title' => '', 'description' => 'The domain name.', 'type' => 'string', 'example' => 'abc.com'],
'protocol' => [
- 'title' => 'protocol',
- 'description' => 'The supported protocol. Valid values:'."\n"
+ 'title' => '',
+ 'description' => 'The protocol type supported by the domain name.'."\n"
."\n"
- .'* HTTP'."\n"
- .'* HTTPS'."\n",
- 'visibility' => 'Public',
+ .'- HTTP: Only HTTP is supported.'."\n"
+ .'- HTTPS: Only HTTPS is supported.',
+ 'enumValueTitles' => ['HTTPS' => 'HTTPS', 'HTTP' => 'HTTP'],
'type' => 'string',
- 'enumValueTitles' => [
- 'HTTPS' => 'HTTPS',
- 'HTTP' => 'HTTP',
- ],
'example' => 'HTTP',
- 'backendName' => 'protocol',
],
- 'forceHttps' => [
- 'title' => 'forceHttps',
- 'description' => 'Specifies whether to enable forcible HTTPS redirection when HTTPS is used as the protocol.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'false',
- 'backendName' => 'forceHttps',
- ],
- 'updateTimestamp' => [
- 'title' => 'updateTimestamp',
- 'description' => 'The update timestamp.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- 'backendName' => 'updateTimestamp',
- ],
- 'createTimestamp' => [
- 'title' => 'createTimestamp',
- 'description' => 'The creation timestamp.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- 'backendName' => 'createTimestamp',
- ],
- 'certIdentifier' => [
- 'title' => 'certIdentifier',
- 'description' => 'The certificate identifier.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '235556-cn-hangzhou',
- 'backendName' => 'certIdentifier',
- ],
- 'resourceGroupId' => [
- 'title' => '',
- 'description' => 'The resource group ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'rg-xxxx',
- 'backendName' => 'resourceGroupId',
- ],
- 'mTLSEnabled' => [
- 'title' => '',
- 'description' => 'Specifies whether to enable mutual authentication.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'mTLSEnabled',
- ],
- 'clientCACert' => [
- 'title' => '',
- 'description' => 'The client CA certificate.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '-----BEGIN CERTIFICATE-----'."\n"
- .'MIIFBTCCAu2gAwIBAgIUORLpYPGSFD1YOP6PMbE7Wd/mpTQwDQYJKoZIhvcNAQEL'."\n"
- .'BQAwE************************************************2VwVOJ2gqX3'."\n"
- .'YuGaxvIbDy0iQJ1GMerPRyzJTeVEtdIKT29u0PdFRr4KZWom35qX7G4='."\n"
- .'-----END CERTIFICATE-----',
- 'backendName' => 'clientCACert',
- ],
- ],
+ 'domainScope' => ['title' => '', 'description' => 'domainScope', 'type' => 'string', 'example' => 'Dedicated'],
+ 'forceHttps' => ['title' => '', 'description' => 'Specifies whether to enable forced HTTPS redirect when the HTTPS protocol type is configured.', 'type' => 'boolean', 'example' => 'false'],
+ 'updateTimestamp' => ['title' => '', 'description' => 'The update timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548'],
+ 'createTimestamp' => ['title' => '', 'description' => 'The creation timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548'],
+ 'certIdentifier' => ['title' => '', 'description' => 'The SSL Certificates Service certificate identity.', 'type' => 'string', 'example' => '235556-cn-hangzhou'],
+ 'tlsMax' => ['title' => '', 'type' => 'string', 'description' => '', 'example' => ''],
+ 'tlsMin' => ['title' => '', 'type' => 'string', 'description' => '', 'example' => ''],
+ 'resourceGroupId' => ['title' => '', 'description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-xxxx'],
+ 'mTLSEnabled' => ['title' => '', 'description' => 'Specifies whether to enable mTLS mutual authentication.', 'type' => 'boolean', 'example' => 'true'],
+ 'clientCACert' => ['title' => '', 'description' => 'The client CA certificate.', 'type' => 'string', 'example' => '-----BEGIN CERTIFICATE-----'."\n"
+ .'MIIFBTCCAu2gAwIBAgIUORLpYPGSFD1YOP6PMbE7Wd/mpTQwDQYJKoZIhvcNAQEL'."\n"
+ .'BQAwE************************************************2VwVOJ2gqX3'."\n"
+ .'YuGaxvIbDy0iQJ1GMerPRyzJTeVEtdIKT29u0PdFRr4KZWom35qX7G4='."\n"
+ .'-----END CERTIFICATE-----'],
+ ],
+ 'example' => '',
],
'EnvironmentInfo' => [
'title' => 'A short description of struct',
'description' => 'The environment information.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'environmentId' => [
- 'title' => 'environmentId',
- 'description' => 'The environment ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'env-cq7l5s5lhtgi6qasrdc0',
- 'backendName' => 'environmentId',
- ],
- 'name' => [
- 'title' => 'name',
- 'description' => 'The environment name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'test',
- 'backendName' => 'name',
- ],
- 'alias' => [
- 'title' => 'alias',
- 'description' => 'The environment alias.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'test-env',
- 'backendName' => 'alias',
- ],
- 'description' => [
- 'title' => 'description',
- 'description' => 'The environment descriptiont.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'This is a test environment.',
- 'backendName' => 'description',
- ],
- 'gatewayInfo' => [
- 'description' => 'The instance information.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'gatewayInfo',
- '$ref' => '#/components/schemas/GatewayInfo',
- ],
+ 'environmentId' => ['title' => 'environmentId', 'description' => 'The environment ID.'."\n", 'type' => 'string', 'example' => 'env-cq7l5s5lhtgi6qasrdc0'],
+ 'name' => ['title' => 'name', 'description' => 'The environment name.'."\n", 'type' => 'string', 'example' => 'test'],
+ 'alias' => ['title' => 'alias', 'description' => 'The environment alias.'."\n", 'type' => 'string', 'example' => '测试环境'],
+ 'description' => ['title' => 'description', 'description' => 'The environment descriptiont.'."\n", 'type' => 'string', 'example' => '这是xxx的xx项目测试环境'],
+ 'gatewayInfo' => ['description' => 'The instance information.'."\n", '$ref' => '#/components/schemas/GatewayInfo', 'title' => '', 'example' => ''],
'subDomainInfos' => [
'title' => 'subDomainInfos',
'description' => 'The subdomains.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'description' => 'The subdomain information.'."\n",
- 'visibility' => 'Public',
- 'extendType' => 'true',
- '$ref' => '#/components/schemas/SubDomainInfo',
- ],
- 'backendName' => 'subDomainInfos',
- ],
- 'default' => [
- 'title' => 'default',
- 'description' => 'Specifies whether the environment is the default environment.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'false',
- 'backendName' => 'default',
- ],
- 'createTimestamp' => [
- 'title' => 'createTimestamp',
- 'description' => 'The creation timestamp.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1721116090326'."\n",
- 'backendName' => 'createTimestamp',
- ],
- 'updateTimestamp' => [
- 'title' => 'updateTimestamp',
- 'description' => 'The update timestamp.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1721116090326',
- 'backendName' => 'updateTimestamp',
- ],
- 'resourceGroupId' => [
- 'title' => '',
- 'description' => 'The resource group ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'rg-xxxx',
- 'backendName' => 'resourceGroupId',
+ 'items' => ['description' => 'The subdomain information.'."\n", '$ref' => '#/components/schemas/SubDomainInfo', 'title' => '', 'example' => ''],
+ 'example' => '',
],
+ 'default' => ['title' => 'default', 'description' => 'Specifies whether the environment is the default environment.'."\n", 'type' => 'boolean', 'example' => 'false'],
+ 'createTimestamp' => ['title' => 'createTimestamp', 'description' => 'The creation timestamp.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1721116090326'."\n"],
+ 'updateTimestamp' => ['title' => 'updateTimestamp', 'description' => 'The update timestamp.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1721116090326'],
+ 'resourceGroupId' => ['title' => '资源组ID', 'description' => 'The resource group ID.'."\n", 'type' => 'string', 'example' => 'rg-xxxx'],
],
+ 'example' => '',
],
'GatewayInfo' => [
- 'title' => 'A short description of struct',
- 'description' => 'The instance information.'."\n",
- 'visibility' => 'Public',
+ 'title' => '',
+ 'description' => 'The gateway information.',
'type' => 'object',
'properties' => [
- 'gatewayId' => [
- 'title' => 'gatewayId',
- 'description' => 'The instance ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gw-cq7og15lhtgi6qasrj60',
- 'backendName' => 'gatewayId',
- ],
- 'name' => [
- 'title' => 'name',
- 'description' => 'The instance name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'apitest-gw',
- 'backendName' => 'name',
- ],
+ 'gatewayId' => ['title' => '', 'description' => 'The gateway ID.', 'type' => 'string', 'example' => 'gw-cq7og15lhtgi6qasrj60'],
+ 'name' => ['title' => '', 'description' => 'The gateway name.', 'type' => 'string', 'example' => 'apitest-gw'],
'vpcInfo' => [
'title' => '',
- 'description' => 'The virtual private cloud (VPC) information.'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The VPC information.',
'type' => 'object',
'properties' => [
- 'vpcId' => [
- 'title' => '',
- 'description' => 'The VPC ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'vpc-uf664nyle5kh***',
- 'backendName' => 'vpcId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The VPC name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'test-vpc',
- 'backendName' => 'name',
- ],
+ 'vpcId' => ['title' => '', 'description' => 'The VPC ID.', 'type' => 'string', 'example' => 'vpc-uf664nyle5kh***'],
+ 'name' => ['title' => '', 'description' => 'The VPC name.', 'type' => 'string', 'example' => '商品中心预发环境专有网络'],
],
- 'backendName' => 'vpcInfo',
- ],
- 'engineVersion' => [
- 'title' => '',
- 'description' => 'The instance engine version.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '2.0.7',
- 'backendName' => 'engineVersion',
+ 'example' => '',
],
+ 'engineVersion' => ['title' => '', 'description' => 'The gateway DPI engine version.', 'type' => 'string', 'example' => '2.0.7'],
+ 'gatewayEdition' => ['title' => '', 'description' => 'The gateway instance edition. Valid values:'."\n"
+ ."\n"
+ .'- Professional: standard instance.'."\n"
+ .'- Serverless: Serverless.'."\n"
+ .'- MultiTenantServerless: multi-tenant Serverless.'."\n"
+ .'- Unknown: unknown.', 'type' => 'string', 'example' => 'MultiTenantServerless'],
],
+ 'example' => '',
],
'GatewayLogConfig' => [
- 'title' => '',
+ 'title' => '网关的日志配置',
'description' => 'The logging configurations.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'slsConfig' => [
- 'title' => '',
+ 'title' => 'SLS日志配置',
'description' => 'The Simple Log Service configurations.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'enable' => [
- 'title' => '',
- 'description' => 'Specifies whether to activate Simple Log Service.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'enable',
- ],
+ 'enable' => ['title' => '开启SLS', 'description' => 'Specifies whether to activate Simple Log Service.'."\n", 'type' => 'boolean', 'example' => 'true'],
],
- 'backendName' => 'slsConfig',
+ 'example' => '',
],
],
+ 'example' => '',
],
- 'GatewayRouteBackend' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
+ 'HiMarketAgentConfig' => [
+ 'description' => 'The object.',
'type' => 'object',
'properties' => [
- 'type' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'enumValueTitles' => [
- 'Single' => '',
- 'GrayByLabel' => '',
- 'Redirect' => '',
- 'GrayByWeight' => '',
- 'Mock' => '',
- ],
- 'example' => 'Single',
- 'backendName' => 'type',
- ],
- 'services' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'object',
- 'properties' => [
- 'gatewayServiceId' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gs-cq2bmmdlhtgj***',
- 'backendName' => 'gatewayServiceId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'item-service',
- 'backendName' => 'name',
- ],
- 'protocol' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'enumValueTitles' => [
- 'TCP' => 'TCP',
- 'HTTP' => 'HTTP',
- 'DUBBO' => 'DUBBO',
- ],
- 'example' => 'HTTP',
- 'backendName' => 'protocol',
- ],
- 'port' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '8080',
- 'backendName' => 'port',
- ],
- 'weight' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'number',
- 'format' => 'float',
- 'example' => '100',
- 'backendName' => 'weight',
- ],
- 'version' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'v1',
- 'backendName' => 'version',
- ],
+ 'agentAPIConfig' => [
+ 'description' => 'The agent API configuration list.',
+ 'type' => 'object',
+ 'properties' => [
+ 'agentProtocols' => [
+ 'description' => 'The list of agent protocols.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The list.', 'type' => 'string', 'title' => '', 'example' => '["DashScope"]'],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'routes' => [
+ 'description' => 'The list of agent API routing configurations.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The list.', 'title' => '', 'example' => '', '$ref' => '#/components/schemas/HiMarketHttpRoute'],
+ 'title' => '',
+ 'example' => '',
],
- 'extendType' => 'true',
],
- 'backendName' => 'services',
- 'itemName' => 'service',
+ 'title' => '',
+ 'example' => '',
],
],
- ],
- 'GatewayRouteBackendConfig' => [
'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
+ 'example' => '',
+ ],
+ 'HiMarketApiKeyConfig' => [
+ 'description' => 'The object.',
'type' => 'object',
'properties' => [
- 'type' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'enumValueTitles' => [
- 'Single' => '',
- 'GrayByLabel' => '',
- 'Redirect' => '',
- 'GrayByWeight' => '',
- 'Mock' => '',
- ],
- 'example' => 'Single',
- 'backendName' => 'type',
- ],
- 'services' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
+ 'key' => ['description' => 'The name of the location from which the API key is extracted.', 'type' => 'string', 'title' => '', 'example' => 'Apikey'],
+ 'source' => ['description' => 'The source type of the API key.', 'type' => 'string', 'title' => '', 'example' => 'Header'],
+ 'credentials' => [
+ 'description' => 'The list of credentials.',
'type' => 'array',
'items' => [
- 'description' => '',
- 'visibility' => 'Public',
+ 'description' => 'The list of credentials.',
'type' => 'object',
'properties' => [
- 'gatewayServiceId' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gs-cq2bmmdlhtgj***',
- 'backendName' => 'gatewayServiceId',
- ],
- 'sourceType' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'enumValueTitles' => [
- 'K8S' => '',
- 'DNS' => '',
- 'VIP' => '',
- 'FC' => '',
- 'MSE_NACOS' => 'MSE Nacos',
- ],
- 'example' => 'K8S',
- 'backendName' => 'sourceType',
- ],
- 'protocol' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'enumValueTitles' => [
- 'TCP' => 'TCP',
- 'HTTP' => 'HTTP',
- 'DUBBO' => 'DUBBO',
- ],
- 'example' => 'HTTP',
- 'backendName' => 'protocol',
- ],
- 'port' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '8080',
- 'backendName' => 'port',
- ],
- 'weight' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'number',
- 'format' => 'float',
- 'example' => '49',
- 'backendName' => 'weight',
- ],
+ 'apiKey' => ['description' => 'The API key value.', 'type' => 'string', 'title' => '', 'example' => 'my-api-key-123'],
+ 'mode' => ['description' => 'The generation mode.', 'type' => 'string', 'title' => '', 'example' => 'Custom'],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'services',
- 'itemName' => 'service',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
- 'GatewayRouteDomainConfig' => [
- 'title' => 'GatewayRouteDomainConfig',
- 'description' => '',
- 'visibility' => 'Public',
+ 'HiMarketAuthCodeConfig' => [
+ 'description' => 'object.',
'type' => 'object',
'properties' => [
- 'domainIds' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'd-cp9mv55lht***',
- 'extendType' => 'true',
- ],
- 'backendName' => 'domainIds',
- ],
+ 'clientId' => ['description' => 'The OAuth2 client ID.', 'type' => 'string', 'title' => '', 'example' => 'my-client-id'],
+ 'clientSecret' => ['description' => 'The OAuth2 client secret. The secret is AES-encrypted when stored.', 'type' => 'string', 'title' => '', 'example' => 'my-client-secret'],
+ 'scopes' => ['description' => 'The OAuth2 authorization scopes, separated by spaces.', 'type' => 'string', 'title' => '', 'example' => 'openid profile email'],
+ 'issuer' => ['description' => 'The OIDC issuer URL.', 'type' => 'string', 'title' => '', 'example' => 'https://idp.example.com'],
+ 'authorizationEndpoint' => ['description' => 'The OAuth2 authorization endpoint URL.', 'type' => 'string', 'title' => '', 'example' => 'https://idp.example.com/oauth2/authorize'],
+ 'tokenEndpoint' => ['description' => 'The OAuth2 token endpoint URL.', 'type' => 'string', 'title' => '', 'example' => 'https://idp.example.com/oauth2/token'],
+ 'userInfoEndpoint' => ['description' => 'The OIDC UserInfo endpoint URL.', 'type' => 'string', 'title' => '', 'example' => 'https://idp.example.com/userinfo'],
+ 'jwkSetUri' => ['description' => 'The JWKS public key set URI, used for token signature verification.', 'type' => 'string', 'title' => '', 'example' => 'https://idp.example.com/.well-known/jwks.json'],
+ 'redirectUri' => ['description' => 'The OAuth2 callback URL.', 'type' => 'string', 'title' => '', 'example' => 'https://gateway.example.com/callback'],
],
+ 'title' => '',
+ 'example' => '',
],
- 'GatewayRouteDomainInfo' => [
- 'title' => 'GatewayRouteDomainInfo',
- 'description' => '',
- 'visibility' => 'Public',
+ 'HiMarketDomain' => [
+ 'description' => 'object.',
'type' => 'object',
'properties' => [
- 'domains' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
+ 'domain' => ['description' => 'The domain name address.', 'type' => 'string', 'title' => '', 'example' => 'api.example.com'],
+ 'port' => ['description' => 'The port.', 'type' => 'integer', 'title' => '', 'example' => '443', 'format' => 'int32'],
+ 'protocol' => ['description' => 'The access protocol.', 'type' => 'string', 'title' => '', 'example' => 'HTTPS'],
+ 'networkType' => ['description' => 'The network type.', 'type' => 'string', 'title' => '', 'example' => 'Internet'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'HiMarketHmacConfig' => [
+ 'description' => 'The object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'credentials' => [
+ 'description' => 'The list of credentials.',
'type' => 'array',
'items' => [
- 'description' => '',
- 'visibility' => 'Public',
+ 'description' => 'The credential list.',
'type' => 'object',
'properties' => [
- 'domainId' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'd-cp82or5l***',
- 'backendName' => 'domainId',
- ],
- 'protocol' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'enumValueTitles' => [
- 'HTTPS' => 'HTTPS',
- 'HTTP' => 'HTTP',
- ],
- 'example' => 'HTTP',
- 'backendName' => 'protocol',
- ],
- 'name' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'item.dev',
- 'backendName' => 'name',
- ],
+ 'ak' => ['description' => 'Access Key ID', 'type' => 'string', 'title' => '', 'example' => 'my-access-key-123'],
+ 'sk' => ['description' => 'Access Key Secret', 'type' => 'string', 'title' => '', 'example' => 'my-secret-key-456'],
+ 'mode' => ['description' => 'The generation mode.', 'type' => 'string', 'title' => '', 'example' => 'Custom'],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'domains',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
- 'GatewayService' => [
- 'title' => 'A short description of struct',
- 'description' => '',
- 'visibility' => 'Public',
+ 'HiMarketHttpRoute' => [
+ 'description' => 'The object.',
'type' => 'object',
'properties' => [
- 'gatewayServiceId' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gs-cpontcdlh***',
- 'backendName' => 'gatewayServiceId',
- ],
- 'sourceType' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'enumValueTitles' => [
- 'K8S' => '',
- 'DNS' => '',
- 'VIP' => '',
- 'FC' => '',
- 'MSE_NACOS' => 'MSE Nacos',
- ],
- 'example' => 'MSE_NACOS',
- 'backendName' => 'sourceType',
- ],
- 'createTimestamp' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1721097861050',
- 'backendName' => 'createTimestamp',
- ],
- 'updateTimestamp' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1721123855214',
- 'backendName' => 'updateTimestamp',
- ],
- 'name' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'provider',
- 'backendName' => 'name',
- ],
- 'namespace' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'default',
- 'backendName' => 'namespace',
- ],
- 'addresses' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '127.0.0.1:8080',
- 'extendType' => 'true',
- ],
- 'backendName' => 'addresses',
- ],
- 'ports' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'object',
- 'properties' => [
- 'port' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '8080',
- 'backendName' => 'port',
+ 'description' => ['description' => 'The route description.', 'type' => 'string', 'title' => '', 'example' => 'Agent route'],
+ 'match' => [
+ 'description' => 'The route matching rule.',
+ 'type' => 'object',
+ 'properties' => [
+ 'methods' => [
+ 'description' => 'The list of HTTP methods.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The list of HTTP methods.', 'type' => 'string', 'title' => '', 'example' => '["POST"]'],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'path' => [
+ 'description' => 'The path matching rule.',
+ 'type' => 'object',
+ 'properties' => [
+ 'value' => ['description' => 'The path value.', 'type' => 'string', 'title' => '', 'example' => '/v1/agents/invoke'],
+ 'type' => ['description' => 'The matching type.', 'type' => 'string', 'title' => '', 'example' => 'Prefix'],
+ 'caseSensitive' => ['description' => 'Indicates whether the matching is case-sensitive.', 'type' => 'boolean', 'title' => '', 'example' => 'false'],
],
- 'name' => [
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'headers' => [
+ 'description' => 'The list of header matching rules.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list of header matching rules.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The parameter name.', 'type' => 'string', 'title' => '', 'example' => 'X-Agent-Type'],
+ 'type' => ['description' => 'The matching type.', 'type' => 'string', 'title' => '', 'example' => 'Exact'],
+ 'value' => ['description' => 'The matching value.', 'type' => 'string', 'title' => '', 'example' => 'dashscope'],
+ 'caseSensitive' => ['description' => 'Indicates whether the matching is case-sensitive.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ ],
'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'http-0',
- 'backendName' => 'name',
+ 'example' => '',
],
- 'protocol' => [
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'queryParams' => [
+ 'description' => 'The list of query parameter matching rules.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list of query parameter matching rules.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The parameter name.', 'type' => 'string', 'title' => '', 'example' => 'X-Agent-Type'],
+ 'type' => ['description' => 'The matching type.', 'type' => 'string', 'title' => '', 'example' => 'Exact'],
+ 'value' => ['description' => 'The matching value.', 'type' => 'string', 'title' => '', 'example' => 'dashscope'],
+ 'caseSensitive' => ['description' => 'Indicates whether the matching is case-sensitive.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ ],
'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'enumValueTitles' => [
- 'TCP' => 'TCP',
- 'UDP' => 'UDP',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'modelMatches' => [
+ 'description' => 'The list of model matching rules (specific to Agent API).',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list of model matching rules (specific to Agent API).',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The parameter name.', 'type' => 'string', 'title' => '', 'example' => 'X-Agent-Type'],
+ 'type' => ['description' => 'The matching type.', 'type' => 'string', 'title' => '', 'example' => 'Exact'],
+ 'value' => ['description' => 'The matching value.', 'type' => 'string', 'title' => '', 'example' => 'dashscope'],
+ 'caseSensitive' => ['description' => 'Indicates whether the matching is case-sensitive.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
],
- 'example' => 'TCP',
- 'backendName' => 'protocol',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
- 'extendType' => 'true',
- ],
- 'backendName' => 'ports',
- ],
- 'unhealthyEndpoints' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '127.0.0.2:8080',
- 'extendType' => 'true',
],
- 'backendName' => 'unhealthyEndpoints',
- ],
- 'healthCheck' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'backendName' => 'healthCheck',
- '$ref' => '#/components/schemas/ServiceHealthCheck',
- ],
- 'healthStatus' => [
'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'enumValueTitles' => [
- 'Unhealthy' => 'Unhealthy',
- 'Healthy' => 'Healthy',
- ],
- 'example' => 'Healthy',
- 'backendName' => 'healthStatus',
+ 'example' => '',
],
- 'qualifier' => [
+ 'builtin' => ['description' => 'Indicates whether the route is a built-in route.', 'type' => 'boolean', 'title' => '', 'example' => 'false'],
+ 'domains' => [
+ 'description' => 'The list of associated domain names.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The list of associated domain names.', 'title' => '', 'example' => '', '$ref' => '#/components/schemas/HiMarketDomain'],
'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'LATEST',
- 'backendName' => 'qualifier',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'HiMarketIcon' => [
+ 'description' => 'The object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'type' => ['description' => 'The icon type.', 'type' => 'string', 'title' => '', 'example' => 'url'],
+ 'value' => ['description' => 'The icon value.', 'type' => 'string', 'title' => '', 'example' => 'https://example.com/icon.png'],
+ ],
+ 'title' => '',
+ 'example' => '',
],
- 'GatewayServiceSource' => [
- 'title' => 'A short description of struct',
- 'description' => '',
- 'visibility' => 'Public',
+ 'HiMarketIdentityMapping' => [
+ 'description' => 'The object.',
'type' => 'object',
'properties' => [
- 'serviceSourceId' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gss-cq69grnd5lbq***',
- 'backendName' => 'serviceSourceId',
- ],
- 'name' => [
+ 'userIdField' => ['description' => 'The identity field name that corresponds to the user ID.', 'type' => 'string', 'title' => '', 'example' => 'sub'],
+ 'userNameField' => ['description' => 'The identity field name that corresponds to the username.', 'type' => 'string', 'title' => '', 'example' => 'name'],
+ 'emailField' => ['description' => 'The identity field name that corresponds to the mailbox.', 'type' => 'string', 'title' => '', 'example' => 'email'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'HiMarketJwtConfig' => [
+ 'type' => 'object',
+ 'properties' => [],
+ 'description' => 'The JWT authorizer configuration for HiMarket.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'HiMarketMcpConfig' => [
+ 'description' => 'The object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'mcpServerName' => ['description' => 'The MCP Server name.', 'type' => 'string', 'title' => '', 'example' => 'my-mcp-server'],
+ 'tools' => ['description' => 'The MCP tool definitions.', 'type' => 'string', 'title' => '', 'example' => '[{\\"name\\":\\"search\\",\\"description\\":\\"搜索工具\\"}]'],
+ 'mcpServerConfig' => [
+ 'description' => 'The MCP Server configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'path' => ['description' => 'The path exposed by the MCP server.', 'type' => 'string', 'title' => '', 'example' => '/mcp'],
+ 'domains' => [
+ 'description' => 'The list of associated domain names.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The list of associated domain names.', 'title' => '', 'example' => '', '$ref' => '#/components/schemas/HiMarketDomain'],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'itemcenter-dev-cluster',
- 'backendName' => 'name',
+ 'example' => '',
],
- 'type' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'enumValueTitles' => [
- 'K8S' => '',
- 'MSE_NACOS' => ' MSE Nacos',
+ 'meta' => [
+ 'description' => 'The metadata.',
+ 'type' => 'object',
+ 'properties' => [
+ 'protocol' => ['description' => 'The MCP protocol type.', 'type' => 'string', 'title' => '', 'example' => 'StreamableHTTP'],
],
- 'example' => 'MSE_NACOS',
- 'backendName' => 'type',
- ],
- 'k8sServiceSourceInfo' => [
'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'HiMarketModelConfig' => [
+ 'description' => 'The object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'modelAPIConfig' => [
+ 'description' => 'The Model API configuration wrapper.',
'type' => 'object',
'properties' => [
- 'clusterId' => [
+ 'modelCategory' => ['description' => 'The model categorization.', 'type' => 'string', 'title' => '', 'example' => 'Text'],
+ 'aiProtocols' => [
+ 'description' => 'The list of AI protocols.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The list of AI protocols.', 'type' => 'string', 'title' => '', 'example' => '["OpenAI/v1"]'],
'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'c4a21b3560fad4ec299f3e63f4***',
- 'backendName' => 'clusterId',
+ 'example' => '',
],
- 'ingressConfig' => [
+ 'routes' => [
+ 'description' => 'The list of routing configurations.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The list of routing configurations.', 'title' => '', 'example' => '', '$ref' => '#/components/schemas/HiMarketHttpRoute'],
'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'object',
- 'properties' => [
- 'enable' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'enable',
- ],
- 'ingressClass' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'mse',
- 'backendName' => 'ingressClass',
- ],
- 'watchNamespace' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'default',
- 'backendName' => 'watchNamespace',
- ],
- 'overrideIngressIp' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'false',
- 'backendName' => 'overrideIngressIp',
- ],
- ],
- 'backendName' => 'ingressConfig',
+ 'example' => '',
],
],
- 'backendName' => 'k8sServiceSourceInfo',
+ 'title' => '',
+ 'example' => '',
],
- 'nacosServiceSourceInfo' => [
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'HiMarketModelFeature' => [
+ 'description' => 'object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'model' => ['description' => 'The model name.', 'type' => 'string', 'title' => '', 'example' => 'qwen-max'],
+ 'maxTokens' => ['description' => 'The maximum number of tokens supported by the model.', 'type' => 'integer', 'title' => '', 'example' => '8192', 'format' => 'int32'],
+ 'temperature' => ['description' => 'The temperature parameter that controls the randomness of generation.', 'type' => 'number', 'title' => '', 'example' => '0.7', 'format' => 'float'],
+ 'streaming' => ['description' => 'Indicates whether streaming output is supported.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ 'webSearch' => ['description' => 'Indicates whether web search is supported.', 'type' => 'boolean', 'title' => '', 'example' => 'false'],
+ 'enableThinking' => ['description' => 'Indicates whether chain-of-thought (Thinking) is supported.', 'type' => 'boolean', 'title' => '', 'example' => 'false'],
+ 'enableMultiModal' => ['description' => 'Indicates whether multimodal input is supported.', 'type' => 'boolean', 'title' => '', 'example' => 'false'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'HiMarketOidcConfig' => [
+ 'description' => 'The object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'provider' => ['description' => 'The OIDC provider name.', 'type' => 'string', 'title' => '', 'example' => '阿里云IDaaS'],
+ 'name' => ['description' => 'The OIDC configuration name.', 'type' => 'string', 'title' => '', 'example' => 'my-oidc-config'],
+ 'logoUrl' => ['description' => 'The provider logo URL.', 'type' => 'string', 'title' => '', 'example' => 'https://example.com/logo.png'],
+ 'enabled' => ['description' => 'Indicates whether the OIDC configuration is enabled.', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ 'grantType' => ['description' => 'The authorization type.', 'type' => 'string', 'title' => '', 'example' => 'authorization_code'],
+ 'authCodeConfig' => [
+ 'description' => 'The OAuth2 Authorization Code configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'clientId' => ['description' => 'The OAuth2 client ID.', 'type' => 'string', 'title' => '', 'example' => 'my-client-id'],
+ 'clientSecret' => ['description' => 'The OAuth2 client secret.', 'type' => 'string', 'title' => '', 'example' => 'my-client-secret'],
+ 'scopes' => ['description' => 'The OAuth2 authorization scopes.', 'type' => 'string', 'title' => '', 'example' => 'openid profile email'],
+ 'issuer' => ['description' => 'The OIDC issuer URL.', 'type' => 'string', 'title' => '', 'example' => 'https://idaas.example.com'],
+ 'authorizationEndpoint' => ['description' => 'The authorization endpoint URL.', 'type' => 'string', 'title' => '', 'example' => 'https://idaas.example.com/oauth2/authorize'],
+ 'tokenEndpoint' => ['description' => 'The token endpoint URL.', 'type' => 'string', 'title' => '', 'example' => 'https://idaas.example.com/oauth2/token'],
+ 'userInfoEndpoint' => ['description' => 'The UserInfo endpoint URL.', 'type' => 'string', 'title' => '', 'example' => 'https://idaas.example.com/userinfo'],
+ 'jwkSetUri' => ['description' => 'The JWKS public key set URI.', 'type' => 'string', 'title' => '', 'example' => 'https://idaas.example.com/.well-known/jwks.json'],
+ 'redirectUri' => ['description' => 'The OAuth2 redirect URI.', 'type' => 'string', 'title' => '', 'example' => 'https://gateway.example.com/callback'],
+ ],
'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
+ 'example' => '',
+ ],
+ 'identityMapping' => [
+ 'description' => 'The identity field mapping configuration.',
'type' => 'object',
'properties' => [
- 'instanceId' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'mse-cn-328fc8***',
- 'backendName' => 'instanceId',
- ],
- 'clusterId' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'mse-a704***',
- 'backendName' => 'clusterId',
- ],
- 'address' => [
+ 'userIdField' => ['description' => 'The identity field name that corresponds to the user ID.', 'type' => 'string', 'title' => '', 'example' => 'sub'],
+ 'userNameField' => ['description' => 'The identity field name that corresponds to the username.', 'type' => 'string', 'title' => '', 'example' => 'name'],
+ 'emailField' => ['description' => 'The identity field name that corresponds to the email address.', 'type' => 'string', 'title' => '', 'example' => 'email'],
+ 'customFields' => [
+ 'description' => 'The custom field mappings.',
+ 'type' => 'object',
+ 'additionalProperties' => ['description' => 'The custom field mappings.', 'type' => 'string', 'title' => '', 'example' => '{"department":"dept","role":"role"}'],
'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'mse-a704***-nacos-ans.mse.aliyuncs.com:8848',
- 'backendName' => 'address',
+ 'example' => '',
],
],
- 'backendName' => 'nacosServiceSourceInfo',
- ],
- 'bound' => [
'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'bound',
+ 'example' => '',
],
- 'createTimestamp' => [
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'HiMarketPortalDeployConfig' => [
+ 'description' => 'The object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'platform' => ['description' => 'The deployment platform type.', 'type' => 'string', 'title' => '', 'example' => 'SAE'],
+ 'status' => ['description' => 'The deployment status.', 'type' => 'string', 'title' => '', 'example' => 'Running'],
+ 'message' => ['description' => 'The deployment status message.', 'type' => 'string', 'title' => '', 'example' => 'message'],
+ 'saeConfig' => [
+ 'description' => 'The SAE (Serverless App Engine) deployment configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'oidcRoleName' => ['description' => 'The OIDC role name used for SAE to access other cloud resources.', 'type' => 'string', 'title' => '', 'example' => 'apig-portal-oidc-role'],
+ 'regionId' => ['description' => 'The region ID of SAE.', 'type' => 'string', 'title' => '', 'example' => 'cn-hangzhou'],
+ 'namespaceId' => ['description' => 'The SAE namespace ID.', 'type' => 'string', 'title' => '', 'example' => 'cn-hangzhou:default'],
+ 'vpcId' => ['description' => 'VPC ID', 'type' => 'string', 'title' => '', 'example' => 'vpc-xxx'],
+ 'vSwitchId' => ['description' => 'The vSwitch ID.', 'type' => 'string', 'title' => '', 'example' => 'vsw-xxx'],
+ 'securityGroupId' => ['description' => 'The security group ID.', 'type' => 'string', 'title' => '', 'example' => 'sg-xxx'],
+ 'replicas' => ['description' => 'The number of instance replicas.', 'type' => 'string', 'title' => '', 'example' => '2'],
+ 'appId' => ['description' => 'The SAE application ID.', 'type' => 'string', 'title' => '', 'example' => 'app-xxx'],
+ ],
'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1721097861050',
- 'backendName' => 'createTimestamp',
+ 'example' => '',
],
- 'updateTimestamp' => [
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'HiMarketPortalDomainConfig' => [
+ 'description' => 'object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'domain' => ['description' => 'The domain name address.', 'type' => 'string', 'title' => '', 'example' => 'portal.example.com'],
+ 'type' => ['description' => 'The domain name type.', 'type' => 'string', 'title' => '', 'example' => 'custom'],
+ 'protocol' => ['description' => 'The request protocol.', 'type' => 'string', 'title' => '', 'example' => 'HTTPS'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'HiMarketPortalSettingConfig' => [
+ 'description' => 'The object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'builtinAuthEnabled' => ['description' => 'Specifies whether to enable username-password authentication (built-in authentication).', 'type' => 'boolean', 'title' => '', 'example' => 'true'],
+ 'autoApproveDevelopers' => ['description' => 'Specifies whether to automatically approve developer registration requests.', 'type' => 'boolean', 'title' => '', 'example' => 'false'],
+ 'autoApproveSubscriptions' => ['description' => 'Specifies whether to automatically approve API subscription requests.', 'type' => 'boolean', 'title' => '', 'example' => 'false'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'HiMarketProductCategory' => [
+ 'description' => 'The object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'categoryId' => ['description' => 'The categorization ID.', 'type' => 'string', 'title' => '', 'example' => 'cat-xxx'],
+ 'name' => ['description' => 'The categorization name.', 'type' => 'string', 'title' => '', 'example' => 'AI网关'],
+ 'description' => ['description' => 'The categorization description.', 'type' => 'string', 'title' => '', 'example' => 'AI网关相关产品分类'],
+ 'icon' => ['description' => 'The icon configuration.', 'title' => '', 'example' => '', '$ref' => '#/components/schemas/HiMarketIcon'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'HiMarketProductFeature' => [
+ 'description' => 'The object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'modelFeature' => ['description' => 'The model feature.', 'title' => '', 'example' => '', '$ref' => '#/components/schemas/HiMarketModelFeature'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'HiMarketProductPublicationConifg' => [
+ 'description' => 'The object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'publicationId' => ['description' => 'The publication ID.', 'type' => 'string', 'title' => '', 'example' => 'pub-xxx'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'HiMarketProductPublicationDetail' => [
+ 'description' => 'The object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'publicationId' => ['description' => 'The product publish ID.', 'type' => 'string', 'title' => '', 'example' => 'pub-xxx'],
+ 'portalId' => ['description' => 'The portal ID.', 'type' => 'string', 'title' => '', 'example' => 'portal-xxx'],
+ 'portalName' => ['description' => 'The portal name.', 'type' => 'string', 'title' => '', 'example' => '开发者门户'],
+ 'productId' => ['description' => 'The product ID.', 'type' => 'string', 'title' => '', 'example' => 'prod-xxx'],
+ 'productName' => ['description' => 'The product name.', 'type' => 'string', 'title' => '', 'example' => 'AI网关API'],
+ 'productType' => ['description' => 'The product type.', 'type' => 'string', 'title' => '', 'example' => 'ApiGateway'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'HiMarketProductRefConfig' => [
+ 'description' => 'The object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'gatewayId' => ['description' => 'The ID of the associated gateway.', 'type' => 'string', 'title' => '', 'example' => 'gw-xxx'],
+ 'apigRefConfig' => [
+ 'description' => 'The APIG resource reference configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'mcpServerId' => ['description' => 'The associated MCP Server ID.', 'type' => 'string', 'title' => '', 'example' => 'mcp-xxx'],
+ 'mcpRouteId' => ['description' => 'The associated MCP route ID.', 'type' => 'string', 'title' => '', 'example' => 'route-xxx'],
+ 'mcpServerName' => ['description' => 'The MCP Server name.', 'type' => 'string', 'title' => '', 'example' => 'my-mcp-server'],
+ 'agentApiId' => ['description' => 'The associated Agent API ID.', 'type' => 'string', 'title' => '', 'example' => 'api-xxx'],
+ 'agentApiName' => ['description' => 'The Agent API name.', 'type' => 'string', 'title' => '', 'example' => 'my-agent-api'],
+ 'modelApiId' => ['description' => 'The associated Model API ID.', 'type' => 'string', 'title' => '', 'example' => 'api-yyy'],
+ 'modelApiName' => ['description' => 'The Model API name.', 'type' => 'string', 'title' => '', 'example' => 'qwen-model-api'],
+ ],
'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1721123855214',
- 'backendName' => 'updateTimestamp',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
'HttpApiApiInfo' => [
- 'title' => 'ApiInfo',
+ 'title' => '',
'description' => 'The API information.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'httpApiId' => [
- 'title' => 'HTTP API ID。',
- 'description' => 'The HTTP API ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'api-xxx',
- 'backendName' => 'httpApiId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The API name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'test',
- 'backendName' => 'name',
- ],
- 'basePath' => [
- 'title' => '',
- 'description' => 'The base path of the API.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '/v1',
- 'backendName' => 'basePath',
- ],
- 'description' => [
- 'title' => '',
- 'description' => 'The API description.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'for test only',
- 'backendName' => 'description',
- ],
- 'versionInfo' => [
- 'title' => '',
- 'description' => 'The API versioning information.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'versionInfo',
- '$ref' => '#/components/schemas/HttpApiVersionInfo',
- ],
+ 'httpApiId' => ['title' => '', 'description' => 'The HTTP API ID.'."\n", 'type' => 'string', 'required' => false, 'example' => 'api-xxx'],
+ 'name' => ['title' => '', 'description' => 'The API name.'."\n", 'type' => 'string', 'example' => 'test'],
+ 'basePath' => ['title' => '', 'description' => 'The base path of the API.'."\n", 'type' => 'string', 'example' => '/v1'],
+ 'description' => ['title' => '', 'description' => 'The API description.'."\n", 'type' => 'string', 'example' => '测试专用API'],
+ 'versionInfo' => ['title' => '', 'description' => 'The API versioning information.'."\n", '$ref' => '#/components/schemas/HttpApiVersionInfo', 'example' => ''],
'ingressInfo' => [
'title' => '',
'description' => 'The information about the HTTP Ingress API.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'sourceId' => [
- 'title' => '',
- 'description' => 'The source ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'src-xxx',
- 'backendName' => 'sourceId',
- ],
- 'ingressClass' => [
- 'title' => '',
- 'description' => 'The Ingress Class for listening.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'mse',
- 'backendName' => 'ingressClass',
- ],
- 'watchNamespace' => [
- 'title' => '',
- 'description' => 'The namespace for listening.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'default',
- 'backendName' => 'watchNamespace',
- ],
+ 'sourceId' => ['title' => '', 'description' => 'The source ID.'."\n", 'type' => 'string', 'example' => 'src-xxx'],
+ 'ingressClass' => ['title' => '', 'description' => 'The Ingress Class for listening.'."\n", 'type' => 'string', 'example' => 'mse'],
+ 'watchNamespace' => ['title' => '', 'description' => 'The namespace for listening.'."\n", 'type' => 'string', 'example' => 'default'],
'environmentInfo' => [
'title' => '',
'description' => 'The environment information.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'environmentId' => [
- 'title' => '',
- 'description' => 'The environment ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'env-xxx',
- 'backendName' => 'environmentId',
- ],
+ 'environmentId' => ['title' => '', 'description' => 'The environment ID.'."\n", 'type' => 'string', 'example' => 'env-xxx'],
],
- 'backendName' => 'environmentInfo',
+ 'example' => '',
],
'k8sClusterInfo' => [
'title' => '',
'description' => 'The information about the Kubernetes cluster.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'clusterId' => [
- 'title' => '',
- 'description' => 'The cluster ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'ca435c77cba1547cca9311957bcxxxxxx',
- 'backendName' => 'clusterId',
- ],
+ 'clusterId' => ['title' => '', 'description' => 'The cluster ID.'."\n", 'type' => 'string', 'example' => 'ca435c77cba1547cca9311957bcxxxxxx'],
],
- 'backendName' => 'k8sClusterInfo',
- ],
- 'overrideIngressIp' => [
- 'title' => '',
- 'description' => 'Specifies whether to update the address in Ingress Status.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'overrideIngressIp',
+ 'example' => '',
],
+ 'overrideIngressIp' => ['title' => '', 'description' => 'Specifies whether to update the address in Ingress Status.'."\n", 'type' => 'boolean', 'example' => 'true'],
],
- 'backendName' => 'ingressInfo',
+ 'example' => '',
],
'type' => [
'title' => '',
@@ -2223,59 +1684,24 @@
.'* Websocket'."\n"
.'* AI'."\n"
.'* Http'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'HttpIngress' => 'HttpIngress',
- 'Rest' => 'Rest',
- 'Websocket' => 'Websocket',
- 'AI' => 'AI',
- 'Http' => 'Http',
- ],
+ 'enumValueTitles' => ['HttpIngress' => 'HttpIngress', 'Rest' => 'Rest', 'Websocket' => 'Websocket', 'AI' => 'AI', 'Http' => 'Http'],
'example' => 'Rest',
- 'backendName' => 'type',
- ],
- 'resourceGroupId' => [
- 'title' => '',
- 'description' => 'The ID of the resource group.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'rg-xxx',
- 'backendName' => 'resourceGroupId',
- ],
- 'enabelAuth' => [
- 'title' => '',
- 'description' => 'Specifies whether to enable authentication.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'backendName' => 'enabelAuth',
- ],
- 'authConfig' => [
- 'title' => '',
- 'description' => 'The authentication configurations.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'authConfig',
- '$ref' => '#/components/schemas/AuthConfig',
- ],
- 'gatewayId' => [
- 'title' => '',
- 'description' => 'The instance ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gw-cpv4sqdl****',
- 'backendName' => 'gatewayId',
],
+ 'resourceGroupId' => ['title' => '', 'description' => 'The ID of the resource group.'."\n", 'type' => 'string', 'example' => 'rg-xxx'],
+ 'enableAuth' => ['title' => '', 'type' => 'boolean', 'description' => '', 'example' => ''],
+ 'authConfig' => ['title' => '', 'description' => 'The authentication configurations.'."\n", '$ref' => '#/components/schemas/AuthConfig', 'example' => ''],
+ 'gatewayId' => ['title' => '', 'description' => 'The instance ID.'."\n", 'type' => 'string', 'example' => 'gw-cpv4sqdl****'],
'modelCategory' => [
- 'visibility' => 'Public',
'type' => 'string',
- 'backendName' => 'modelCategory',
'description' => 'Model category',
'example' => 'Text',
+ 'enumValueTitles' => ['Others' => 'Others', 'Video' => 'Video', 'MultiModal' => 'MultiModal', 'Embedding' => 'Embedding', 'Text' => 'Text', 'Image' => 'Image', 'Audio' => 'Audio', 'Rerank' => 'Rerank'],
+ 'title' => '',
],
'protocols' => [
'title' => '',
'description' => 'The protocols.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'The protocol.'."\n"
@@ -2284,35 +1710,22 @@
."\n"
.'* HTTPS'."\n"
.'* HTTP'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'HTTPS' => 'HTTPS',
- 'HTTP' => 'HTTP',
- ],
+ 'enumValueTitles' => ['HTTPS' => 'HTTPS', 'HTTP' => 'HTTP'],
'example' => 'HTTP',
- 'extendType' => 'true',
+ 'title' => '',
],
- 'backendName' => 'protocols',
+ 'example' => '',
],
'environments' => [
'title' => '',
'description' => 'The API environment information.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'The information about an environment.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'environmentId' => [
- 'title' => '',
- 'description' => 'The environment ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'env-xxx',
- 'backendName' => 'environmentId',
- ],
+ 'environmentId' => ['title' => '', 'description' => 'The environment ID.'."\n", 'type' => 'string', 'example' => 'env-xxx'],
'backendScene' => [
'title' => '',
'description' => 'The publishing scenario.'."\n"
@@ -2324,17 +1737,9 @@
.'* MultiServiceByContent'."\n"
.'* MultiServiceByTag'."\n"
.'* Mock'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'SingleService' => '',
- 'MultiServiceByRatio' => '',
- 'MultiServiceByContent' => '',
- 'MultiServiceByTag' => '',
- 'Mock' => 'Mock',
- ],
+ 'enumValueTitles' => ['SingleService' => '', 'MultiServiceByRatio' => '', 'MultiServiceByContent' => '', 'MultiServiceByTag' => '', 'Mock' => 'Mock'],
'example' => 'SingleService',
- 'backendName' => 'backendScene',
],
'backendType' => [
'title' => '',
@@ -2346,214 +1751,80 @@
.'* Service: an existing service'."\n"
.'* VIP: a fixed IP address'."\n"
.'* CloudProduct: a cloud service'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'DNS' => '',
- 'Service' => '',
- 'VIP' => '',
- 'CloudProduct' => '',
- ],
+ 'enumValueTitles' => ['DNS' => '', 'Service' => '', 'VIP' => '', 'CloudProduct' => ''],
'example' => 'Service',
- 'backendName' => 'backendType',
],
'serviceConfigs' => [
'title' => '',
'description' => 'The configurations of an existing service.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'gatewayServiceId' => [
- 'title' => '',
- 'description' => 'The service ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gs-xxx',
- 'backendName' => 'gatewayServiceId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The service name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'demo-service',
- 'backendName' => 'name',
- ],
- 'protocol' => [
- 'title' => '',
- 'description' => 'The protocol.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'HTTP',
- 'backendName' => 'protocol',
- ],
- 'port' => [
- 'title' => '',
- 'description' => 'The service port.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '8080',
- 'backendName' => 'port',
- ],
- 'weight' => [
- 'title' => '',
- 'description' => 'The service weight.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '100',
- 'backendName' => 'weight',
- ],
- 'version' => [
- 'title' => '',
- 'description' => 'The version of the microservice.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'v1',
- 'backendName' => 'version',
- ],
- 'match' => [
- 'title' => '',
- 'description' => 'The matching conditions.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'match',
- '$ref' => '#/components/schemas/HttpApiBackendMatchConditions',
- ],
- 'serviceId' => [
- 'title' => '',
- 'description' => 'The service ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'svc-xxx',
- 'backendName' => 'serviceId',
- ],
+ 'gatewayServiceId' => ['title' => '', 'description' => 'The service ID.'."\n", 'type' => 'string', 'example' => 'gs-xxx'],
+ 'name' => ['title' => '', 'description' => 'The service name.'."\n", 'type' => 'string', 'example' => 'demo-service'],
+ 'protocol' => ['title' => '', 'description' => 'The protocol.'."\n", 'type' => 'string', 'example' => 'HTTP'],
+ 'port' => ['title' => '', 'description' => 'The service port.'."\n", 'type' => 'string', 'example' => '8080'],
+ 'weight' => ['title' => '', 'description' => 'The service weight.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '100'],
+ 'version' => ['title' => '', 'description' => 'The version of the microservice.'."\n", 'type' => 'string', 'example' => 'v1'],
+ 'match' => ['title' => '', 'description' => 'The matching conditions.'."\n", '$ref' => '#/components/schemas/HttpApiBackendMatchConditions', 'example' => ''],
+ 'serviceId' => ['title' => '', 'description' => 'The service ID.'."\n", 'type' => 'string', 'example' => 'svc-xxx'],
],
- 'extendType' => 'true',
'description' => 'object',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'serviceConfigs',
+ 'example' => '',
],
'customDomains' => [
'title' => '',
'description' => 'The custom domain names.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'description' => 'The domain name information.'."\n",
- 'visibility' => 'Public',
- 'extendType' => 'true',
- '$ref' => '#/components/schemas/HttpApiDomainInfo',
- ],
- 'backendName' => 'customDomains',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The environment name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'test',
- 'backendName' => 'name',
- ],
- 'alias' => [
- 'title' => '',
- 'description' => 'The environment alias.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'test',
- 'backendName' => 'alias',
+ 'items' => ['description' => 'The domain name information.'."\n", '$ref' => '#/components/schemas/HttpApiDomainInfo', 'title' => '', 'example' => ''],
+ 'example' => '',
],
+ 'name' => ['title' => '', 'description' => 'The environment name.'."\n", 'type' => 'string', 'example' => 'test'],
+ 'alias' => ['title' => '', 'description' => 'The environment alias.'."\n", 'type' => 'string', 'example' => 'test'],
'gatewayInfo' => [
'title' => '',
'description' => 'The information about the gateway instance to which the environment belongs.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'gatewayId' => [
- 'title' => '',
- 'description' => 'The instance ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gw-xxx',
- 'backendName' => 'gatewayId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The instance name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'test',
- 'backendName' => 'name',
- ],
+ 'gatewayId' => ['title' => '', 'description' => 'The instance ID.'."\n", 'type' => 'string', 'example' => 'gw-xxx'],
+ 'name' => ['title' => '', 'description' => 'The instance name.'."\n", 'type' => 'string', 'example' => 'test'],
+ 'gatewayEdition' => ['title' => '', 'type' => 'string', 'example' => 'MultiTenantServerless', 'description' => ''],
],
- 'backendName' => 'gatewayInfo',
- ],
- 'deployStatus' => [
- 'title' => '',
- 'description' => 'The publishing status of the API in the current environment.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Deployed',
- 'backendName' => 'deployStatus',
+ 'example' => '',
],
+ 'deployStatus' => ['title' => '', 'description' => 'The publishing status of the API in the current environment.'."\n", 'type' => 'string', 'example' => 'Deployed'],
'subDomains' => [
'title' => '',
'description' => 'The default domain names of the environment.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'domainId' => [
- 'title' => '',
- 'description' => 'The domain name ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'd-xxx',
- 'backendName' => 'domainId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The domain name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'www.example.com',
- 'backendName' => 'name',
- ],
- 'protocol' => [
- 'title' => '',
- 'description' => 'The communication protocol.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'HTTP',
- 'backendName' => 'protocol',
- ],
- 'networkType' => [
- 'title' => '',
- 'description' => 'The network type.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Internet',
- 'backendName' => 'networkType',
- ],
+ 'domainId' => ['title' => '', 'description' => 'The domain name ID.'."\n", 'type' => 'string', 'example' => 'd-xxx'],
+ 'name' => ['title' => '', 'description' => 'The domain name.'."\n", 'type' => 'string', 'example' => 'www.example.com'],
+ 'protocol' => ['title' => '', 'description' => 'The communication protocol.'."\n", 'type' => 'string', 'example' => 'HTTP'],
+ 'networkType' => ['title' => '', 'description' => 'The network type.'."\n", 'type' => 'string', 'example' => 'Internet'],
],
- 'extendType' => 'true',
'description' => 'object',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'subDomains',
+ 'example' => '',
],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'environments',
+ 'example' => '',
],
'aiProtocols' => [
'title' => '',
'description' => 'The AI protocols.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'The AI protocol.'."\n"
@@ -2561,110 +1832,66 @@
.'Valid values:'."\n"
."\n"
.'* OpenAI/v1'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'OpenAI/v1' => 'OpenAI/v1',
- ],
+ 'enumValueTitles' => ['OpenAI/v1' => 'OpenAI/v1'],
'example' => 'OpenAI/v1',
- 'extendType' => 'true',
+ 'title' => '',
],
- 'backendName' => 'aiProtocols',
+ 'example' => '',
],
'deployConfigs' => [
'title' => '',
'description' => 'The API deployment configurations.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'description' => 'The API deployment configuration.'."\n",
- 'visibility' => 'Public',
- 'extendType' => 'true',
- '$ref' => '#/components/schemas/HttpApiDeployConfig',
- ],
- 'backendName' => 'deployConfigs',
+ 'items' => ['description' => 'The API deployment configuration.'."\n", '$ref' => '#/components/schemas/HttpApiDeployConfig', 'title' => '', 'example' => ''],
+ 'example' => '',
],
'deployCntMap' => [
'title' => '',
'description' => 'The API publishing status.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'additionalProperties' => [
'description' => 'object',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'deployedCnt' => [
- 'title' => '',
- 'description' => 'deployedCnt',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '3',
- 'backendName' => 'deployedCnt',
- ],
- 'Cnt' => [
- 'title' => '',
- 'description' => 'Cnt',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '5',
- 'backendName' => 'cnt',
- ],
+ 'deployedCnt' => ['title' => '', 'description' => 'deployedCnt', 'type' => 'integer', 'format' => 'int64', 'example' => '3'],
+ 'cnt' => ['title' => '', 'type' => 'integer', 'format' => 'int64', 'description' => '', 'example' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'deployCntMap',
+ 'example' => '',
],
'agentProtocols' => [
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
- 'visibility' => 'Public',
'type' => 'string',
- 'extendType' => 'true',
'example' => 'DashScope',
'description' => 'string',
+ 'enumValueTitles' => ['DashScope' => 'DashScope', 'Dify' => 'Dify', 'Custom' => 'Custom'],
+ 'title' => '',
],
- 'backendName' => 'agentProtocols',
'description' => 'Agent protocol list',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
'HttpApiBackendMatchCondition' => [
'title' => '',
'description' => 'The configurations of the matching conditions.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'type' => [
'title' => '',
'description' => 'The match type. Query and Header parameters can be matched.'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'Query' => 'Query',
- 'Header' => 'Header',
- ],
+ 'enumValueTitles' => ['Query' => 'Query', 'Header' => 'Header'],
'example' => 'Query',
- 'backendName' => 'type',
- ],
- 'key' => [
- 'title' => '',
- 'description' => 'The key of the matching condition.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'color',
- 'backendName' => 'key',
- ],
- 'value' => [
- 'title' => '',
- 'description' => 'The value of the matching condition.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gray',
- 'backendName' => 'value',
],
+ 'key' => ['title' => '', 'description' => 'The key of the matching condition.'."\n", 'type' => 'string', 'example' => 'color'],
+ 'value' => ['title' => '', 'description' => 'The value of the matching condition.'."\n", 'type' => 'string', 'example' => 'gray'],
'operator' => [
'title' => '',
'description' => 'The operator. Exact match, prefix match, and regular expressions are supported.'."\n"
@@ -2674,1016 +1901,246 @@
.'* equal'."\n"
.'* regex'."\n"
.'* prefix'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'equal' => 'equal',
- 'regex' => 'regex',
- 'prefix' => 'prefix',
- ],
+ 'enumValueTitles' => ['equal' => 'equal', 'regex' => 'regex', 'prefix' => 'prefix'],
'example' => 'equal',
- 'backendName' => 'operator',
],
],
+ 'example' => '',
],
'HttpApiBackendMatchConditions' => [
- 'title' => '',
+ 'title' => 'API发布相关的匹配条件配置。',
'description' => 'The matching condition configurations related to API publishing.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'default' => [
- 'title' => '',
- 'description' => 'Specifies whether the matching condition is the default one.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'default',
- ],
+ 'default' => ['title' => '是否默认匹配条件。', 'description' => 'Specifies whether the matching condition is the default one.'."\n", 'type' => 'boolean', 'example' => 'true'],
'conditions' => [
- 'title' => '',
+ 'title' => '匹配条件。',
'description' => 'The configurations of the matching conditions.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'description' => 'The matching conditions.'."\n",
- 'visibility' => 'Public',
- 'extendType' => 'true',
- '$ref' => '#/components/schemas/HttpApiBackendMatchCondition',
- ],
- 'backendName' => 'conditions',
+ 'items' => ['description' => 'The matching conditions.'."\n", '$ref' => '#/components/schemas/HttpApiBackendMatchCondition', 'title' => '', 'example' => ''],
+ 'example' => '',
],
],
+ 'example' => '',
],
'HttpApiDeployConfig' => [
- 'title' => 'Service ID.',
- 'description' => 'The AI API configurations.'."\n",
- 'visibility' => 'Public',
+ 'title' => '',
+ 'description' => 'The AI API configuration.',
'type' => 'object',
'properties' => [
- 'environmentId' => [
- 'title' => '',
- 'description' => 'The environment ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'env-xxx',
- 'backendName' => 'environmentId',
- ],
+ 'environmentId' => ['title' => '', 'description' => 'The environment ID.', 'type' => 'string', 'example' => 'env-xxx'],
'backendScene' => [
'title' => '',
- 'description' => 'The publishing scenario.'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The publishing scenario.',
+ 'enumValueTitles' => ['SingleService' => 'Single-service publishing.'],
'type' => 'string',
'example' => 'SingleService',
- 'backendName' => 'backendScene',
- ],
- 'autoDeploy' => [
- 'title' => '',
- 'description' => 'Specifies whether to enable automatic deployment.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'autoDeploy',
- ],
- 'gatewayId' => [
- 'title' => '',
- 'description' => 'The instance ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gw-xx',
- 'backendName' => 'gatewayId',
],
- 'routeBackend' => [
- 'description' => 'routeBackend',
- 'visibility' => 'Public',
- 'backendName' => 'routeBackend',
- '$ref' => '#/components/schemas/Backend',
- ],
- 'gatewayInfo' => [
+ 'autoDeploy' => ['title' => '', 'description' => 'Indicates whether auto-deploy is enabled.', 'type' => 'boolean', 'example' => 'true'],
+ 'gatewayId' => ['title' => '', 'description' => 'The gateway instance ID.', 'type' => 'string', 'example' => 'gw-xx'],
+ 'routeBackend' => ['description' => 'The backend service information.', '$ref' => '#/components/schemas/Backend', 'title' => '', 'example' => ''],
+ 'gatewayInfo' => ['title' => '', 'description' => 'The gateway information.', '$ref' => '#/components/schemas/GatewayInfo', 'example' => ''],
+ 'mock' => ['title' => '', 'description' => 'The mock configuration.', '$ref' => '#/components/schemas/HttpApiMockContract', 'example' => ''],
+ 'gatewayType' => ['title' => '', 'description' => 'The gateway type.', 'type' => 'string', 'example' => 'API'],
+ 'customDomainIds' => [
'title' => '',
- 'description' => 'The instance information.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'gatewayInfo',
- '$ref' => '#/components/schemas/GatewayInfo',
+ 'description' => 'The list of custom domain name IDs.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The domain name ID.', 'type' => 'string', 'example' => 'd-xxx', 'title' => ''],
+ 'example' => '',
],
- 'mock' => [
+ 'envDomainIds' => [
'title' => '',
- 'description' => 'The Mock settings.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'mock',
- '$ref' => '#/components/schemas/HttpApiMockContract',
- ],
- 'gatewayType' => [
- 'title' => '网关类型',
- 'description' => '网关类型',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'API',
- 'backendName' => 'gatewayType',
- ],
- 'customDomainIds' => [
- 'title' => 'Whether to auto-deploy.',
- 'description' => 'The IDs of the custom domain names.'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The list of environment domain name IDs. If this parameter is not specified, all environment domain names are bound. An empty array indicates that no environment domain names are bound.',
'type' => 'array',
- 'items' => [
- 'description' => 'The domain name ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'd-xxx',
- 'extendType' => 'true',
- ],
- 'backendName' => 'customDomainIds',
+ 'items' => ['description' => 'The environment domain name ID.', 'type' => 'string', 'title' => '', 'example' => 'd-xxx'],
+ 'example' => '',
],
'serviceConfigs' => [
'title' => '',
- 'description' => 'The service configurations.'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The list of service configurations.',
'type' => 'array',
'items' => [
- 'description' => 'object',
- 'visibility' => 'Public',
+ 'description' => 'The existing service configuration.',
'type' => 'object',
'properties' => [
- 'serviceId' => [
- 'title' => '',
- 'description' => 'The service ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'svc-xxx',
- 'backendName' => 'serviceId',
- ],
- 'weight' => [
- 'title' => '',
- 'description' => 'The service weight.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '100',
- 'backendName' => 'weight',
- ],
- 'modelNamePattern' => [
- 'title' => '',
- 'description' => 'The model name matching rule.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'qwen-*',
- 'backendName' => 'modelNamePattern',
- ],
- 'modelName' => [
- 'title' => '',
- 'description' => 'The model name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'qwen-max',
- 'backendName' => 'modelName',
- ],
- 'intentCode' => [
- 'description' => 'Intent classification code',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'INQUIRY',
- 'backendName' => 'intentCode',
- ],
- 'match' => [
- 'description' => 'Match conditions',
- 'visibility' => 'Public',
- 'backendName' => 'match',
- '$ref' => '#/components/schemas/HttpApiBackendMatchConditions',
- ],
- 'port' => [
- 'description' => 'Service port number',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '80',
- 'backendName' => 'port',
- ],
- 'protocol' => [
- 'description' => 'Service protocol',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'HTTP',
- 'backendName' => 'protocol',
- ],
- 'gatewayServiceId' => [
- 'description' => 'Legacy gateway service ID for backward compatibility',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gw-svc-abc123',
- 'backendName' => 'gatewayServiceId',
- ],
- 'name' => [
- 'description' => 'Service display name',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Qwen-Max-Service',
- 'backendName' => 'name',
- ],
- 'version' => [
- 'description' => 'Service version tag for tag-based routing scenarios',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'v2',
- 'backendName' => 'version',
- ],
+ 'serviceId' => ['title' => '', 'description' => 'The service ID.', 'type' => 'string', 'example' => 'svc-xxx'],
+ 'weight' => ['title' => '', 'description' => 'The service weight.', 'type' => 'integer', 'format' => 'int64', 'example' => '100'],
+ 'modelNamePattern' => ['title' => '', 'description' => 'The model name matching rule.', 'type' => 'string', 'example' => 'qwen-*'],
+ 'modelName' => ['title' => '', 'description' => 'The model name.', 'type' => 'string', 'example' => 'qwen-max'],
+ 'intentCode' => ['description' => 'The intent code.', 'type' => 'string', 'example' => 'INQUIRY', 'title' => ''],
+ 'match' => ['description' => 'The matching condition.', '$ref' => '#/components/schemas/HttpApiBackendMatchConditions', 'title' => '', 'example' => ''],
+ 'port' => ['description' => 'The service port number.', 'type' => 'integer', 'format' => 'int32', 'example' => '80', 'title' => ''],
+ 'protocol' => ['description' => 'The service protocol (HTTP/HTTPS).', 'type' => 'string', 'example' => 'HTTP', 'title' => ''],
+ 'gatewayServiceId' => ['description' => 'The gateway service ID.', 'type' => 'string', 'example' => 'gw-svc-abc123', 'title' => ''],
+ 'name' => ['description' => 'The service display name.', 'type' => 'string', 'example' => 'Qwen-Max-Service', 'title' => ''],
+ 'version' => ['description' => 'The service version label.', 'type' => 'string', 'example' => 'V2', 'title' => ''],
'multiServiceRouteStrategy' => [
- 'description' => 'Multi-service routing strategy type',
- 'visibility' => 'Public',
+ 'description' => 'The multi-service routing strategy type.',
+ 'enumValueTitles' => ['ByWeight' => 'Route by weight.'],
'type' => 'string',
'example' => 'ByWeight',
- 'backendName' => 'multiServiceRouteStrategy',
+ 'title' => '',
],
'observabilityRouteConfig' => [
- 'description' => 'Observability metrics-based routing config',
- 'visibility' => 'Public',
+ 'description' => 'The observability-based routing configuration.',
'type' => 'object',
'properties' => [
'mode' => [
- 'description' => 'Routing mode',
- 'visibility' => 'Public',
+ 'description' => 'The routing mode.',
+ 'enumValueTitles' => ['LeastBusy' => 'Least busy. Routes to the service with the lowest load.', 'LeastFirstTokenLatency' => 'Least first token latency. Routes to the service with the fastest first token response.', 'LeastTotalLatency' => 'Least total latency. Routes to the service with the fastest overall response.'],
'type' => 'string',
- 'enumValueTitles' => [
- 'LeastBusy' => 'LeastBusy',
- 'LeastFirstTokenLatency' => 'LeastFirstTokenLatency',
- 'LeastTotalLatency' => 'LeastTotalLatency',
- ],
'example' => 'LeastBusy',
- 'backendName' => 'mode',
- ],
- 'rateLimit' => [
- 'description' => 'Max traffic ratio per single service',
- 'visibility' => 'Public',
- 'type' => 'number',
- 'format' => 'float',
- 'example' => '0.8',
- 'backendName' => 'rateLimit',
- ],
- 'queueSize' => [
- 'description' => 'Queue size',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '100',
- 'backendName' => 'queueSize',
+ 'title' => '',
],
+ 'rateLimit' => ['description' => 'The maximum traffic ratio for a single service.', 'type' => 'number', 'format' => 'float', 'example' => '0.8', 'title' => ''],
+ 'queueSize' => ['description' => 'The queue size.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''],
],
- 'backendName' => 'observabilityRouteConfig',
+ 'title' => '',
+ 'example' => '',
],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'serviceConfigs',
+ 'example' => '',
],
'policyConfigs' => [
'title' => '',
- 'description' => 'The policy configurations.'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The list of policy configurations.',
'type' => 'array',
'items' => [
- 'description' => 'object',
- 'visibility' => 'Public',
+ 'description' => 'The list of policy configurations.',
+ 'type' => 'object',
+ 'properties' => [],
+ 'title' => '',
+ 'example' => '',
+ '$ref' => '#/components/schemas/HttpApiPolicyConfigs',
+ ],
+ 'example' => '',
+ ],
+ 'customDomainInfos' => [
+ 'title' => '',
+ 'description' => 'The list of custom domain name information.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list of custom domain name information.',
'type' => 'object',
'properties' => [
- 'type' => [
- 'title' => '',
- 'description' => 'The type of the policy. Valid values:'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'AiFallback',
- 'backendName' => 'type',
- ],
- 'enable' => [
- 'title' => '',
- 'description' => 'Specifies whether to enable the policy.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'enable',
- ],
- 'aiFallbackConfig' => [
- 'title' => '',
- 'description' => 'The fallback configurations'."\n",
- 'visibility' => 'Public',
- 'type' => 'object',
- 'properties' => [
- 'serviceConfigs' => [
- 'title' => '服务配置列表',
- 'description' => 'List of fallback service configurations',
- 'visibility' => 'Public',
- 'type' => 'array',
- 'items' => [
- 'description' => 'object',
- 'visibility' => 'Public',
- 'type' => 'object',
- 'properties' => [
- 'serviceId' => [
- 'title' => '服务id',
- 'description' => 'Service ID for fallback',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'svc-******',
- 'backendName' => 'serviceId',
- ],
- 'targetModelName' => [
- 'title' => 'targetModelName',
- 'description' => 'targetModelName',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gpt-4/llama3-70b',
- 'backendName' => 'targetModelName',
- ],
- ],
- 'extendType' => 'true',
- ],
- 'backendName' => 'serviceConfigs',
- ],
- ],
- 'backendName' => 'aiFallbackConfig',
- ],
- 'aiSecurityGuardConfig' => [
- 'description' => 'AI Security Guard configuration',
- 'visibility' => 'Public',
- 'type' => 'object',
- 'properties' => [
- 'serviceAddress' => [
- 'description' => 'Security guard service address',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'https://api.example.com/v1',
- 'backendName' => 'serviceAddress',
- ],
- 'checkRequest' => [
- 'description' => 'Whether to check request content',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'checkRequest',
- ],
- 'checkResponse' => [
- 'description' => 'Whether to check response content',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'checkResponse',
- ],
- 'checkRequestImage' => [
- 'description' => 'Whether to check request content',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'checkRequestImage',
- ],
- 'checkResponseImage' => [
- 'description' => 'Whether to check response content',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'checkResponseImage',
- ],
- 'requestCheckService' => [
- 'description' => 'Request check service name',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'https://checker.example.com/validate-request',
- 'backendName' => 'requestCheckService',
- ],
- 'responseCheckService' => [
- 'description' => 'Response check service name',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'https://checker.example.com/validate-response',
- 'backendName' => 'responseCheckService',
- ],
- 'requestImageCheckService' => [
- 'description' => 'Request check service name',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'https://image-checker.example.com/scan',
- 'backendName' => 'requestImageCheckService',
- ],
- 'responseImageCheckService' => [
- 'description' => 'Response check service name',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'https://image-checker.example.com/scan-response',
- 'backendName' => 'responseImageCheckService',
- ],
- 'riskAlertLevel' => [
- 'description' => 'Risk alert level for content moderation',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'low/medium/high',
- 'backendName' => 'riskAlertLevel',
- ],
- 'riskConfig' => [
- 'description' => 'riskConfig',
- 'visibility' => 'Public',
- 'type' => 'array',
- 'items' => [
- 'description' => 'object',
- 'visibility' => 'Public',
- 'type' => 'object',
- 'properties' => [
- 'type' => [
- 'description' => 'Risk type identifier',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'K8S',
- 'backendName' => 'type',
- ],
- 'level' => [
- 'description' => 'Risk alert level',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Critical',
- 'backendName' => 'level',
- ],
- 'consumerRules' => [
- 'description' => 'Consumer-specific rules',
- 'visibility' => 'Public',
- 'type' => 'object',
- 'properties' => [
- 'pattern' => [
- 'description' => 'Pattern for matching',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'first',
- 'backendName' => 'pattern',
- ],
- 'matchType' => [
- 'description' => 'Match type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'term',
- 'backendName' => 'matchType',
- ],
- ],
- 'backendName' => 'consumerRules',
- ],
- ],
- 'extendType' => 'true',
- ],
- 'backendName' => 'riskConfig',
- ],
- 'bufferLimit' => [
- 'description' => 'bufferLimit',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '50',
- 'backendName' => 'bufferLimit',
- ],
- 'consumerRequestCheckService' => [
- 'description' => 'Consumer-specific request check configs',
- 'visibility' => 'Public',
- 'type' => 'array',
- 'items' => [
- 'visibility' => 'Public',
- 'type' => 'object',
- 'properties' => [
- 'name' => [
- 'description' => 'Consumer name for matching',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'API',
- 'backendName' => 'name',
- ],
- 'requestCheckService' => [
- 'description' => 'Request check service name',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'https://checker.example.com/validate',
- 'backendName' => 'requestCheckService',
- ],
- 'requestImageCheckService' => [
- 'description' => 'requestImageCheckService',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'https://image-check.example.com/scan',
- 'backendName' => 'requestImageCheckService',
- ],
- 'matchType' => [
- 'description' => 'Match type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'exact/prefix',
- 'backendName' => 'matchType',
- ],
- 'modalityType' => [
- 'description' => 'Modality type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'text/image',
- 'backendName' => 'modalityType',
- ],
- ],
- 'extendType' => 'true',
- 'description' => 'object',
- ],
- 'backendName' => 'consumerRequestCheckService',
- ],
- 'consumerResponseCheckService' => [
- 'description' => 'Consumer-specific Response check configs',
- 'visibility' => 'Public',
- 'type' => 'array',
- 'items' => [
- 'visibility' => 'Public',
- 'type' => 'object',
- 'properties' => [
- 'name' => [
- 'description' => 'Consumer name for matching',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'AI_API',
- 'backendName' => 'name',
- ],
- 'responseCheckService' => [
- 'description' => 'Response check service name',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'https://checker.example.com/validate-response',
- 'backendName' => 'responseCheckService',
- ],
- 'responseImageCheckService' => [
- 'description' => 'responseImageCheckService',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'https://image-check.example.com/scan-response',
- 'backendName' => 'responseImageCheckService',
- ],
- 'matchType' => [
- 'description' => 'Match type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'term',
- 'backendName' => 'matchType',
- ],
- 'modalityType' => [
- 'description' => 'Modality type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'text/image',
- 'backendName' => 'modalityType',
- ],
- ],
- 'extendType' => 'true',
- 'description' => 'object',
- ],
- 'backendName' => 'consumerResponseCheckService',
- ],
- 'consumerRiskLevel' => [
- 'description' => 'Consumer-specific risk level configs',
- 'visibility' => 'Public',
- 'type' => 'array',
- 'items' => [
- 'visibility' => 'Public',
- 'type' => 'object',
- 'properties' => [
- 'name' => [
- 'description' => 'Consumer name for matching',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'APIG-UI',
- 'backendName' => 'name',
- ],
- 'matchType' => [
- 'description' => 'Match type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'term',
- 'backendName' => 'matchType',
- ],
- 'type' => [
- 'description' => 'Risk type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'K8S',
- 'backendName' => 'type',
- ],
- 'level' => [
- 'description' => 'Risk alert level',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Critical',
- 'backendName' => 'level',
- ],
- ],
- 'extendType' => 'true',
- 'description' => 'object',
- ],
- 'backendName' => 'consumerRiskLevel',
- ],
- ],
- 'backendName' => 'aiSecurityGuardConfig',
- ],
- 'aiTokenRateLimitConfig' => [
- 'description' => 'AI Token Rate Limit configuration',
- 'visibility' => 'Public',
- 'type' => 'object',
- 'properties' => [
- 'rules' => [
- 'description' => 'List of rate limit rules',
- 'visibility' => 'Public',
- 'type' => 'array',
- 'items' => [
- 'description' => 'object',
- 'visibility' => 'Public',
- 'type' => 'object',
- 'properties' => [
- 'limitType' => [
- 'description' => 'Limit type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'request/token',
- 'backendName' => 'limitType',
- 'enum' => [
- 'Header',
- 'Parameter',
- 'Consumer',
- 'Cookie',
- 'IP',
- 'Request',
- 'Concurrency',
- 'Model',
- 'Global',
- ],
- ],
- 'matchKey' => [
- 'description' => 'Match key',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'user_id/api_path',
- 'backendName' => 'matchKey',
- ],
- 'matchType' => [
- 'description' => 'Match type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'term',
- 'backendName' => 'matchType',
- 'enum' => [
- 'Exact',
- 'Prefix',
- 'Regex',
- 'All',
- 'IP',
- ],
- ],
- 'matchValue' => [
- 'description' => 'Match value',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'user123',
- 'backendName' => 'matchValue',
- ],
- 'limitMode' => [
- 'description' => 'Limit mode',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'local',
- 'backendName' => 'limitMode',
- 'enum' => [
- 'TokenPerSecond',
- 'TokenPerMinute',
- 'TokenPerHour',
- 'TokenPerDay',
- 'RequestPerSecond',
- 'RequestPerMinute',
- 'RequestPerHour',
- 'RequestPerDay',
- 'ConcurrencyLimit',
- ],
- ],
- 'limitValue' => [
- 'description' => 'Limit value',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '100',
- 'backendName' => 'limitValue',
- ],
- ],
- 'extendType' => 'true',
- ],
- 'backendName' => 'rules',
- ],
- 'globalRules' => [
- 'description' => 'List of global rate limit rules',
- 'visibility' => 'Public',
- 'type' => 'array',
- 'items' => [
- 'description' => 'object',
- 'visibility' => 'Public',
- 'type' => 'object',
- 'properties' => [
- 'limitType' => [
- 'description' => 'Limit type for global rules',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'request',
- 'backendName' => 'limitType',
- 'enum' => [
- 'Header',
- 'Parameter',
- 'Consumer',
- 'Cookie',
- 'IP',
- 'Request',
- 'Concurrency',
- 'Model',
- 'Global',
- ],
- ],
- 'matchKey' => [
- 'description' => 'Match key',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'user_id',
- 'backendName' => 'matchKey',
- ],
- 'matchType' => [
- 'description' => 'Match type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'term',
- 'backendName' => 'matchType',
- 'enum' => [
- 'Exact',
- 'Prefix',
- 'Regex',
- 'All',
- 'IP',
- ],
- ],
- 'matchValue' => [
- 'description' => 'Match value',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'user123',
- 'backendName' => 'matchValue',
- ],
- 'limitMode' => [
- 'description' => 'Limit mode for global rules',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'local',
- 'backendName' => 'limitMode',
- 'enum' => [
- 'TokenPerSecond',
- 'TokenPerMinute',
- 'TokenPerHour',
- 'TokenPerDay',
- 'RequestPerSecond',
- 'RequestPerMinute',
- 'RequestPerHour',
- 'RequestPerDay',
- 'ConcurrencyLimit',
- ],
- ],
- 'limitValue' => [
- 'description' => 'Limit value for global rules',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '100',
- 'backendName' => 'limitValue',
- ],
- ],
- 'extendType' => 'true',
- ],
- 'backendName' => 'rules',
- ],
- 'enableGlobalRules' => [
- 'description' => 'Whether to enable global rate limit rules',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'enableGlobalRules',
- ],
- ],
- 'backendName' => 'aiTokenRateLimitConfig',
- ],
+ 'domainId' => ['title' => '', 'description' => 'The domain name ID.', 'type' => 'string', 'example' => 'd-cshee6dlhtgk******'],
+ 'name' => ['title' => '', 'description' => 'The domain name.', 'type' => 'string', 'example' => 'hello-server.com'],
+ 'protocol' => ['title' => '', 'description' => 'The protocol.', 'type' => 'string', 'example' => 'HTTP'],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'policyConfigs',
+ 'example' => '',
],
- 'customDomainInfos' => [
+ 'envDomainInfos' => [
'title' => '',
- 'description' => 'The information about the custom domain names.'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The list of environment domain name information.',
'type' => 'array',
'items' => [
- 'description' => 'object',
- 'visibility' => 'Public',
+ 'description' => 'The environment domain name information.',
'type' => 'object',
'properties' => [
- 'domainId' => [
- 'title' => '',
- 'description' => 'The domain name ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'd-cshee6dlhtgkf4muio3g',
- 'backendName' => 'domainId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The domain name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'hello-server.com',
- 'backendName' => 'name',
- ],
- 'protocol' => [
- 'title' => '',
- 'description' => 'The protocol.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'HTTP',
- 'backendName' => 'protocol',
- ],
+ 'domainId' => ['title' => '', 'description' => 'The domain name ID.', 'type' => 'string', 'example' => 'd-env-xxx'],
+ 'name' => ['title' => '', 'description' => 'The domain name.', 'type' => 'string', 'example' => 'api.example.com'],
+ 'protocol' => ['title' => '', 'description' => 'The protocol.', 'type' => 'string', 'example' => 'HTTPS'],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'customDomainInfos',
+ 'example' => '',
],
'subDomains' => [
'title' => '',
- 'description' => 'The information about the sub-domain names.'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The list of subdomain information.',
'type' => 'array',
'items' => [
- 'description' => 'object',
- 'visibility' => 'Public',
+ 'description' => 'The network type.',
'type' => 'object',
'properties' => [
- 'domainId' => [
- 'title' => '',
- 'description' => 'The domain name ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'd-csmn42um1hksudfk9eng',
- 'backendName' => 'domainId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The domain name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'test',
- 'backendName' => 'name',
- ],
- 'protocol' => [
- 'title' => '',
- 'description' => 'The protocol.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'HTTP',
- 'backendName' => 'protocol',
- ],
- 'networkType' => [
- 'title' => '',
- 'description' => 'The network type.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Intranet',
- 'backendName' => 'networkType',
- ],
+ 'domainId' => ['title' => '', 'description' => 'The domain name ID.', 'type' => 'string', 'example' => 'd-csmn42um******'],
+ 'name' => ['title' => '', 'description' => 'The domain name.', 'type' => 'string', 'example' => 'test'],
+ 'protocol' => ['title' => '', 'description' => 'The protocol.', 'type' => 'string', 'example' => 'HTTP'],
+ 'networkType' => ['title' => '', 'description' => 'The network type.', 'type' => 'string', 'example' => 'Intranet'],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'subDomains',
+ 'example' => '',
+ ],
+ 'builtinRouteNames' => [
+ 'description' => 'The list of built-in route names.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The list.', 'type' => 'string', 'title' => '', 'example' => '["chat","completions"]'],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
'HttpApiDomainInfo' => [
- 'title' => '',
+ 'title' => 'API相关的域名信息。',
'description' => 'The domain name information.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'domainId' => [
- 'title' => '',
- 'description' => 'The domain name ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'd-xxx',
- 'backendName' => 'domainId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The domain name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'www.example.com',
- 'backendName' => 'name',
- ],
+ 'domainId' => ['title' => '域名ID。', 'description' => 'The domain name ID.'."\n", 'type' => 'string', 'example' => 'd-xxx'],
+ 'name' => ['title' => '域名。', 'description' => 'The domain name.'."\n", 'type' => 'string', 'example' => 'www.example.com'],
'protocol' => [
- 'title' => '',
+ 'title' => '协议。',
'description' => 'The protocol.'."\n"
."\n"
.'Valid values:'."\n"
."\n"
.'* HTTPS'."\n"
.'* HTTP'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'HTTPS' => 'HTTPS',
- 'HTTP' => 'HTTP',
- ],
+ 'enumValueTitles' => ['HTTPS' => 'HTTPS', 'HTTP' => 'HTTP'],
'example' => 'HTTP',
- 'backendName' => 'protocol',
],
],
+ 'example' => '',
],
'HttpApiInfoByName' => [
'title' => 'HttpApiInfoByName',
'description' => 'The APIs.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'name' => [
- 'title' => '',
- 'description' => 'The API name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'test-api',
- 'backendName' => 'name',
- ],
- 'versionEnabled' => [
- 'title' => '',
- 'description' => 'Specifies whether to enable versioning.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'versionEnabled',
- ],
+ 'name' => ['title' => 'API名称。', 'description' => 'The API name.'."\n", 'type' => 'string', 'example' => 'test-api'],
+ 'versionEnabled' => ['title' => '是否开启版本管理。', 'description' => 'Specifies whether to enable versioning.'."\n", 'type' => 'boolean', 'example' => 'true'],
'versionedHttpApis' => [
- 'title' => '',
+ 'title' => '版本化的API版本信息。',
'description' => 'The information about the versioned API.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'description' => 'The API information.'."\n",
- 'visibility' => 'Public',
- 'extendType' => 'true',
- '$ref' => '#/components/schemas/HttpApiApiInfo',
- ],
- 'backendName' => 'versionedHttpApis',
- ],
- 'type' => [
- 'title' => '',
- 'description' => 'The API type.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Http',
- 'backendName' => 'type',
+ 'items' => ['description' => 'The API information.'."\n", '$ref' => '#/components/schemas/HttpApiApiInfo', 'title' => '', 'example' => ''],
+ 'example' => '',
],
+ 'type' => ['title' => 'Http API的类型', 'description' => 'The API type.'."\n", 'type' => 'string', 'example' => 'Http'],
+ 'GatewayId' => ['title' => '网关Id', 'description' => '网关Id', 'type' => 'string', 'example' => 'gw-xx'],
],
+ 'example' => '',
],
'HttpApiMockContract' => [
'title' => 'HttpApiMockContract',
'description' => 'The mocking configuration.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'enable' => [
- 'title' => '',
- 'description' => 'Specifies whether to enable the Mock feature.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'false',
- 'backendName' => 'enable',
- ],
- 'responseCode' => [
- 'title' => '',
- 'description' => 'The response code.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- 'backendName' => 'responseCode',
- ],
- 'responseContent' => [
- 'title' => '',
- 'description' => 'The response content.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Mock content.',
- 'backendName' => 'responseContent',
- ],
+ 'enable' => ['title' => '是否启用Mock。', 'description' => 'Specifies whether to enable the Mock feature.'."\n", 'type' => 'boolean', 'example' => 'false'],
+ 'responseCode' => ['title' => '响应码。', 'description' => 'The response code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'responseContent' => ['title' => '响应内容。', 'description' => 'The response content.'."\n", 'type' => 'string', 'example' => 'Mock测试'],
],
+ 'example' => '',
],
'HttpApiOperation' => [
'title' => 'A short description of struct',
'description' => 'The operation in the HTTP API definition.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'method' => [
- 'title' => '',
+ 'title' => '方法。',
'description' => 'The HTTP method.'."\n"
."\n"
.'Valid values:'."\n"
@@ -3697,116 +2154,37 @@
.'* OPTIONS'."\n"
.'* PUT'."\n"
.'* PATCH'."\n",
- 'visibility' => 'Public',
'type' => 'string',
'required' => true,
- 'enumValueTitles' => [
- 'TRACE' => 'TRACE',
- 'HEAD' => 'HEAD',
- 'DELETE' => 'DELETE',
- 'POST' => 'POST',
- 'GET' => 'GET',
- 'CONNECT' => 'CONNECT',
- 'OPTIONS' => 'OPTIONS',
- 'PUT' => 'PUT',
- 'PATCH' => 'PATCH',
- ],
+ 'enumValueTitles' => ['TRACE' => 'TRACE', 'HEAD' => 'HEAD', 'DELETE' => 'DELETE', 'POST' => 'POST', 'GET' => 'GET', 'CONNECT' => 'CONNECT', 'OPTIONS' => 'OPTIONS', 'PUT' => 'PUT', 'PATCH' => 'PATCH'],
'example' => 'GET',
- 'backendName' => 'method',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The operation name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'GetUserInfo',
- 'backendName' => 'name',
- ],
- 'path' => [
- 'title' => '',
- 'description' => 'The operation path.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'required' => true,
- 'example' => '/user',
- 'backendName' => 'path',
- ],
- 'description' => [
- 'title' => '',
- 'description' => 'The operation description.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'This is a operation description.',
- 'backendName' => 'description',
- ],
- 'response' => [
- 'title' => '',
- 'description' => 'The response parameters of the operation.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'response',
- '$ref' => '#/components/schemas/HttpApiResponseContract',
- ],
- 'request' => [
- 'title' => '',
- 'description' => 'The request parameters of the operation.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'request',
- '$ref' => '#/components/schemas/HttpApiRequestContract',
- ],
- 'mock' => [
- 'title' => '',
- 'description' => 'The mocking configuration of the operation. This field takes effect only when the API publishing scenario is Mock.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'mock',
- '$ref' => '#/components/schemas/HttpApiMockContract',
- ],
- 'enableAuth' => [
- 'title' => '',
- 'description' => 'Specifies whether to enable authentication.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'backendName' => 'enableAuth',
- 'example' => 'true',
- ],
- 'authConfig' => [
- 'title' => '',
- 'description' => 'The authentication configurations.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'authConfig',
- '$ref' => '#/components/schemas/AuthConfig',
],
+ 'name' => ['title' => '接口名称。', 'description' => 'The operation name.'."\n", 'type' => 'string', 'required' => true, 'example' => 'GetUserInfo'],
+ 'path' => ['title' => '接口路径。', 'description' => 'The operation path.'."\n", 'type' => 'string', 'required' => true, 'example' => '/user'],
+ 'description' => ['title' => '接口描述。', 'description' => 'The operation description.'."\n", 'type' => 'string', 'example' => '获取用户信息'],
+ 'response' => ['title' => '接口响应参数定义。', 'description' => 'The response parameters of the operation.'."\n", '$ref' => '#/components/schemas/HttpApiResponseContract', 'example' => ''],
+ 'request' => ['title' => '接口请求参数定义。', 'description' => 'The request parameters of the operation.'."\n", '$ref' => '#/components/schemas/HttpApiRequestContract', 'example' => ''],
+ 'mock' => ['title' => '接口Mock配置。', 'description' => 'The mocking configuration of the operation. This field takes effect only when the API publishing scenario is Mock.'."\n", '$ref' => '#/components/schemas/HttpApiMockContract', 'example' => ''],
+ 'enableAuth' => ['title' => '是否开启认证', 'description' => 'Specifies whether to enable authentication.'."\n", 'type' => 'boolean', 'example' => 'true'],
+ 'authConfig' => ['title' => '认证配置', 'description' => 'The authentication configurations.'."\n", '$ref' => '#/components/schemas/AuthConfig', 'example' => ''],
'deployConfigs' => [
- 'title' => '',
+ 'title' => '部署配置',
'description' => 'The deployment configurations.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'visibility' => 'Public',
- 'extendType' => 'true',
- '$ref' => '#/components/schemas/HttpApiDeployConfig',
- 'description' => 'object',
- ],
- 'backendName' => 'deployConfigs',
+ 'items' => ['$ref' => '#/components/schemas/HttpApiDeployConfig', 'description' => 'object', 'title' => '', 'example' => ''],
+ 'example' => '',
],
],
+ 'example' => '',
],
'HttpApiOperationInfo' => [
'title' => 'HttpApiOperationInfo',
'description' => 'The operation information.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'operationId' => [
- 'title' => '',
- 'description' => 'The operation ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'op-xxx',
- 'backendName' => 'operationId',
- ],
+ 'operationId' => ['title' => '接口ID。', 'description' => 'The operation ID.'."\n", 'type' => 'string', 'example' => 'op-xxx'],
'method' => [
- 'title' => '',
+ 'title' => '接口方法。',
'description' => 'The HTTP method of the operation.'."\n"
."\n"
.'Valid values:'."\n"
@@ -3820,137 +2198,37 @@
.'* OPTIONS'."\n"
.'* PUT'."\n"
.'* PATCH'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'TRACE' => 'TRACE',
- 'HEAD' => 'HEAD',
- 'DELETE' => 'DELETE',
- 'POST' => 'POST',
- 'GET' => 'GET',
- 'CONNECT' => 'CONNECT',
- 'OPTIONS' => 'OPTIONS',
- 'PUT' => 'PUT',
- 'PATCH' => 'PATCH',
- ],
+ 'enumValueTitles' => ['TRACE' => 'TRACE', 'HEAD' => 'HEAD', 'DELETE' => 'DELETE', 'POST' => 'POST', 'GET' => 'GET', 'CONNECT' => 'CONNECT', 'OPTIONS' => 'OPTIONS', 'PUT' => 'PUT', 'PATCH' => 'PATCH'],
'example' => 'GET',
- 'backendName' => 'method',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The operation name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'GetUserInfo',
- 'backendName' => 'name',
- ],
- 'path' => [
- 'title' => '',
- 'description' => 'The operation path.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '/user/123',
- 'backendName' => 'path',
- ],
- 'description' => [
- 'title' => '',
- 'description' => 'The operation description.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'A example operation.',
- 'backendName' => 'description',
- ],
- 'response' => [
- 'title' => '',
- 'description' => 'The response parameters of the operation.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'response',
- '$ref' => '#/components/schemas/HttpApiResponseContract',
- ],
- 'request' => [
- 'title' => '',
- 'description' => 'The request parameters of the operation.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'request',
- '$ref' => '#/components/schemas/HttpApiRequestContract',
- ],
- 'mock' => [
- 'title' => '',
- 'description' => 'The mocked parameters of the operation.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'mock',
- '$ref' => '#/components/schemas/HttpApiMockContract',
- ],
- 'createTimestamp' => [
- 'title' => '',
- 'description' => 'The creation timestamp.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- 'backendName' => 'createTimestamp',
- ],
- 'enableAuth' => [
- 'title' => '',
- 'description' => 'Specifies whether to enable authentication.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'enableAuth',
- ],
- 'authConfig' => [
- 'description' => 'The authentication configurations of the operation.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'authConfig',
- '$ref' => '#/components/schemas/AuthConfig',
- ],
- 'status' => [
- 'title' => '',
- 'description' => 'The operation publishing status on the instance.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Deployed',
- 'backendName' => 'status',
],
+ 'name' => ['title' => '接口名称。', 'description' => 'The operation name.'."\n", 'type' => 'string', 'example' => 'GetUserInfo'],
+ 'path' => ['title' => '接口路径。', 'description' => 'The operation path.'."\n", 'type' => 'string', 'example' => '/user/123'],
+ 'description' => ['title' => '描述。', 'description' => 'The operation description.'."\n", 'type' => 'string', 'example' => '获取用户信息'],
+ 'response' => ['title' => '接口响应参数定义。', 'description' => 'The response parameters of the operation.'."\n", '$ref' => '#/components/schemas/HttpApiResponseContract', 'example' => ''],
+ 'request' => ['title' => '接口请求参数定义。', 'description' => 'The request parameters of the operation.'."\n", '$ref' => '#/components/schemas/HttpApiRequestContract', 'example' => ''],
+ 'mock' => ['title' => '接口Mock参数配置。', 'description' => 'The mocked parameters of the operation.'."\n", '$ref' => '#/components/schemas/HttpApiMockContract', 'example' => ''],
+ 'createTimestamp' => ['title' => '创建时间戳。', 'description' => 'The creation timestamp.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548'],
+ 'enableAuth' => ['title' => '是否开启认证', 'description' => 'Specifies whether to enable authentication.'."\n", 'type' => 'boolean', 'example' => 'true'],
+ 'authConfig' => ['description' => 'The authentication configurations of the operation.'."\n", '$ref' => '#/components/schemas/AuthConfig', 'title' => '', 'example' => ''],
+ 'status' => ['title' => '网关上接口发布状态', 'description' => 'The operation publishing status on the instance.'."\n", 'type' => 'string', 'example' => 'Deployed'],
'deployConfigs' => [
- 'title' => '',
+ 'title' => '接口后端服务部署信息。',
'description' => 'The backend service deployment information of the operation.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'description' => 'object',
- 'visibility' => 'Public',
- 'extendType' => 'true',
- '$ref' => '#/components/schemas/HttpApiDeployConfig',
- ],
- 'backendName' => 'deployConfigs',
+ 'items' => ['description' => 'object', '$ref' => '#/components/schemas/HttpApiDeployConfig', 'title' => '', 'example' => ''],
+ 'example' => '',
],
],
- 'parseType' => 'struct',
+ 'example' => '',
],
'HttpApiParameter' => [
- 'title' => 'HttpApiParameter',
+ 'title' => '',
'description' => 'The parameter definition.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'name' => [
- 'title' => '',
- 'description' => 'The parameter name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'userId',
- 'backendName' => 'name',
- ],
- 'required' => [
- 'title' => '',
- 'description' => 'Specifies whether the parameter is required.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'required',
- ],
+ 'name' => ['title' => '', 'description' => 'The parameter name.'."\n", 'type' => 'string', 'required' => true, 'example' => 'userId'],
+ 'required' => ['title' => '', 'description' => 'Specifies whether the parameter is required.'."\n", 'type' => 'boolean', 'example' => 'true'],
'type' => [
'title' => '',
'description' => 'The parameter type.'."\n"
@@ -3961,1554 +2239,596 @@
.'* Number'."\n"
.'* String'."\n"
.'* Boolean'."\n",
- 'visibility' => 'Public',
'type' => 'string',
'required' => true,
- 'enumValueTitles' => [
- 'Integer' => 'Integer',
- 'Number' => 'Number',
- 'String' => 'String',
- 'Boolean' => 'Boolean',
- ],
+ 'enumValueTitles' => ['Integer' => 'Integer', 'Number' => 'Number', 'String' => 'String', 'Boolean' => 'Boolean'],
'example' => 'String',
- 'backendName' => 'type',
- ],
- 'defaultValue' => [
- 'title' => '',
- 'description' => 'The default value of the parameter.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '123',
- 'backendName' => 'defaultValue',
- ],
- 'exampleValue' => [
- 'title' => '',
- 'description' => 'The sample value of the parameter.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '123',
- 'backendName' => 'exampleValue',
- ],
- 'description' => [
- 'title' => '',
- 'description' => 'The parameter description.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'The example description.',
- 'backendName' => 'description',
],
+ 'defaultValue' => ['title' => '', 'description' => 'The default value of the parameter.'."\n", 'type' => 'string', 'example' => '123'],
+ 'exampleValue' => ['title' => '', 'description' => 'The sample value of the parameter.'."\n", 'type' => 'string', 'example' => '123'],
+ 'description' => ['title' => '', 'description' => 'The parameter description.'."\n", 'type' => 'string', 'example' => '用户ID'],
],
+ 'example' => '',
],
'HttpApiPolicyConfigs' => [
'description' => 'body',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'type' => [
- 'description' => 'Policy Type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'AiCache',
- 'backendName' => 'type',
- ],
- 'enable' => [
- 'description' => 'Policy Enable',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'enable',
+ 'type' => ['description' => 'Policy Type', 'type' => 'string', 'example' => 'K8S', 'title' => ''],
+ 'enable' => ['description' => 'Policy Enable', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'semanticRouterConfig' => [
+ 'description' => 'SemanticRouterConfig',
+ 'type' => 'object',
+ 'properties' => [
+ 'timeoutMillisecond' => ['description' => 'Timeout in milliseconds', 'type' => 'integer', 'format' => 'int32', 'example' => '2000', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
'aiFallbackConfig' => [
'description' => 'AiFallbackConfig',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'serviceConfigs' => [
'description' => 'List of fallback service configurations',
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'object',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'serviceId' => [
- 'description' => 'Fallback service ID',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'svc-123456',
- 'backendName' => 'serviceId',
- ],
- 'name' => [
- 'description' => 'Service name for frontend display',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'azure.ai',
- 'backendName' => 'name',
- ],
- 'targetModelName' => [
- 'description' => 'Target model name for fallback',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'kimi-fallback-test',
- 'backendName' => 'targetModelName',
- ],
- 'passThroughModelName' => [
- 'description' => 'Whether to pass through the original model name',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'passThroughModelName',
- ],
+ 'serviceId' => ['description' => 'Fallback service ID', 'type' => 'string', 'example' => 'svc-d54fcbm******', 'title' => ''],
+ 'name' => ['description' => 'Service name for frontend display', 'type' => 'string', 'example' => '174174482Z****', 'title' => ''],
+ 'targetModelName' => ['description' => 'Target model name for fallback', 'type' => 'string', 'example' => 'gpt-4o', 'title' => ''],
+ 'passThroughModelName' => ['description' => 'Whether to pass through the original model name', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'serviceConfigs',
- ],
- 'onlyRedirectUpstreamCode' => [
- 'description' => 'Only trigger fallback when backend returns 4xx/5xx status codes',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'onlyRedirectUpstreamCode',
- ],
- 'routeEmbedded' => [
- 'description' => 'Whether the policy is generated from route embedded configuration',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'routeEmbedded',
+ 'title' => '',
+ 'example' => '',
],
+ 'onlyRedirectUpstreamCode' => ['description' => 'Only trigger fallback when backend returns 4xx/5xx status codes', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'routeEmbedded' => ['description' => 'Whether the policy is generated from route embedded configuration', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
- 'backendName' => 'aiFallbackConfig',
+ '$ref' => '#/components/schemas/AiFallbackConfig',
+ 'title' => '',
+ 'example' => '',
],
'aiSecurityGuardConfig' => [
'description' => 'AiSecurityGuardConfig',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'serviceAddress' => [
- 'description' => 'Security guard service endpoint URL',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'https://api.example.com/v1',
- 'backendName' => 'serviceAddress',
- ],
- 'checkRequest' => [
- 'description' => 'Enable request content checking',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'checkRequest',
- ],
- 'checkResponse' => [
- 'description' => 'Enable response content checking',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'checkResponse',
- ],
- 'checkRequestImage' => [
- 'description' => 'Enable request image checking',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'checkRequestImage',
- ],
- 'checkResponseImage' => [
- 'description' => 'Enable response image checking',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'checkResponseImage',
- ],
- 'requestCheckService' => [
- 'description' => 'Request text check service type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'content-moderation-service',
- 'backendName' => 'requestCheckService',
- ],
- 'responseCheckService' => [
- 'description' => 'Response text check service type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'output-moderation-service',
- 'backendName' => 'responseCheckService',
- ],
- 'requestImageCheckService' => [
- 'description' => 'Request image check service type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'image-moderation-service',
- 'backendName' => 'requestImageCheckService',
- ],
- 'responseImageCheckService' => [
- 'description' => 'Response image check service type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'generated-image-scanner',
- 'backendName' => 'responseImageCheckService',
- ],
- 'riskAlertLevel' => [
- 'description' => 'Global risk alert level',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'high',
- 'backendName' => 'riskAlertLevel',
- ],
+ 'serviceAddress' => ['description' => 'Security guard service endpoint URL', 'type' => 'string', 'example' => 'https://api.example.com/v1', 'title' => ''],
+ 'checkRequest' => ['description' => 'Enable request content checking', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'checkResponse' => ['description' => 'Enable response content checking', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'checkRequestImage' => ['description' => 'Enable request image checking', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'checkResponseImage' => ['description' => 'Enable response image checking', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'requestCheckService' => ['description' => 'Request text check service type', 'type' => 'string', 'example' => 'content-moderation-service', 'title' => ''],
+ 'responseCheckService' => ['description' => 'Response text check service type', 'type' => 'string', 'example' => 'output-moderation-service', 'title' => ''],
+ 'requestImageCheckService' => ['description' => 'Request image check service type', 'type' => 'string', 'example' => 'image-moderation-service', 'title' => ''],
+ 'responseImageCheckService' => ['description' => 'Response image check service type', 'type' => 'string', 'example' => 'generated-image-scanner', 'title' => ''],
+ 'riskAlertLevel' => ['description' => 'Global risk alert level', 'type' => 'string', 'example' => 'low', 'title' => ''],
'riskConfig' => [
'description' => 'RiskConfig',
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'object',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'type' => [
- 'description' => 'Risk type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'ContentModeration',
- 'backendName' => 'type',
- ],
- 'level' => [
- 'description' => 'Risk level',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'high',
- 'backendName' => 'level',
- ],
+ 'type' => ['description' => 'Risk type', 'type' => 'string', 'example' => 'K8S', 'title' => ''],
+ 'level' => ['description' => 'Risk level', 'type' => 'string', 'example' => 'max', 'title' => ''],
'consumerRules' => [
'description' => 'consumerRules',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'pattern' => [
- 'description' => 'pattern',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '/v1/chat/*',
- 'backendName' => 'pattern',
- ],
- 'matchType' => [
- 'description' => 'matchType',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Exact',
- 'backendName' => 'matchType',
- ],
+ 'pattern' => ['description' => 'pattern', 'type' => 'string', 'example' => '/v1/chat/*', 'title' => ''],
+ 'matchType' => ['description' => 'matchType', 'type' => 'string', 'example' => 'All', 'title' => ''],
],
- 'backendName' => 'consumerRules',
+ 'title' => '',
+ 'example' => '',
],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'riskConfig',
- ],
- 'bufferLimit' => [
- 'description' => 'Buffer limit for content checking',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1000',
- 'backendName' => 'bufferLimit',
+ 'title' => '',
+ 'example' => '',
],
+ 'bufferLimit' => ['description' => 'Buffer limit for content checking', 'type' => 'integer', 'format' => 'int32', 'example' => '1024', 'title' => ''],
'pluginStatus' => [
'description' => 'pluginStatus',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'errorLogs' => [
'description' => 'errorLogs',
- 'visibility' => 'Public',
'type' => 'object',
- 'additionalProperties' => [
- 'description' => 'string',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Failed to connect to server',
- ],
- 'backendName' => 'errorLogs',
- ],
- 'serviceHealthy' => [
- 'description' => 'serviceHealthy',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'serviceHealthy',
- ],
- 'pluginId' => [
- 'description' => 'pluginId',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'pl-123456',
- 'backendName' => 'pluginId',
+ 'additionalProperties' => ['description' => 'string', 'type' => 'string', 'example' => 'Failed to connect to server', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
+ 'serviceHealthy' => ['description' => 'serviceHealthy', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'pluginId' => ['description' => 'pluginId', 'type' => 'string', 'example' => 'pl-cvmuoiem1h******', 'title' => ''],
],
- 'backendName' => 'pluginStatus',
+ 'title' => '',
+ 'example' => '',
],
'consumerRequestCheckService' => [
'description' => 'consumerRequestCheckService',
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'object',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'name' => [
- 'description' => 'Consumer name',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'consumer-1',
- 'backendName' => 'name',
- ],
- 'requestCheckService' => [
- 'description' => 'requestCheckService',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'query_security_check',
- 'backendName' => 'requestCheckService',
- ],
- 'requestImageCheckService' => [
- 'description' => 'requestImageCheckService',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'nsfw-image-detector',
- 'backendName' => 'requestImageCheckService',
- ],
- 'matchType' => [
- 'description' => 'Match type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Exact',
- 'backendName' => 'matchType',
- ],
- 'modalityType' => [
- 'description' => 'Modality type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Text',
- 'backendName' => 'modalityType',
- ],
+ 'name' => ['description' => 'Consumer name', 'type' => 'string', 'example' => 'oldUI-17590******', 'title' => ''],
+ 'requestCheckService' => ['description' => 'requestCheckService', 'type' => 'string', 'example' => 'rate-limit-check', 'title' => ''],
+ 'requestImageCheckService' => ['description' => 'requestImageCheckService', 'type' => 'string', 'example' => 'nsfw-image-detector', 'title' => ''],
+ 'matchType' => ['description' => 'Match type', 'type' => 'string', 'example' => 'all', 'title' => ''],
+ 'modalityType' => ['description' => 'Modality type', 'type' => 'string', 'example' => 'text', 'title' => ''],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'consumerRequestCheckService',
+ 'title' => '',
+ 'example' => '',
],
'consumerResponseCheckService' => [
'description' => 'consumerResponseCheckService',
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'object',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'name' => [
- 'description' => 'Consumer name',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'consumer-1',
- 'backendName' => 'name',
- ],
- 'responseCheckService' => [
- 'description' => 'responseCheckService',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'response_security_check',
- 'backendName' => 'responseCheckService',
- ],
- 'responseImageCheckService' => [
- 'description' => 'responseImageCheckService',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'watermark-detector',
- 'backendName' => 'responseImageCheckService',
- ],
- 'matchType' => [
- 'description' => 'Match type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Exact',
- 'backendName' => 'matchType',
- ],
- 'modalityType' => [
- 'description' => 'Modality type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Text',
- 'backendName' => 'modalityType',
- ],
+ 'name' => ['description' => 'Consumer name', 'type' => 'string', 'example' => '1744250******', 'title' => ''],
+ 'responseCheckService' => ['description' => 'responseCheckService', 'type' => 'string', 'example' => 'pii-redaction', 'title' => ''],
+ 'responseImageCheckService' => ['description' => 'responseImageCheckService', 'type' => 'string', 'example' => 'watermark-detector', 'title' => ''],
+ 'matchType' => ['description' => 'Match type', 'type' => 'string', 'example' => 'all', 'title' => ''],
+ 'modalityType' => ['description' => 'Modality type', 'type' => 'string', 'example' => 'text', 'title' => ''],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'consumerResponseCheckService',
+ 'title' => '',
+ 'example' => '',
],
'consumerRiskLevel' => [
'description' => 'consumerRiskLevel',
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'object',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'name' => [
- 'description' => 'Consumer name',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'consumer-1',
- 'backendName' => 'name',
- ],
- 'matchType' => [
- 'description' => 'Match type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Exact',
- 'backendName' => 'matchType',
- ],
- 'type' => [
- 'description' => 'Risk type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'ContentModeration',
- 'backendName' => 'type',
- ],
- 'level' => [
- 'description' => 'Risk level',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'high',
- 'backendName' => 'level',
- ],
+ 'name' => ['description' => 'Consumer name', 'type' => 'string', 'example' => '1742090******', 'title' => ''],
+ 'matchType' => ['description' => 'Match type', 'type' => 'string', 'example' => 'all', 'title' => ''],
+ 'type' => ['description' => 'Risk type', 'type' => 'string', 'example' => 'K8S', 'title' => ''],
+ 'level' => ['description' => 'Risk level', 'type' => 'string', 'example' => 'max', 'title' => ''],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'consumerRiskLevel',
+ 'title' => '',
+ 'example' => '',
],
],
- 'backendName' => 'aiSecurityGuardConfig',
+ '$ref' => '#/components/schemas/AiSecurityGuardConfig',
+ 'title' => '',
+ 'example' => '',
],
'aiTokenRateLimitConfig' => [
'description' => 'AiTokenRateLimitConfig',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'rules' => [
'description' => 'List of rate limit rules',
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'object',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'limitType' => [
- 'description' => 'Limit type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Header',
- 'backendName' => 'limitType',
- ],
- 'matchKey' => [
- 'description' => 'Match key',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'x-api-key',
- 'backendName' => 'matchKey',
- ],
- 'matchType' => [
- 'description' => 'Match type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Exact',
- 'backendName' => 'matchType',
- ],
- 'matchValue' => [
- 'description' => 'Match value',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'test-value',
- 'backendName' => 'matchValue',
- ],
- 'limitMode' => [
- 'description' => 'Limit mode',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'TokenPerSecond',
- 'backendName' => 'limitMode',
- ],
- 'limitValue' => [
- 'description' => 'Limit value',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '100',
- 'backendName' => 'limitValue',
- ],
+ 'limitType' => ['description' => 'Limit type', 'type' => 'string', 'example' => 'fixed', 'title' => ''],
+ 'matchKey' => ['description' => 'Match key', 'type' => 'string', 'example' => 'user_id', 'title' => ''],
+ 'matchType' => ['description' => 'Match type', 'type' => 'string', 'example' => 'all', 'title' => ''],
+ 'matchValue' => ['description' => 'Match value', 'type' => 'string', 'example' => '12345', 'title' => ''],
+ 'limitMode' => ['description' => 'Limit mode', 'type' => 'string', 'example' => 'local', 'title' => ''],
+ 'limitValue' => ['description' => 'Limit value', 'type' => 'string', 'example' => '100', 'title' => ''],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'rules',
- ],
- 'enableGlobalRules' => [
- 'description' => 'Enable global rate limit rules',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'enableGlobalRules',
+ 'title' => '',
+ 'example' => '',
],
+ 'enableGlobalRules' => ['description' => 'Enable global rate limit rules', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'globalRules' => [
'description' => 'List of global rate limit rules',
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'object',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'limitType' => [
- 'description' => 'Limit type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Global',
- 'backendName' => 'limitType',
- ],
- 'matchKey' => [
- 'description' => 'Match key',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'user_id'."\n",
- 'backendName' => 'matchKey',
- ],
- 'matchType' => [
- 'description' => 'Match type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Exact',
- 'backendName' => 'matchType',
- ],
- 'matchValue' => [
- 'description' => 'Match value',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '12345',
- 'backendName' => 'matchValue',
- ],
- 'limitMode' => [
- 'description' => 'Limit mode',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'TokenPerSecond',
- 'backendName' => 'limitMode',
- ],
- 'limitValue' => [
- 'description' => 'Limit value',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '100',
- 'backendName' => 'limitValue',
- ],
+ 'limitType' => ['description' => 'Limit type', 'type' => 'string', 'example' => 'fixed', 'title' => ''],
+ 'matchKey' => ['description' => 'Match key', 'type' => 'string', 'example' => 'user_id'."\n", 'title' => ''],
+ 'matchType' => ['description' => 'Match type', 'type' => 'string', 'example' => 'all', 'title' => ''],
+ 'matchValue' => ['description' => 'Match value', 'type' => 'string', 'example' => '12345', 'title' => ''],
+ 'limitMode' => ['description' => 'Limit mode', 'type' => 'string', 'example' => 'local', 'title' => ''],
+ 'limitValue' => ['description' => 'Limit value', 'type' => 'string', 'example' => '100', 'title' => ''],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'globalRules',
+ 'title' => '',
+ 'example' => '',
],
'redisConfig' => [
'description' => 'Redis Config',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'host' => [
- 'description' => 'Redis host',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'redis.example.com',
- 'backendName' => 'host',
- ],
- 'port' => [
- 'description' => 'Redis port',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '6379',
- 'backendName' => 'port',
- ],
- 'username' => [
- 'description' => 'Redis username',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'username',
- 'backendName' => 'username',
- ],
- 'password' => [
- 'description' => 'Redis password',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '******',
- 'backendName' => 'password',
- ],
- 'timeout' => [
- 'description' => 'Redis timeout',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '60',
- 'backendName' => 'timeout',
- ],
- 'databaseNumber' => [
- 'description' => 'Redis database number',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- 'backendName' => 'databaseNumber',
- ],
+ 'host' => ['description' => 'Redis host', 'type' => 'string', 'example' => '0.0.0.0', 'title' => ''],
+ 'port' => ['description' => 'Redis port', 'type' => 'integer', 'format' => 'int32', 'example' => '6379', 'title' => ''],
+ 'username' => ['description' => 'Redis username', 'type' => 'string', 'example' => 'root', 'title' => ''],
+ 'password' => ['description' => 'Redis password', 'type' => 'string', 'example' => '******', 'title' => ''],
+ 'timeout' => ['description' => 'Redis timeout', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''],
+ 'databaseNumber' => ['description' => 'Redis database number', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
],
- 'backendName' => 'redisConfig',
+ 'title' => '',
+ 'example' => '',
],
'pluginStatus' => [
'description' => 'pluginStatus',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'errorLogs' => [
'description' => 'Array of plugin execution error logs',
- 'visibility' => 'Public',
'type' => 'object',
- 'additionalProperties' => [
- 'description' => 'string',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'auth-failed',
- ],
- 'backendName' => 'errorLogs',
- ],
- 'serviceHealthy' => [
- 'description' => 'Health status of the cache service',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'serviceHealthy',
- ],
- 'pluginId' => [
- 'description' => 'Plugin instance unique identifier',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'pl-123456',
- 'backendName' => 'pluginId',
+ 'additionalProperties' => ['description' => 'string', 'type' => 'string', 'example' => 'auth-failed', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
+ 'serviceHealthy' => ['description' => 'Health status of the cache service', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'pluginId' => ['description' => 'Plugin instance unique identifier', 'type' => 'string', 'example' => 'pl-cvmuoiem1h******', 'title' => ''],
],
- 'backendName' => 'pluginStatus',
+ 'title' => '',
+ 'example' => '',
],
],
- 'backendName' => 'aiTokenRateLimitConfig',
+ '$ref' => '#/components/schemas/AiTokenRateLimitConfig',
+ 'title' => '',
+ 'example' => '',
],
'aiCacheConfig' => [
'description' => 'AiCacheConfig',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'cacheTTL' => [
- 'description' => 'Cache time-to-live in seconds',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '3600',
- 'backendName' => 'cacheTTL',
- ],
+ 'cacheTTL' => ['description' => 'Cache time-to-live in seconds', 'type' => 'integer', 'format' => 'int32', 'example' => '300', 'title' => ''],
'redisConfig' => [
'description' => 'Redis configuration for cache storage',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'host' => [
- 'description' => 'Redis host',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'redis.example.com',
- 'backendName' => 'host',
- ],
- 'port' => [
- 'description' => 'Redis port',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '6379',
- 'backendName' => 'port',
- ],
- 'username' => [
- 'description' => 'Redis username',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'username',
- 'backendName' => 'username',
- ],
- 'password' => [
- 'description' => 'Redis password',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '******',
- 'backendName' => 'password',
- ],
- 'timeout' => [
- 'description' => 'Redis timeout',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '60',
- 'backendName' => 'timeout',
- ],
- 'databaseNumber' => [
- 'description' => 'Redis database number',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- 'backendName' => 'databaseNumber',
- ],
+ 'host' => ['description' => 'Redis host', 'type' => 'string', 'example' => '0.0.0.0', 'title' => ''],
+ 'port' => ['description' => 'Redis port', 'type' => 'integer', 'format' => 'int32', 'example' => '6379', 'title' => ''],
+ 'username' => ['description' => 'Redis username', 'type' => 'string', 'example' => 'root', 'title' => ''],
+ 'password' => ['description' => 'Redis password', 'type' => 'string', 'example' => '******', 'title' => ''],
+ 'timeout' => ['description' => 'Redis timeout', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''],
+ 'databaseNumber' => ['description' => 'Redis database number', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
],
- 'backendName' => 'redisConfig',
+ 'title' => '',
+ 'example' => '',
],
'vectorConfig' => [
'description' => 'vectorConfig',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'type' => [
- 'description' => 'Vector database service type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'dashvector',
- 'backendName' => 'type',
- ],
- 'serviceHost' => [
- 'description' => 'Vector database service host address',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'vec.example.com',
- 'backendName' => 'serviceHost',
- ],
- 'apiKey' => [
- 'description' => 'Vector database API key for authentication',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'vec-api-key-123',
- 'backendName' => 'apiKey',
- ],
- 'timeout' => [
- 'description' => 'Vector database request timeout in milliseconds',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1000',
- 'backendName' => 'timeout',
- ],
- 'collectionId' => [
- 'description' => 'Vector database collection ID for storing vector embeddings',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'col-1',
- 'backendName' => 'collectionId',
- ],
- 'threshold' => [
- 'description' => 'Similarity threshold for semantic matching',
- 'visibility' => 'Public',
- 'type' => 'number',
- 'format' => 'float',
- 'example' => '0.8',
- 'backendName' => 'threshold',
- ],
+ 'type' => ['description' => 'Vector database service type', 'type' => 'string', 'example' => 'K8S', 'title' => ''],
+ 'serviceHost' => ['description' => 'Vector database service host address', 'type' => 'string', 'example' => 'localhost', 'title' => ''],
+ 'apiKey' => ['description' => 'Vector database API key for authentication', 'type' => 'string', 'example' => 'sk-wRN******', 'title' => ''],
+ 'timeout' => ['description' => 'Vector database request timeout in milliseconds', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''],
+ 'collectionId' => ['description' => 'Vector database collection ID for storing vector embeddings', 'type' => 'string', 'example' => 'col_12345', 'title' => ''],
+ 'threshold' => ['description' => 'Similarity threshold for semantic matching', 'type' => 'number', 'format' => 'float', 'example' => '100', 'title' => ''],
],
- 'backendName' => 'vectorConfig',
+ 'title' => '',
+ 'example' => '',
],
'embeddingConfig' => [
'description' => 'Embedding Config',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'type' => [
- 'description' => 'Embedding service provider type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'dashscope',
- 'backendName' => 'type',
- ],
- 'serviceId' => [
- 'description' => 'Embedding service ID',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'svc-1',
- 'backendName' => 'serviceId',
- ],
- 'timeout' => [
- 'description' => 'Embedding service request timeout in milliseconds',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '2000',
- 'backendName' => 'timeout',
- ],
- 'modelName' => [
- 'description' => 'Embedding model name',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'model-1',
- 'backendName' => 'modelName',
- ],
+ 'type' => ['description' => 'Embedding service provider type', 'type' => 'string', 'example' => 'K8S', 'title' => ''],
+ 'serviceId' => ['description' => 'Embedding service ID', 'type' => 'string', 'example' => 'svc-d5tgnoum1******', 'title' => ''],
+ 'timeout' => ['description' => 'Embedding service request timeout in milliseconds', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''],
+ 'modelName' => ['description' => 'Embedding model name', 'type' => 'string', 'example' => 'custom_model', 'title' => ''],
],
- 'backendName' => 'embeddingConfig',
- ],
- 'cacheKeyStrategy' => [
- 'description' => 'Strategy for generating cache keys',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'default',
- 'backendName' => 'cacheKeyStrategy',
- ],
- 'cacheMode' => [
- 'description' => 'Cache mode type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'exact',
- 'backendName' => 'cacheMode',
+ 'title' => '',
+ 'example' => '',
],
+ 'cacheKeyStrategy' => ['description' => 'Strategy for generating cache keys', 'type' => 'string', 'example' => 'input-hash', 'title' => ''],
+ 'cacheMode' => ['description' => 'Cache mode type', 'type' => 'string', 'example' => 'read-write', 'title' => ''],
'pluginStatus' => [
'description' => 'pluginStatus',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'errorLogs' => [
'description' => 'errorLogs',
- 'visibility' => 'Public',
'type' => 'object',
- 'additionalProperties' => [
- 'description' => 'string',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'timeout',
- ],
- 'backendName' => 'errorLogs',
- ],
- 'serviceHealthy' => [
- 'description' => 'serviceHealthy',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'serviceHealthy',
- ],
- 'pluginId' => [
- 'description' => 'pluginId',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'pl-123456',
- 'backendName' => 'pluginId',
+ 'additionalProperties' => ['description' => 'string', 'type' => 'string', 'example' => 'timeout', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
+ 'serviceHealthy' => ['description' => 'serviceHealthy', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'pluginId' => ['description' => 'pluginId', 'type' => 'string', 'example' => 'pl-d1selpem1h******', 'title' => ''],
],
- 'backendName' => 'pluginStatus',
+ 'title' => '',
+ 'example' => '',
],
],
- 'backendName' => 'aiCacheConfig',
+ '$ref' => '#/components/schemas/AiCacheConfig',
+ 'title' => '',
+ 'example' => '',
],
'aiNetworkSearchConfig' => [
'description' => 'AiNetworkSearchConfig',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'needReference' => [
- 'description' => 'Add reference sources in answer',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'needReference',
- ],
- 'referenceFormat' => [
- 'description' => 'Reference format',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Reference: %s',
- 'backendName' => 'referenceFormat',
- ],
- 'referenceLocation' => [
- 'description' => 'Reference location',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'head',
- 'backendName' => 'referenceLocation',
- ],
- 'defaultLang' => [
- 'description' => 'Default search language code',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'zh-CN',
- 'backendName' => 'defaultLang',
- ],
- 'defaultEnable' => [
- 'description' => 'Default enable',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'defaultEnable',
- ],
+ 'needReference' => ['description' => 'Add reference sources in answer', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'referenceFormat' => ['description' => 'Reference format', 'type' => 'string', 'example' => 'APA', 'title' => ''],
+ 'referenceLocation' => ['description' => 'Reference location', 'type' => 'string', 'example' => 'end', 'title' => ''],
+ 'defaultLang' => ['description' => 'Default search language code', 'type' => 'string', 'example' => 'zh', 'title' => ''],
+ 'defaultEnable' => ['description' => 'Default enable', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'searchFrom' => [
'description' => 'Search engine list',
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'object',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'type' => [
- 'description' => 'Search engine type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Bing',
- 'backendName' => 'type',
- ],
- 'apiKey' => [
- 'description' => 'Search engine API key',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'xxx',
- 'backendName' => 'apiKey',
- ],
- 'count' => [
- 'description' => 'Result count',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- 'backendName' => 'count',
- ],
- 'start' => [
- 'description' => 'Result offset',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '0',
- 'backendName' => 'start',
- ],
- 'timeoutMillisecond' => [
- 'description' => 'API call timeout in milliseconds',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '5000',
- 'backendName' => 'timeoutMillisecond',
- ],
+ 'type' => ['description' => 'Search engine type', 'type' => 'string', 'example' => 'K8S', 'title' => ''],
+ 'apiKey' => ['description' => 'Search engine API key', 'type' => 'string', 'example' => 'asdfjoY87-******', 'title' => ''],
+ 'count' => ['description' => 'Result count', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
+ 'start' => ['description' => 'Result offset', 'type' => 'integer', 'format' => 'int32', 'example' => '1740153600000', 'title' => ''],
+ 'timeoutMillisecond' => ['description' => 'API call timeout in milliseconds', 'type' => 'integer', 'format' => 'int32', 'example' => '5000', 'title' => ''],
'optionArgs' => [
'description' => 'Additional parameters',
- 'visibility' => 'Public',
'type' => 'object',
- 'additionalProperties' => [
- 'description' => 'string',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'value',
- ],
- 'backendName' => 'optionArgs',
- ],
- 'endpoint' => [
- 'description' => 'Search engine endpoint',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '******-hangzhou.aliyuncs.com',
- 'backendName' => 'endpoint',
- ],
- 'contentMode' => [
- 'description' => 'Content mode',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'summary',
- 'backendName' => 'contentMode',
- ],
- 'industry' => [
- 'description' => 'Industry',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'tech',
- 'backendName' => 'industry',
- ],
- 'timeRange' => [
- 'description' => 'Time range',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '7d',
- 'backendName' => 'timeRange',
+ 'additionalProperties' => ['description' => 'string', 'type' => 'string', 'example' => 'temperature', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
+ 'endpoint' => ['description' => 'Search engine endpoint', 'type' => 'string', 'example' => '******-hangzhou.aliyuncs.com', 'title' => ''],
+ 'contentMode' => ['description' => 'Content mode', 'type' => 'string', 'example' => 'text', 'title' => ''],
+ 'industry' => ['description' => 'Industry', 'type' => 'string', 'example' => 'content', 'title' => ''],
+ 'timeRange' => ['description' => 'Time range', 'type' => 'string', 'example' => 'last-7-days', 'title' => ''],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'searchFrom',
+ 'title' => '',
+ 'example' => '',
],
'searchEngineConfig' => [
'description' => 'Search engine configuration',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'type' => [
- 'description' => 'Search engine type: Bing/aliyunQuark',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Bing',
- 'backendName' => 'type',
- ],
- 'apiKey' => [
- 'description' => 'Search engine API key',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'xxx',
- 'backendName' => 'apiKey',
- ],
- 'count' => [
- 'description' => 'Result count',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- 'backendName' => 'count',
- ],
- 'start' => [
- 'description' => 'Result offset',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '0',
- 'backendName' => 'start',
- ],
- 'timeoutMillisecond' => [
- 'description' => 'API call timeout in milliseconds',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '5000',
- 'backendName' => 'timeoutMillisecond',
- ],
+ 'type' => ['description' => 'Search engine type: Bing/aliyunQuark', 'type' => 'string', 'example' => 'K8S', 'title' => ''],
+ 'apiKey' => ['description' => 'Search engine API key', 'type' => 'string', 'example' => '***', 'title' => ''],
+ 'count' => ['description' => 'Result count', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
+ 'start' => ['description' => 'Result offset', 'type' => 'integer', 'format' => 'int32', 'example' => '1741829226090', 'title' => ''],
+ 'timeoutMillisecond' => ['description' => 'API call timeout in milliseconds', 'type' => 'integer', 'format' => 'int32', 'example' => '3000', 'title' => ''],
'optionArgs' => [
'description' => 'Additional parameters',
- 'visibility' => 'Public',
'type' => 'object',
- 'additionalProperties' => [
- 'description' => 'string',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'value',
- ],
- 'backendName' => 'optionArgs',
- ],
- 'endpoint' => [
- 'description' => 'Search engine endpoint',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '******-hangzhou.aliyuncs.com',
- 'backendName' => 'endpoint',
- ],
- 'contentMode' => [
- 'description' => 'Content mode',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'summary',
- 'backendName' => 'contentMode',
- ],
- 'industry' => [
- 'description' => 'Industry',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'tech',
- 'backendName' => 'industry',
- ],
- 'timeRange' => [
- 'description' => 'Time range',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '7d',
- 'backendName' => 'timeRange',
+ 'additionalProperties' => ['description' => 'string', 'type' => 'string', 'example' => 'temperature', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
+ 'endpoint' => ['description' => 'Search engine endpoint', 'type' => 'string', 'example' => '******-hangzhou.aliyuncs.com', 'title' => ''],
+ 'contentMode' => ['description' => 'Content mode', 'type' => 'string', 'example' => 'text', 'title' => ''],
+ 'industry' => ['description' => 'Industry', 'type' => 'string', 'example' => 'content', 'title' => ''],
+ 'timeRange' => ['description' => 'Time range', 'type' => 'string', 'example' => 'last-24h', 'title' => ''],
],
- 'backendName' => 'searchEngineConfig',
+ 'title' => '',
+ 'example' => '',
],
'searchRewrite' => [
'description' => 'Search rewrite configuration',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'enable' => [
- 'description' => 'Enable search rewrite',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'enable',
- ],
- 'serviceId' => [
- 'description' => 'Service ID',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'svc-123456',
- 'backendName' => 'serviceId',
- ],
- 'modelName' => [
- 'description' => 'Model name',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'qwen-turbo',
- 'backendName' => 'modelName',
- ],
- 'timeoutMillisecond' => [
- 'description' => 'Timeout in milliseconds',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '5000',
- 'backendName' => 'timeoutMillisecond',
- ],
- 'maxCount' => [
- 'description' => 'Max rewrite count (1-5)',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '3',
- 'backendName' => 'maxCount',
- ],
+ 'enable' => ['description' => 'Enable search rewrite', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'serviceId' => ['description' => 'Service ID', 'type' => 'string', 'example' => 'svc-cvj05lmm*******', 'title' => ''],
+ 'modelName' => ['description' => 'Model name', 'type' => 'string', 'example' => 'aa', 'title' => ''],
+ 'timeoutMillisecond' => ['description' => 'Timeout in milliseconds', 'type' => 'integer', 'format' => 'int32', 'example' => '2000', 'title' => ''],
+ 'maxCount' => ['description' => 'Max rewrite count (1-5)', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
],
- 'backendName' => 'searchRewrite',
+ 'title' => '',
+ 'example' => '',
],
'pluginStatus' => [
'description' => 'pluginStatus',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'errorLogs' => [
'description' => 'errorLogs',
- 'visibility' => 'Public',
'type' => 'object',
- 'additionalProperties' => [
- 'description' => 'string',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'timeout',
- ],
- 'backendName' => 'errorLogs',
- ],
- 'serviceHealthy' => [
- 'description' => 'serviceHealthy',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'serviceHealthy',
- ],
- 'pluginId' => [
- 'description' => 'pluginId',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'pl-123456',
- 'backendName' => 'pluginId',
+ 'additionalProperties' => ['description' => 'string', 'type' => 'string', 'example' => 'timeout', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
+ 'serviceHealthy' => ['description' => 'serviceHealthy', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'pluginId' => ['description' => 'pluginId', 'type' => 'string', 'example' => 'pl-cvmuoiem1******', 'title' => ''],
],
- 'backendName' => 'pluginStatus',
+ 'title' => '',
+ 'example' => '',
],
],
- 'backendName' => 'aiNetworkSearchConfig',
+ '$ref' => '#/components/schemas/AiNetworkSearchConfig',
+ 'title' => '',
+ 'example' => '',
],
'aiToolSelectionConfig' => [
'description' => 'AiToolSelectionConfig',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'enableConditions' => [
'description' => 'Enable conditions configuration',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'toolCountThreshold' => [
- 'description' => 'Tool count threshold',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- 'backendName' => 'toolCountThreshold',
- ],
+ 'toolCountThreshold' => ['description' => 'Tool count threshold', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''],
],
- 'backendName' => 'enableConditions',
+ 'title' => '',
+ 'example' => '',
],
'toolReranking' => [
'description' => 'Tool reranking configuration',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'modelService' => [
'description' => 'Model service configuration',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'serviceId' => [
- 'description' => 'Service ID',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'svc-123456',
- 'backendName' => 'serviceId',
- ],
- 'modelName' => [
- 'description' => 'Model name',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gte-rerank-v2',
- 'backendName' => 'modelName',
- ],
- 'timeoutMillisecond' => [
- 'description' => 'Timeout in milliseconds',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '5000',
- 'backendName' => 'timeoutMillisecond',
- ],
+ 'serviceId' => ['description' => 'Service ID', 'type' => 'string', 'example' => 'svc-cv21nj6m1hkk******', 'title' => ''],
+ 'modelName' => ['description' => 'Model name', 'type' => 'string', 'example' => 'custom_model', 'title' => ''],
+ 'timeoutMillisecond' => ['description' => 'Timeout in milliseconds', 'type' => 'integer', 'format' => 'int32', 'example' => '3000', 'title' => ''],
],
- 'backendName' => 'modelService',
- ],
- 'filteringMethod' => [
- 'description' => 'Filtering method: topK/topN/combined',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'topK',
- 'backendName' => 'filteringMethod',
- ],
- 'topKPercent' => [
- 'description' => 'TopK percentage (1-100)',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '50',
- 'backendName' => 'topKPercent',
- ],
- 'topNCount' => [
- 'description' => 'TopN count',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '5',
- 'backendName' => 'topNCount',
- ],
- 'scoreThreshold' => [
- 'description' => 'Score threshold (0.0-1.0, 0 means disabled)',
- 'visibility' => 'Public',
- 'type' => 'number',
- 'format' => 'float',
- 'example' => '0.5',
- 'backendName' => 'scoreThreshold',
- ],
- 'fallbackStrategy' => [
- 'description' => 'Fallback strategy: skip/error',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'skip',
- 'backendName' => 'fallbackStrategy',
+ 'title' => '',
+ 'example' => '',
],
+ 'filteringMethod' => ['description' => 'Filtering method: topK/topN/combined', 'type' => 'string', 'example' => 'keyword', 'title' => ''],
+ 'topKPercent' => ['description' => 'TopK percentage (1-100)', 'type' => 'integer', 'format' => 'int32', 'example' => '0.1', 'title' => ''],
+ 'topNCount' => ['description' => 'TopN count', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''],
+ 'scoreThreshold' => ['description' => 'Score threshold (0.0-1.0, 0 means disabled)', 'type' => 'number', 'format' => 'float', 'example' => '0.5', 'title' => ''],
+ 'fallbackStrategy' => ['description' => 'Fallback strategy: skip/error', 'type' => 'string', 'example' => 'none', 'title' => ''],
],
- 'backendName' => 'toolReranking',
+ 'title' => '',
+ 'example' => '',
],
'queryRewriting' => [
'description' => 'Query rewriting configuration',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'enabled' => [
- 'description' => 'Enable query rewriting',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'enabled',
- ],
+ 'enabled' => ['description' => 'Enable query rewriting', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'modelService' => [
'description' => 'Model service configuration',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'serviceId' => [
- 'description' => 'Service ID',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'svc-123456',
- 'backendName' => 'serviceId',
- ],
- 'modelName' => [
- 'description' => 'Model name',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'qwen-turbo',
- 'backendName' => 'modelName',
- ],
- 'timeoutMillisecond' => [
- 'description' => 'Timeout in milliseconds',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '5000',
- 'backendName' => 'timeoutMillisecond',
- ],
+ 'serviceId' => ['description' => 'Service ID', 'type' => 'string', 'example' => 'svc-d51m42um1******', 'title' => ''],
+ 'modelName' => ['description' => 'Model name', 'type' => 'string', 'example' => 'custom_image_embedding', 'title' => ''],
+ 'timeoutMillisecond' => ['description' => 'Timeout in milliseconds', 'type' => 'integer', 'format' => 'int32', 'example' => '2000', 'title' => ''],
],
- 'backendName' => 'modelService',
+ 'title' => '',
+ 'example' => '',
],
'promptConfig' => [
'description' => 'Prompt configuration',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'type' => [
- 'description' => 'Prompt type: builtIn/custom',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'builtIn',
- 'backendName' => 'type',
- ],
- 'customPrompt' => [
- 'description' => 'Custom prompt (required when type=custom)',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Custom prompt',
- 'backendName' => 'customPrompt',
- ],
+ 'type' => ['description' => 'Prompt type: builtIn/custom', 'type' => 'string', 'example' => 'K8S', 'title' => ''],
+ 'customPrompt' => ['description' => 'Custom prompt (required when type=custom)', 'type' => 'string', 'example' => '略带搞笑的语气,编写一段推广语,提高阅读兴趣。', 'title' => ''],
],
- 'backendName' => 'promptConfig',
- ],
- 'maxOutputTokens' => [
- 'description' => 'Max output tokens',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '50',
- 'backendName' => 'maxOutputTokens',
+ 'title' => '',
+ 'example' => '',
],
+ 'maxOutputTokens' => ['description' => 'Max output tokens', 'type' => 'integer', 'format' => 'int32', 'example' => '256', 'title' => ''],
'triggerConditions' => [
'description' => 'Trigger conditions',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'messageCountThreshold' => [
- 'description' => 'Message count threshold (≥0)',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- 'backendName' => 'messageCountThreshold',
- ],
+ 'messageCountThreshold' => ['description' => 'Message count threshold (≥0)', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''],
],
- 'backendName' => 'triggerConditions',
+ 'title' => '',
+ 'example' => '',
],
'contextSelection' => [
'description' => 'Context selection',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'type' => [
- 'description' => 'Context type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'recentMessages',
- 'backendName' => 'type',
- ],
- 'value' => [
- 'description' => 'Value',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '5',
- 'backendName' => 'value',
- ],
+ 'type' => ['description' => 'Context type', 'type' => 'string', 'example' => 'K8S', 'title' => ''],
+ 'value' => ['description' => 'Value', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
],
- 'backendName' => 'contextSelection',
- ],
- 'fallbackStrategy' => [
- 'description' => 'Fallback strategy',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'skip',
- 'backendName' => 'fallbackStrategy',
+ 'title' => '',
+ 'example' => '',
],
+ 'fallbackStrategy' => ['description' => 'Fallback strategy', 'type' => 'string', 'example' => 'none', 'title' => ''],
],
- 'backendName' => 'queryRewriting',
+ 'title' => '',
+ 'example' => '',
],
'pluginStatus' => [
'description' => 'Plugin status',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'errorLogs' => [
'description' => 'errorLogs',
- 'visibility' => 'Public',
'type' => 'object',
- 'additionalProperties' => [
- 'description' => 'string',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'timeout',
- ],
- 'backendName' => 'errorLogs',
- ],
- 'serviceHealthy' => [
- 'description' => 'serviceHealthy',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'serviceHealthy',
- ],
- 'pluginId' => [
- 'description' => 'pluginId',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'pl-123456',
- 'backendName' => 'pluginId',
+ 'additionalProperties' => ['description' => 'string', 'type' => 'string', 'example' => 'timeout', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
+ 'serviceHealthy' => ['description' => 'serviceHealthy', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'pluginId' => ['description' => 'pluginId', 'type' => 'string', 'example' => 'pl-d4ijmu6m1hk******', 'title' => ''],
],
- 'backendName' => 'pluginStatus',
+ 'title' => '',
+ 'example' => '',
],
],
- 'backendName' => 'aiToolSelectionConfig',
+ '$ref' => '#/components/schemas/AiToolSelectionConfig',
+ 'title' => '',
+ 'example' => '',
],
'aiStatisticsConfig' => [
'description' => 'AiStatisticsConfig',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'logRequestContent' => [
- 'description' => 'Log request content',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'logRequestContent',
- ],
- 'logResponseContent' => [
- 'description' => 'Log response content',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'logResponseContent',
- ],
+ 'logRequestContent' => ['description' => 'Log request content', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'logResponseContent' => ['description' => 'Log response content', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
- 'backendName' => 'aiStatisticsConfig',
- ],
- 'semanticRouterConfig' => [
- 'description' => 'SemanticRouterConfig',
- 'visibility' => 'Public',
- 'type' => 'object',
- 'properties' => [
- 'timeoutMillisecond' => [
- 'description' => 'Timeout in milliseconds',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '2000',
- 'backendName' => 'timeoutMillisecond',
- ],
- ],
- 'backendName' => 'semanticRouterConfig',
+ '$ref' => '#/components/schemas/AiStatisticsConfig',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
'HttpApiPublishRevisionInfo' => [
- 'title' => '',
+ 'title' => 'HTTP API发布信息。',
'description' => 'The version information.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'revisionId' => [
- 'title' => '',
- 'description' => 'The published version.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'apr-xxx',
- 'backendName' => 'revisionId',
- ],
+ 'revisionId' => ['title' => 'API发布的版本号。', 'description' => 'The published version.'."\n", 'type' => 'string', 'example' => 'apr-xxx'],
'environmentInfo' => [
- 'title' => '',
+ 'title' => '环境信息。',
'description' => 'The environment information.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'environmentId' => [
- 'title' => '',
- 'description' => 'The environment ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'env-xxx',
- 'backendName' => 'environmentId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The environment name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'test',
- 'backendName' => 'name',
- ],
- 'alias' => [
- 'title' => '',
- 'description' => 'The environment alias.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Test'."\n",
- 'backendName' => 'alias',
- ],
+ 'environmentId' => ['title' => '环境ID。', 'description' => 'The environment ID.'."\n", 'type' => 'string', 'example' => 'env-xxx'],
+ 'name' => ['title' => '环境名。', 'description' => 'The environment name.'."\n", 'type' => 'string', 'example' => 'test'],
+ 'alias' => ['title' => '环境别名。', 'description' => 'The environment alias.'."\n", 'type' => 'string', 'example' => '测试'],
'gatewayInfo' => [
- 'title' => '',
+ 'title' => '网关实例信息。',
'description' => 'The instance information.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'gatewayId' => [
- 'title' => '',
- 'description' => 'The instance ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gw-xxx',
- 'backendName' => 'gatewayId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The instance name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Instance 1'."\n",
- 'backendName' => 'name',
- ],
+ 'gatewayId' => ['title' => '网关ID。', 'description' => 'The instance ID.'."\n", 'type' => 'string', 'example' => 'gw-xxx'],
+ 'name' => ['title' => '网关名。', 'description' => 'The instance name.'."\n", 'type' => 'string', 'example' => '实例1'],
],
- 'backendName' => 'gatewayInfo',
+ 'example' => '',
],
],
'example' => 'env-xxx',
- 'backendName' => 'environmentInfo',
],
'subDomains' => [
- 'title' => '',
+ 'title' => '默认域名列表。',
'description' => 'The default domain names of the environment.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'description' => 'The domain name information.'."\n",
- 'visibility' => 'Public',
- 'extendType' => 'true',
- '$ref' => '#/components/schemas/HttpApiDomainInfo',
- ],
+ 'items' => ['description' => 'The domain name information.'."\n", '$ref' => '#/components/schemas/HttpApiDomainInfo', 'title' => '', 'example' => ''],
'example' => 'env-xxx.com',
- 'backendName' => 'subDomains',
],
'customDomains' => [
- 'title' => '',
+ 'title' => '用户域名列表。',
'description' => 'The custom domain names.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'description' => 'The domain name information.'."\n",
- 'visibility' => 'Public',
- 'extendType' => 'true',
- '$ref' => '#/components/schemas/HttpApiDomainInfo',
- ],
- 'backendName' => 'customDomains',
+ 'items' => ['description' => 'The domain name information.'."\n", '$ref' => '#/components/schemas/HttpApiDomainInfo', 'title' => '', 'example' => ''],
+ 'example' => '',
],
'backendScene' => [
- 'title' => '',
+ 'title' => 'API发布场景。',
'description' => 'The publishing scenario.'."\n"
."\n"
.'Valid values:'."\n"
@@ -5518,20 +2838,12 @@
.'* MultiServiceByContent'."\n"
.'* MultiServiceByTag'."\n"
.'* Mock'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'SingleService' => '',
- 'MultiServiceByRatio' => '',
- 'MultiServiceByContent' => '',
- 'MultiServiceByTag' => '',
- 'Mock' => 'Mock',
- ],
+ 'enumValueTitles' => ['SingleService' => '单服务', 'MultiServiceByRatio' => '按比例', 'MultiServiceByContent' => '按内容', 'MultiServiceByTag' => '按标签', 'Mock' => 'Mock'],
'example' => 'SingleService',
- 'backendName' => 'backendScene',
],
'backendType' => [
- 'title' => '',
+ 'title' => '后端类型',
'description' => 'The type of the backend service.'."\n"
."\n"
.'Valid values:'."\n"
@@ -5540,1098 +2852,436 @@
.'* Service: an existing service'."\n"
.'* VIP: a fixed IP address'."\n"
.'* CloudProduct: a cloud service'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'DNS' => '',
- 'Service' => '',
- 'VIP' => '',
- 'CloudProduct' => '',
- ],
+ 'enumValueTitles' => ['DNS' => 'DNS域名', 'Service' => '已有服务', 'VIP' => '固定地址', 'CloudProduct' => '云产品配置'],
'example' => 'Service',
- 'backendName' => 'backendType',
],
'serviceConfigs' => [
- 'title' => '',
+ 'title' => '已有服务配置。',
'description' => 'The configurations of existing services. For single-service publishing, only one entry is allowed. For other scenarios, multiple entries are allowed.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'gatewayServiceId' => [
- 'title' => '',
- 'description' => 'The service ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gs-xxx',
- 'backendName' => 'gatewayServiceId',
- ],
- 'port' => [
- 'title' => '',
- 'description' => 'The service port.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '8080',
- 'backendName' => 'port',
- ],
- 'protocol' => [
- 'title' => '',
- 'description' => 'The service protocol.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'HTTP',
- 'backendName' => 'protocol',
- ],
- 'weight' => [
- 'title' => '',
- 'description' => 'The service weight.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '100',
- 'backendName' => 'weight',
- ],
- 'version' => [
- 'title' => '',
- 'description' => 'The service version.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'v1',
- 'backendName' => 'version',
- ],
- 'match' => [
- 'title' => '',
- 'description' => 'The matching conditions.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'match',
- '$ref' => '#/components/schemas/HttpApiBackendMatchConditions',
- ],
+ 'gatewayServiceId' => ['title' => '服务ID。', 'description' => 'The service ID.'."\n", 'type' => 'string', 'example' => 'gs-xxx'],
+ 'port' => ['title' => '服务端口。', 'description' => 'The service port.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '8080'],
+ 'protocol' => ['title' => '服务协议。', 'description' => 'The service protocol.'."\n", 'type' => 'string', 'example' => 'HTTP'],
+ 'weight' => ['title' => '权重。', 'description' => 'The service weight.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '100'],
+ 'version' => ['title' => '服务版本。', 'description' => 'The service version.'."\n", 'type' => 'string', 'example' => 'v1'],
+ 'match' => ['title' => '匹配条件。', 'description' => 'The matching conditions.'."\n", '$ref' => '#/components/schemas/HttpApiBackendMatchConditions', 'example' => ''],
],
- 'extendType' => 'true',
'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'serviceConfigs',
+ 'example' => '',
],
'dnsConfigs' => [
- 'title' => '',
+ 'title' => 'DNS域名配置。',
'description' => 'The configurations of DNS domain names. For single-service publishing, only one entry is allowed. For other scenarios, multiple entries are allowed.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'The configuration of a single DNS domain name.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'dnsList' => [
- 'title' => '',
+ 'title' => 'DNS域名列表。',
'description' => 'The DNS domain names.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'description' => 'The configuration of a single DNS domain name. Format: Domain name:Port.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'www.example.com:80',
- 'extendType' => 'true',
- ],
- 'backendName' => 'dnsList',
- ],
- 'weight' => [
- 'title' => '',
- 'description' => 'The weight. Valid values: \\[1,100]. This parameter is valid only in proportional routing.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '100',
- 'backendName' => 'weight',
- ],
- 'match' => [
- 'title' => '',
- 'description' => 'The matching condition. This condition is valid only in content-based routing.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'match',
- '$ref' => '#/components/schemas/HttpApiBackendMatchConditions',
+ 'items' => ['description' => 'The configuration of a single DNS domain name. Format: Domain name:Port.'."\n", 'type' => 'string', 'example' => 'www.example.com:80', 'title' => ''],
+ 'example' => '',
],
+ 'weight' => ['title' => '服务权重。', 'description' => 'The weight. Valid values: \\[1,100]. This parameter is valid only in proportional routing.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '100'],
+ 'match' => ['title' => '匹配条件。', 'description' => 'The matching condition. This condition is valid only in content-based routing.'."\n", '$ref' => '#/components/schemas/HttpApiBackendMatchConditions', 'example' => ''],
],
'example' => 'dns',
- 'extendType' => 'true',
+ 'title' => '',
],
- 'backendName' => 'dnsConfigs',
+ 'example' => '',
],
'vipConfigs' => [
- 'title' => '',
+ 'title' => '固定地址配置',
'description' => 'The configurations of fixed IP addresses. For single-service publishing, only one entry is allowed. For other scenarios, multiple entries are allowed.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'The fixed IP address configurations.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'endpoints' => [
- 'title' => '',
+ 'title' => '固定地址列表。',
'description' => 'The IP addresses.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'description' => 'The configuration of a single IP address. Format: IP address:Port.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '192.168.1.100:8080',
- 'extendType' => 'true',
- ],
- 'backendName' => 'endpoints',
- ],
- 'weight' => [
- 'title' => '',
- 'description' => 'The weight. Valid values: \\[1,100]. This parameter is valid only in proportional routing.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '100',
- 'backendName' => 'weight',
- ],
- 'match' => [
- 'title' => '',
- 'description' => 'The matching condition. This condition is valid only in content-based routing.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'match',
- '$ref' => '#/components/schemas/HttpApiBackendMatchConditions',
+ 'items' => ['description' => 'The configuration of a single IP address. Format: IP address:Port.'."\n", 'type' => 'string', 'example' => '192.168.1.100:8080', 'title' => ''],
+ 'example' => '',
],
+ 'weight' => ['title' => '服务权重。', 'description' => 'The weight. Valid values: \\[1,100]. This parameter is valid only in proportional routing.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '100'],
+ 'match' => ['title' => '匹配条件。', 'description' => 'The matching condition. This condition is valid only in content-based routing.'."\n", '$ref' => '#/components/schemas/HttpApiBackendMatchConditions', 'example' => ''],
],
'example' => 'fixedEndpoint',
- 'extendType' => 'true',
+ 'title' => '',
],
- 'backendName' => 'vipConfigs',
+ 'example' => '',
],
'cloudProductConfig' => [
- 'title' => '',
+ 'title' => '云产品配置。',
'description' => 'The cloud service configurations.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'cloudProductType' => [
- 'title' => '',
- 'description' => 'The type of the cloud service.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'FC',
- 'backendName' => 'cloudProductType',
- ],
+ 'cloudProductType' => ['title' => '云产品类型。', 'description' => 'The type of the cloud service.'."\n", 'type' => 'string', 'example' => 'FC'],
'functionConfigs' => [
- 'title' => '',
+ 'title' => 'FC配置。',
'description' => 'The Function Compute configurations.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'name' => [
- 'title' => '',
- 'description' => 'The function name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'demo-function',
- 'backendName' => 'name',
- ],
- 'qualifier' => [
- 'title' => '',
- 'description' => 'The function version or alias.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'LATEST',
- 'backendName' => 'qualifier',
- ],
- 'gatewayServiceId' => [
- 'title' => '',
- 'description' => 'The associated service ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gs-xxx',
- 'backendName' => 'gatewayServiceId',
- ],
- 'weight' => [
- 'title' => '',
- 'description' => 'The service weight.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '100',
- 'backendName' => 'weight',
- ],
- 'match' => [
- 'title' => '',
- 'description' => 'The matching conditions.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'match',
- '$ref' => '#/components/schemas/HttpApiBackendMatchConditions',
- ],
+ 'name' => ['title' => '函数名。', 'description' => 'The function name.'."\n", 'type' => 'string', 'example' => 'demo-function'],
+ 'qualifier' => ['title' => '函数版本或别名。', 'description' => 'The function version or alias.'."\n", 'type' => 'string', 'example' => 'LATEST'],
+ 'gatewayServiceId' => ['title' => '关联的服务ID。', 'description' => 'The associated service ID.'."\n", 'type' => 'string', 'example' => 'gs-xxx'],
+ 'weight' => ['title' => '服务权重。', 'description' => 'The service weight.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '100'],
+ 'match' => ['title' => '匹配条件。', 'description' => 'The matching conditions.'."\n", '$ref' => '#/components/schemas/HttpApiBackendMatchConditions', 'example' => ''],
],
- 'extendType' => 'true',
'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'functionConfigs',
+ 'example' => '',
],
'containerServiceConfigs' => [
- 'title' => '',
+ 'title' => '容器服务配置。',
'description' => 'The ACK configurations.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'gatewayServiceId' => [
- 'title' => '',
- 'description' => 'The associated service ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gs-xxx',
- 'backendName' => 'gatewayServiceId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The K8s service name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'demo-service',
- 'backendName' => 'name',
- ],
- 'namespace' => [
- 'title' => '',
- 'description' => 'The K8s namespace.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'default',
- 'backendName' => 'namespace',
- ],
- 'protocol' => [
- 'title' => '',
- 'description' => 'The service protocol.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'HTTP',
- 'backendName' => 'protocol',
- ],
- 'weight' => [
- 'title' => '',
- 'description' => 'The service weight.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '100',
- 'backendName' => 'weight',
- ],
- 'match' => [
- 'title' => '',
- 'description' => 'The matching conditions.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'match',
- '$ref' => '#/components/schemas/HttpApiBackendMatchConditions',
- ],
- 'port' => [
- 'title' => '',
- 'description' => 'The service port.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '8080',
- 'backendName' => 'port',
- ],
+ 'gatewayServiceId' => ['title' => '关联的服务ID。', 'description' => 'The associated service ID.'."\n", 'type' => 'string', 'example' => 'gs-xxx'],
+ 'name' => ['title' => 'k8s service名称。', 'description' => 'The K8s service name.'."\n", 'type' => 'string', 'example' => 'demo-service'],
+ 'namespace' => ['title' => 'k8s service命名空间。', 'description' => 'The K8s namespace.'."\n", 'type' => 'string', 'example' => 'default'],
+ 'protocol' => ['title' => '服务协议。', 'description' => 'The service protocol.'."\n", 'type' => 'string', 'example' => 'HTTP'],
+ 'weight' => ['title' => '服务权重。', 'description' => 'The service weight.'."\n", 'type' => 'string', 'example' => '100'],
+ 'match' => ['title' => '匹配条件。', 'description' => 'The matching conditions.'."\n", '$ref' => '#/components/schemas/HttpApiBackendMatchConditions', 'example' => ''],
+ 'port' => ['title' => '服务端口。', 'description' => 'The service port.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '8080'],
],
- 'extendType' => 'true',
'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'containerServiceConfigs',
+ 'example' => '',
],
'mseNacosConfigs' => [
- 'title' => '',
+ 'title' => 'MSE Nacos配置',
'description' => 'The MSE Nacos configurations.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'gatewayServiceId' => [
- 'title' => '',
- 'description' => 'The associated service ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gs-xxx',
- 'backendName' => 'gatewayServiceId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The Nacos service name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'spring-demo',
- 'backendName' => 'name',
- ],
- 'namespace' => [
- 'title' => '',
- 'description' => 'The Nacos namespace.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'public',
- 'backendName' => 'namespace',
- ],
- 'groupName' => [
- 'title' => '',
- 'description' => 'The service group.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'DEFAULT_GROUP',
- 'backendName' => 'groupName',
- ],
- 'weight' => [
- 'title' => '',
- 'description' => 'The service weight.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '100',
- 'backendName' => 'weight',
- ],
- 'match' => [
- 'title' => '',
- 'description' => 'The matching conditions.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'match',
- '$ref' => '#/components/schemas/HttpApiBackendMatchConditions',
- ],
+ 'gatewayServiceId' => ['title' => '关联的服务ID。', 'description' => 'The associated service ID.'."\n", 'type' => 'string', 'example' => 'gs-xxx'],
+ 'name' => ['title' => 'Nacos服务名。', 'description' => 'The Nacos service name.'."\n", 'type' => 'string', 'example' => 'spring-demo'],
+ 'namespace' => ['title' => 'Nacos命名空间。', 'description' => 'The Nacos namespace.'."\n", 'type' => 'string', 'example' => 'public'],
+ 'groupName' => ['title' => '服务分组。', 'description' => 'The service group.'."\n", 'type' => 'string', 'example' => 'DEFAULT_GROUP'],
+ 'weight' => ['title' => '服务权重。', 'description' => 'The service weight.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '100'],
+ 'match' => ['title' => '匹配条件。', 'description' => 'The matching conditions.'."\n", '$ref' => '#/components/schemas/HttpApiBackendMatchConditions', 'example' => ''],
],
- 'extendType' => 'true',
'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'mseNacosConfigs',
+ 'example' => '',
],
],
- 'backendName' => 'cloudProduct',
+ 'example' => '',
],
'operations' => [
- 'title' => '',
+ 'title' => '接口列表。',
'description' => 'The operations.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'description' => 'The operation information.'."\n",
- 'visibility' => 'Public',
- 'extendType' => 'true',
- '$ref' => '#/components/schemas/HttpApiOperationInfo',
- ],
- 'backendName' => 'operations',
- ],
- 'createTimestamp' => [
- 'title' => '',
- 'description' => 'The publishing timestamp.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1718807057927',
- 'backendName' => 'createTimestamp',
- ],
- 'isCurrentVersion' => [
- 'title' => '',
- 'description' => 'Specifies whether the current version is used.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'isCurrentVersion',
+ 'items' => ['description' => 'The operation information.'."\n", '$ref' => '#/components/schemas/HttpApiOperationInfo', 'title' => '', 'example' => ''],
+ 'example' => '',
],
+ 'createTimestamp' => ['title' => '发布时间戳。', 'description' => 'The publishing timestamp.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1718807057927'],
+ 'isCurrentVersion' => ['title' => '是否当前版本', 'description' => 'Specifies whether the current version is used.'."\n", 'type' => 'boolean', 'example' => 'true'],
],
+ 'example' => '',
],
'HttpApiRequestContract' => [
'title' => '',
'description' => 'HttpApiRequestContract'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'headerParameters' => [
'title' => '',
'description' => 'The request header parameters.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'description' => 'The parameter definition.'."\n",
- 'visibility' => 'Public',
- 'extendType' => 'true',
- '$ref' => '#/components/schemas/HttpApiParameter',
- ],
- 'backendName' => 'headerParameters',
+ 'items' => ['description' => 'The parameter definition.'."\n", '$ref' => '#/components/schemas/HttpApiParameter', 'title' => '', 'example' => ''],
+ 'example' => '',
],
'queryParameters' => [
'title' => '',
'description' => 'The query parameters.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'description' => 'The parameter definition.'."\n",
- 'visibility' => 'Public',
- 'extendType' => 'true',
- '$ref' => '#/components/schemas/HttpApiParameter',
- ],
- 'backendName' => 'queryParameters',
+ 'items' => ['description' => 'The parameter definition.'."\n", '$ref' => '#/components/schemas/HttpApiParameter', 'title' => '', 'example' => ''],
+ 'example' => '',
],
'pathParameters' => [
'title' => '',
'description' => 'The path parameters.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'description' => 'The parameter definition.'."\n",
- 'visibility' => 'Public',
- 'extendType' => 'true',
- '$ref' => '#/components/schemas/HttpApiParameter',
- ],
- 'backendName' => 'pathParameters',
+ 'items' => ['description' => 'The parameter definition.'."\n", '$ref' => '#/components/schemas/HttpApiParameter', 'title' => '', 'example' => ''],
+ 'example' => '',
],
'body' => [
'title' => '',
'description' => 'The body parameters.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'description' => [
- 'title' => '',
- 'description' => 'The parameter description.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'This is a description.',
- 'backendName' => 'description',
- ],
- 'example' => [
- 'title' => '',
- 'description' => 'The sample value.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '{"result":"ok"}',
- 'backendName' => 'example',
- ],
- 'contentType' => [
- 'title' => '',
- 'description' => 'The content type of the request body.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'application/json',
- 'backendName' => 'contentType',
- ],
- 'jsonSchema' => [
- 'title' => '',
- 'description' => 'The JSON definition description of the request body.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => ' {'."\n"
- .' "type": "object",'."\n"
- .' "required": ['."\n"
- .' "result"'."\n"
- .' ],'."\n"
- .' "properties": {'."\n"
- .' "result": {'."\n"
- .' "type": "string",'."\n"
- .' "description": "Operation result. \'ok\' indicates success."'."\n"
- .' }'."\n"
- .' }'."\n"
- .' }'."\n",
- 'backendName' => 'jsonSchema',
- ],
+ 'description' => ['title' => '', 'description' => 'The parameter description.'."\n", 'type' => 'string', 'example' => 'body参数描述'],
+ 'example' => ['title' => '', 'description' => 'The sample value.'."\n", 'type' => 'string', 'example' => '{"result":"ok"}'],
+ 'contentType' => ['title' => '', 'description' => 'The content type of the request body.'."\n", 'type' => 'string', 'example' => 'application/json'],
+ 'jsonSchema' => ['title' => '', 'description' => 'The JSON definition description of the request body.'."\n", 'type' => 'string', 'example' => '{'."\n"
+ .' "type": "object",'."\n"
+ .' "required": ['."\n"
+ .' "result"'."\n"
+ .' ],'."\n"
+ .' "properties": {'."\n"
+ .' "result": {'."\n"
+ .' "type": "string",'."\n"
+ .' "description": "操作结果,\'ok\' 表示成功"'."\n"
+ .' }'."\n"
+ .' }'."\n"
+ .'}'."\n"],
],
- 'backendName' => 'body',
+ 'example' => '',
],
],
+ 'example' => '',
],
'HttpApiResponseContract' => [
'title' => 'HttpApiResponseContract',
'description' => 'The response format.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'contentType' => [
- 'title' => '',
- 'description' => 'The content type.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'application/json',
- 'backendName' => 'contentType',
- ],
+ 'contentType' => ['title' => '内应内容类型。', 'description' => 'The content type.'."\n", 'type' => 'string', 'required' => true, 'example' => 'application/json'],
'items' => [
- 'title' => '',
+ 'title' => '响应定义。',
'description' => 'The response definition.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'The response body.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'code' => [
- 'title' => '',
- 'description' => 'The response code.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- 'backendName' => 'code',
- ],
- 'example' => [
- 'title' => '',
- 'description' => 'The sample value.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '{"result": "ok"}',
- 'backendName' => 'example',
- ],
- 'description' => [
- 'title' => '',
- 'description' => 'The response description.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'This is a description.',
- 'backendName' => 'description',
- ],
- 'jsonSchema' => [
- 'title' => '',
- 'description' => 'The JSON definition description of the response body.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '{'."\n"
- .' "type": "object",'."\n"
- .' "required": ['."\n"
- .' "result"'."\n"
- .' ],'."\n"
- .' "properties": {'."\n"
- .' "result": {'."\n"
- .' "type": "string",'."\n"
- .' "description": "This is a description."'."\n"
- .' }'."\n"
- .' }'."\n"
- .'}',
- 'backendName' => 'jsonSchema',
- ],
- ],
- 'extendType' => 'true',
+ 'code' => ['title' => '响应码。', 'description' => 'The response code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'example' => ['title' => '示例值。', 'description' => 'The sample value.'."\n", 'type' => 'string', 'example' => '{"result": "ok"}'],
+ 'description' => ['title' => '描述。', 'description' => 'The response description.'."\n", 'type' => 'string', 'example' => '正常接口响应'],
+ 'jsonSchema' => ['title' => '响应体JSON定义描述。', 'description' => 'The JSON definition description of the response body.'."\n", 'type' => 'string', 'example' => '{'."\n"
+ .' "type": "object",'."\n"
+ .' "required": ['."\n"
+ .' "result"'."\n"
+ .' ],'."\n"
+ .' "properties": {'."\n"
+ .' "result": {'."\n"
+ .' "type": "string",'."\n"
+ .' "description": "操作结果,\'ok\' 表示成功"'."\n"
+ .' }'."\n"
+ .' }'."\n"
+ .'}'],
+ ],
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'items',
+ 'example' => '',
],
],
+ 'example' => '',
],
'HttpApiVersionConfig' => [
- 'title' => 'A short description of struct',
- 'description' => 'The versioning configurations.'."\n",
- 'visibility' => 'Public',
+ 'title' => '',
+ 'description' => 'The API versioning configuration.',
'type' => 'object',
'properties' => [
- 'enable' => [
- 'title' => '',
- 'description' => 'Specifies whether to enable versioning.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'enable',
- ],
+ 'enable' => ['title' => '', 'description' => 'Indicates whether versioning control is enabled.', 'type' => 'boolean', 'example' => 'true'],
'scheme' => [
'title' => '',
- 'description' => 'The versioning solution.'."\n"
- ."\n"
- .'Valid values:'."\n"
- ."\n"
- .'* Path'."\n"
- .'* Query'."\n"
- .'* Header'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The versioning scheme.',
+ 'enumValueTitles' => ['Path' => 'Path-based versioning, which distinguishes versions by URL path.', 'Query' => 'Query parameter-based versioning, which distinguishes versions by query parameter.', 'Header' => 'Header-based versioning, which distinguishes versions by header parameter.'],
'type' => 'string',
- 'enumValueTitles' => [
- 'Path' => 'Path',
- 'Query' => 'Query',
- 'Header' => 'Header',
- ],
'example' => 'Query',
- 'backendName' => 'scheme',
- ],
- 'headerName' => [
- 'title' => '',
- 'description' => 'The key in the specified header when the header versioning solution is used.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'my-version',
- 'backendName' => 'headerName',
- ],
- 'queryName' => [
- 'title' => '',
- 'description' => 'The key in the specified query parameter when the query versioning solution is used.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'myVersion',
- 'backendName' => 'queryName',
- ],
- 'version' => [
- 'title' => '',
- 'description' => 'The version number.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'v1',
- 'backendName' => 'version',
],
+ 'headerName' => ['title' => '', 'description' => 'The key in the specified header parameter when the header-based versioning scheme is used.', 'type' => 'string', 'example' => 'my-version'],
+ 'queryName' => ['title' => '', 'description' => 'The key in the specified query parameter when the query parameter-based versioning scheme is used.', 'type' => 'string', 'example' => 'myVersion'],
+ 'version' => ['title' => '', 'description' => 'The version number.', 'type' => 'string', 'example' => 'v1'],
],
+ 'example' => '',
],
'HttpApiVersionInfo' => [
'title' => 'A short description of struct',
'description' => 'The API version information.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'enable' => [
- 'title' => '',
- 'description' => 'Specifies whether to enable versioning.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'enable',
- ],
- 'scheme' => [
- 'title' => '',
- 'description' => 'The versioning solution.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Query',
- 'backendName' => 'scheme',
- ],
- 'headerName' => [
- 'title' => '',
- 'description' => 'The key in the specified header when the header versioning solution is used.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'my-version',
- 'backendName' => 'headerName',
- ],
- 'queryName' => [
- 'title' => '',
- 'description' => 'The key in the specified query parameter when the query versioning solution is used.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'myVersion',
- 'backendName' => 'queryName',
- ],
- 'version' => [
- 'title' => '',
- 'description' => 'The version number.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'v1',
- 'backendName' => 'version',
- ],
+ 'enable' => ['title' => '是否启用版本化控制。', 'description' => 'Specifies whether to enable versioning.'."\n", 'type' => 'boolean', 'example' => 'true'],
+ 'scheme' => ['title' => '版本化方案。', 'description' => 'The versioning solution.'."\n", 'type' => 'string', 'example' => 'Query'],
+ 'headerName' => ['title' => 'Header版本化方案时,指定的Header参数中的Key。', 'description' => 'The key in the specified header when the header versioning solution is used.'."\n", 'type' => 'string', 'example' => 'my-version'],
+ 'queryName' => ['title' => 'Query版本化方案时,指定的Query参数中的Key。', 'description' => 'The key in the specified query parameter when the query versioning solution is used.'."\n", 'type' => 'string', 'example' => 'myVersion'],
+ 'version' => ['title' => '版本号。', 'description' => 'The version number.'."\n", 'type' => 'string', 'example' => 'v1'],
],
+ 'example' => '',
],
'HttpApiVersionSetContract' => [
'title' => 'A short description of struct',
- 'description' => '',
- 'visibility' => 'Public',
+ 'description' => 'HTTP API versioning configuration.',
'type' => 'object',
'properties' => [
'versioningScheme' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
+ 'title' => '版本化方案',
+ 'description' => 'The versioning scheme specifies how the API access method is identified. It supports three patterns: Query parameter, Header parameter, and Path.',
'type' => 'string',
'required' => true,
- 'enumValueTitles' => [
- 'Path' => 'Path',
- 'Query' => 'Query',
- 'Header' => 'Header',
- ],
+ 'enumValueTitles' => ['Path' => 'Path', 'Query' => 'Query', 'Header' => 'Header'],
'example' => 'Query',
- 'backendName' => 'versioningScheme',
- ],
- 'versionHeaderName' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'my-version',
- 'backendName' => 'versionHeaderName',
- ],
- 'versionQueryName' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'my-version',
- 'backendName' => 'versionQueryName',
- ],
- 'version' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'v1',
- 'backendName' => 'version',
- ],
- 'versionEnabled' => [
- 'title' => '',
- 'description' => '',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'required' => true,
- 'example' => 'true',
- 'backendName' => 'versionEnabled',
],
+ 'versionHeaderName' => ['title' => 'Header中的key', 'description' => 'The key in the Header. When accessing the API, you must add this key to the request header.', 'type' => 'string', 'example' => 'my-version'],
+ 'versionQueryName' => ['title' => 'Query中的key', 'description' => 'The key in the Query. When accessing the API, you must add this key to the request Query parameters.', 'type' => 'string', 'example' => 'my-version'],
+ 'version' => ['title' => '版本号', 'description' => 'The version number.', 'type' => 'string', 'required' => true, 'example' => 'v1'],
+ 'versionEnabled' => ['title' => '是否启用版本化', 'description' => 'Indicates whether versioning is enabled.', 'type' => 'boolean', 'required' => true, 'example' => 'true'],
],
+ 'example' => '',
],
'HttpRoute' => [
- 'title' => 'HttpApi Route',
+ 'title' => '',
'description' => 'object',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'routeId' => [
- 'title' => '',
- 'description' => 'The unique identifier of the route',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'hr-crf5l7tlhtgp91t***',
- 'backendName' => 'routeId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The name of the route',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'itemcenter-pre-route',
- 'backendName' => 'name',
- ],
+ 'routeId' => ['title' => '', 'description' => 'The unique identifier of the route', 'type' => 'string', 'example' => 'hr-crf5l7tlhtgp91t***'],
+ 'name' => ['title' => '', 'description' => 'The name of the route', 'type' => 'string', 'example' => 'itemcenter-pre-route'],
'deployStatus' => [
'title' => '',
'description' => 'The deployment status',
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'Deploying' => '',
- 'DeployedWithChanges' => '',
- 'Undeploying' => '',
- 'NotDeployed' => '',
- 'Deployed' => '',
- 'UndeployFailed' => '',
- 'DeployFailed' => '',
- ],
+ 'enumValueTitles' => ['Deploying' => '', 'DeployedWithChanges' => '', 'Undeploying' => '', 'NotDeployed' => '', 'Deployed' => '', 'UndeployFailed' => '', 'DeployFailed' => ''],
'example' => 'Deployed',
- 'backendName' => 'deployStatus',
- ],
- 'description' => [
- 'title' => '',
- 'description' => 'The description of the route',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Route for user management API',
- 'backendName' => 'description',
- ],
- 'match' => [
- 'title' => '',
- 'description' => 'The route matching rules',
- 'visibility' => 'Public',
- 'backendName' => 'match',
- '$ref' => '#/components/schemas/HttpRouteMatch',
- ],
- 'backend' => [
- 'title' => '',
- 'description' => 'The backend configuration',
- 'visibility' => 'Public',
- 'backendName' => 'backend',
- '$ref' => '#/components/schemas/Backend',
],
+ 'description' => ['title' => '', 'description' => 'The description of the route', 'type' => 'string', 'example' => '商品中心预发路由'],
+ 'match' => ['title' => '', 'description' => 'The route matching rules', '$ref' => '#/components/schemas/HttpRouteMatch', 'example' => ''],
+ 'backend' => ['title' => '', 'description' => 'The backend configuration', '$ref' => '#/components/schemas/Backend', 'example' => ''],
'environmentInfo' => [
'title' => '',
'description' => 'The environment information',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'environmentId' => [
- 'title' => '',
- 'description' => 'The environment ID',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'env-crhq1u5lhtgju***',
- 'backendName' => 'environmentId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The environment name',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'itemcenter-pre',
- 'backendName' => 'name',
- ],
- 'alias' => [
- 'title' => '',
- 'description' => 'The environment alias',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'prod',
- 'backendName' => 'alias',
- ],
+ 'environmentId' => ['title' => '', 'description' => 'The environment ID', 'type' => 'string', 'example' => 'env-crhq1u5lhtgju***'],
+ 'name' => ['title' => '', 'description' => 'The environment name', 'type' => 'string', 'example' => 'itemcenter-pre'],
+ 'alias' => ['title' => '', 'description' => 'The environment alias', 'type' => 'string', 'example' => '商品中心预发环境'],
'gatewayInfo' => [
'title' => '',
'description' => 'The gateway information',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'gatewayId' => [
- 'title' => '',
- 'description' => 'The gateway ID',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gw-cqoohqtlh***',
- 'backendName' => 'gatewayId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The gateway name',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'itemcenter-gateway',
- 'backendName' => 'name',
- ],
+ 'gatewayId' => ['title' => '', 'description' => 'The gateway ID', 'type' => 'string', 'example' => 'gw-cqoohqtlh***'],
+ 'name' => ['title' => '', 'description' => 'The gateway name', 'type' => 'string', 'example' => 'itemcenter-gateway'],
+ 'gatewayEdition' => ['title' => '', 'type' => 'string', 'example' => 'MultiTenantServerless', 'description' => ''],
],
- 'backendName' => 'gatewayInfo',
+ 'example' => '',
],
'subDomains' => [
'title' => '',
'description' => 'List of subdomain information',
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'object',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'domainId' => [
- 'title' => '',
- 'description' => 'The subdomain ID',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'd-cqu19hdlhtgjuv4***',
- 'backendName' => 'domainId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The subdomain name',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'env-crmic3llht***-cn-hangzhou-vpc.alicloudapi.com',
- 'backendName' => 'name',
- ],
+ 'domainId' => ['title' => '', 'description' => 'The subdomain ID', 'type' => 'string', 'example' => 'd-cqu19hdlhtgjuv4***'],
+ 'name' => ['title' => '', 'description' => 'The subdomain name', 'type' => 'string', 'example' => 'env-crmic3llht***-cn-hangzhou-vpc.alicloudapi.com'],
'protocol' => [
'title' => '',
'description' => 'The subdomain protocol',
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'HTTPS' => 'HTTPS',
- 'HTTP' => 'HTTP',
- ],
+ 'enumValueTitles' => ['HTTPS' => 'HTTPS', 'HTTP' => 'HTTP'],
'example' => 'HTTP',
- 'backendName' => 'protocol',
],
'networkType' => [
'title' => '',
'description' => 'networkType',
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'Intranet' => '',
- 'Internet' => '',
- ],
+ 'enumValueTitles' => ['Intranet' => '', 'Internet' => ''],
'example' => 'Internet',
- 'backendName' => 'networkType',
],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'subDomains',
+ 'example' => '',
],
],
- 'backendName' => 'environmentInfo',
- ],
- 'createTimestamp' => [
- 'title' => '',
- 'description' => 'The creation timestamp in milliseconds',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1726649310593',
- 'backendName' => 'createTimestamp',
- ],
- 'updateTimestamp' => [
- 'title' => '',
- 'description' => 'The last update timestamp in milliseconds',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1726819895636',
- 'backendName' => 'updateTimestamp',
+ 'example' => '',
],
+ 'createTimestamp' => ['title' => '', 'description' => 'The creation timestamp in milliseconds', 'type' => 'integer', 'format' => 'int64', 'example' => '1726649310593'],
+ 'updateTimestamp' => ['title' => '', 'description' => 'The last update timestamp in milliseconds', 'type' => 'integer', 'format' => 'int64', 'example' => '1726819895636'],
'mcpServerInfo' => [
'title' => '',
'description' => 'The MCP server information',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'importInstanceId' => [
- 'title' => '',
- 'description' => 'The imported instance ID',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'import-001',
- 'backendName' => 'importInstanceId',
- ],
- 'importNamespace' => [
- 'title' => '',
- 'description' => 'The imported namespace',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'default',
- 'backendName' => 'importNamespace',
- ],
- 'importMcpServerId' => [
- 'title' => '',
- 'description' => 'The imported Nacos MCP server ID',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'mcp-002',
- 'backendName' => 'importMcpServerId',
- ],
- 'createFromType' => [
- 'title' => '',
- 'description' => 'The creation type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Nacos',
- 'backendName' => 'createFromType',
- ],
- 'mcpServerConfig' => [
- 'title' => '',
- 'description' => 'The MCP server configuration content',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '{\\"config\\":{}}',
- 'backendName' => 'mcpServerConfig',
- ],
+ 'importInstanceId' => ['title' => '', 'description' => 'The imported instance ID', 'type' => 'string', 'example' => 'import-001'],
+ 'importNamespace' => ['title' => '', 'description' => 'The imported namespace', 'type' => 'string', 'example' => 'default'],
+ 'importMcpServerId' => ['title' => '', 'description' => 'The imported Nacos MCP server ID', 'type' => 'string', 'example' => 'mcp-002'],
+ 'createFromType' => ['title' => '', 'description' => 'The creation type', 'type' => 'string', 'example' => 'Nacos'],
+ 'mcpServerConfig' => ['title' => '', 'description' => 'The MCP server configuration content', 'type' => 'string', 'example' => '{\\"config\\":{}}'],
'mcpRouteConfig' => [
'title' => '',
'description' => 'The MCP route configuration',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'protocol' => [
- 'title' => '',
- 'description' => 'The MCP protocol',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'SSE',
- 'backendName' => 'protocol',
- ],
- 'exposedUriPath' => [
- 'title' => 'mcp route path',
- 'description' => 'mcp route path',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '/mcp',
- 'backendName' => 'exposedUriPath',
- ],
+ 'protocol' => ['title' => '', 'description' => 'The MCP protocol', 'type' => 'string', 'example' => 'SSE'],
+ 'exposedUriPath' => ['title' => '', 'description' => 'mcp route path', 'type' => 'string', 'example' => '/mcp'],
],
- 'backendName' => 'mcpRouteConfig',
+ 'example' => '',
],
],
- 'backendName' => 'mcpServerInfo',
+ 'example' => '',
],
'domainInfos' => [
'title' => '',
'description' => 'List of domain information',
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'object',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'domainId' => [
- 'title' => '',
- 'description' => 'The domain ID',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'd-cr3v7dllhtgi9s***',
- 'backendName' => 'domainId',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The domain name',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'itemcenter.dev',
- 'backendName' => 'name',
- ],
+ 'domainId' => ['title' => '', 'description' => 'The domain ID', 'type' => 'string', 'example' => 'd-cr3v7dllhtgi9s***'],
+ 'name' => ['title' => '', 'description' => 'The domain name', 'type' => 'string', 'example' => 'itemcenter.dev'],
'protocol' => [
'title' => '',
'description' => 'The domain protocol',
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'HTTPS' => 'HTTPS',
- 'HTTP' => 'HTTP',
- ],
+ 'enumValueTitles' => ['HTTPS' => 'HTTPS', 'HTTP' => 'HTTP'],
'example' => 'HTTP',
- 'backendName' => 'protocol',
],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'domainInfos',
+ 'example' => '',
],
'gatewayStatus' => [
'title' => '',
'description' => 'gatewayStatus',
- 'visibility' => 'Public',
'type' => 'object',
- 'additionalProperties' => [
- 'description' => 'string',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Running',
- ],
- 'backendName' => 'gatewayStatus',
- ],
- 'builtin' => [
- 'description' => 'builtin',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'true',
- 'backendName' => 'builtin',
+ 'additionalProperties' => ['description' => 'string', 'type' => 'string', 'example' => 'Running', 'title' => ''],
+ 'example' => '',
],
+ 'builtin' => ['description' => 'builtin', 'type' => 'string', 'example' => 'true', 'title' => ''],
],
+ 'example' => '',
],
'HttpRouteMatch' => [
'title' => '',
'description' => 'The route matching rule.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'ignoreUriCase' => [
- 'title' => '',
- 'description' => 'Specifies whether the path is case-insensitive.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'ignoreUriCase',
- ],
+ 'ignoreUriCase' => ['title' => '', 'description' => 'Specifies whether the path is case-insensitive.'."\n", 'type' => 'boolean', 'example' => 'true'],
'path' => [
'title' => '',
'description' => 'The path rule.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'type' => [
@@ -6641,35 +3291,20 @@
.'* Exact: exact match'."\n"
.'* Prefix: prefix match'."\n"
.'* Regex: regular expression'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'Regex' => '',
- 'Exact' => '',
- 'Prefix' => '',
- ],
+ 'enumValueTitles' => ['Regex' => '正则匹配', 'Exact' => '精确匹配', 'Prefix' => '前缀匹配'],
'example' => 'Prefix',
- 'backendName' => 'type',
- ],
- 'value' => [
- 'title' => '',
- 'description' => 'The path.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '/user',
- 'backendName' => 'value',
],
+ 'value' => ['title' => '', 'description' => 'The path.'."\n", 'type' => 'string', 'example' => '/user'],
],
- 'backendName' => 'path',
+ 'example' => '',
],
'headers' => [
'title' => '',
'description' => 'The rules for matching based on HTTP request headers.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'The rule.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'type' => [
@@ -6679,42 +3314,21 @@
.'* Exact: exact match'."\n"
.'* Prefix: prefix match'."\n"
.'* Regex: regular expression'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'Regex' => '',
- 'Exact' => '',
- 'Prefix' => '',
- ],
+ 'enumValueTitles' => ['Regex' => '正则匹配', 'Exact' => '精确匹配', 'Prefix' => '前缀匹配'],
'example' => 'Exact',
- 'backendName' => 'type',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The header name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'dev',
- 'backendName' => 'name',
- ],
- 'value' => [
- 'title' => '',
- 'description' => 'The header value.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'true',
- 'backendName' => 'value',
],
+ 'name' => ['title' => '', 'description' => 'The header name.'."\n", 'type' => 'string', 'example' => 'dev'],
+ 'value' => ['title' => '', 'description' => 'The header value.'."\n", 'type' => 'string', 'example' => 'true'],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'headers',
- 'itemName' => 'header',
+ 'example' => '',
],
'methods' => [
'title' => '',
'description' => 'The HTTP methods.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'The HTTP method. Valid values:'."\n"
@@ -6728,33 +3342,19 @@
.'* OPTION'."\n"
.'* TRACE'."\n"
.'* PATCH'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'TRACE' => 'TRACE',
- 'HEAD' => 'HEAD',
- 'DELETE' => 'DELETE',
- 'POST' => 'POST',
- 'GET' => 'GET',
- 'OPTION' => 'OPTION',
- 'CONNECT' => 'CONNECT',
- 'PUT' => 'PUT',
- 'PATCH' => 'PATCH',
- ],
+ 'enumValueTitles' => ['TRACE' => 'TRACE', 'HEAD' => 'HEAD', 'DELETE' => 'DELETE', 'POST' => 'POST', 'GET' => 'GET', 'OPTION' => 'OPTION', 'CONNECT' => 'CONNECT', 'PUT' => 'PUT', 'PATCH' => 'PATCH'],
'example' => 'GET',
- 'extendType' => 'true',
+ 'title' => '',
],
- 'backendName' => 'methods',
- 'itemName' => 'method',
+ 'example' => '',
],
'queryParams' => [
'title' => '',
'description' => 'The rules for matching based on query parameters.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'The rule.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'type' => [
@@ -6764,441 +3364,227 @@
.'* Exact: exact match'."\n"
.'* Prefix: prefix match'."\n"
.'* Regex: regular expression'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'Regex' => '',
- 'Exact' => '',
- 'Prefix' => '',
- ],
+ 'enumValueTitles' => ['Regex' => '正则匹配', 'Exact' => '精确匹配', 'Prefix' => '前缀匹配'],
'example' => 'Exact',
- 'backendName' => 'type',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The parameter name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'age',
- 'backendName' => 'name',
- ],
- 'value' => [
- 'title' => '',
- 'description' => 'The parameter value.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '17',
- 'backendName' => 'value',
],
+ 'name' => ['title' => '', 'description' => 'The parameter name.'."\n", 'type' => 'string', 'example' => 'age'],
+ 'value' => ['title' => '', 'description' => 'The parameter value.'."\n", 'type' => 'string', 'example' => '17'],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'queryParams',
- 'itemName' => 'queryParam',
+ 'example' => '',
],
],
+ 'example' => '',
],
'JwtIdentityConfig' => [
- 'title' => 'A short description of struct',
- 'description' => 'The JWT authentication configuration.'."\n",
- 'visibility' => 'Public',
+ 'title' => '',
+ 'description' => 'The JWT authentication identity configuration.',
'type' => 'object',
'properties' => [
- 'type' => [
- 'title' => 'type',
- 'description' => 'The authentication configuration type.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Jwt',
- 'backendName' => 'type',
- ],
+ 'type' => ['title' => '', 'description' => 'The authentication configuration type.', 'type' => 'string', 'example' => 'Jwt', 'required' => false],
'secretType' => [
- 'title' => 'secretType',
- 'description' => 'The type of the secret used.'."\n"
- ."\n"
- .'Valid values:'."\n"
- ."\n"
- .'* Asymmetry: asymmetric encryption.'."\n"
- .'* Symmetry: symmetric encryption.'."\n",
- 'visibility' => 'Public',
+ 'title' => '',
+ 'description' => 'The secret type.',
+ 'enumValueTitles' => ['Asymmetry' => 'Asymmetric encryption.', 'Symmetry' => 'Symmetric encryption.'],
'type' => 'string',
- 'enumValueTitles' => [
- 'Asymmetry' => '',
- 'Symmetry' => '',
- ],
'example' => 'Symmetry',
- 'backendName' => 'secretType',
- ],
- 'jwks' => [
- 'title' => 'jwks',
- 'description' => 'The JWKS configuration.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'xxxx',
- 'backendName' => 'jwks',
+ 'required' => false,
],
+ 'remoteJwks' => ['title' => '', 'description' => 'The remote JWKS configuration (JSON string).', 'type' => 'string', 'example' => '{"uri":"https://example.com/.well-known/jwks.json"}', 'required' => false],
+ 'jwks' => ['title' => '', 'description' => 'The JWKS configuration.', 'type' => 'string', 'example' => 'xxxx', 'required' => false],
'jwtTokenConfig' => [
- 'title' => 'jwtTokenConfig',
- 'description' => 'The JWT token configuration.'."\n",
- 'visibility' => 'Public',
+ 'title' => '',
+ 'description' => 'The JWT token configuration.',
'type' => 'object',
'properties' => [
- 'position' => [
- 'title' => 'position',
- 'description' => 'The location where the JWT is stored.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'HEADER',
- 'backendName' => 'position',
- ],
- 'key' => [
- 'title' => 'key',
- 'description' => 'The key used for the JWT.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Authorization',
- 'backendName' => 'key',
- ],
- 'prefix' => [
- 'title' => 'prefix',
- 'description' => 'The token prefix configuration.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'test',
- 'backendName' => 'prefix',
- ],
- 'pass' => [
- 'title' => 'pass',
- 'description' => 'Indicates whether acceptance is granted.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'pass',
- ],
+ 'position' => ['title' => '', 'description' => 'The location where the JWT is stored.', 'type' => 'string', 'example' => 'HEADER', 'required' => false],
+ 'key' => ['title' => '', 'description' => 'The key configuration of the JWT.', 'type' => 'string', 'example' => 'Authorization', 'required' => false],
+ 'prefix' => ['title' => '', 'description' => 'The prefix configuration.', 'type' => 'string', 'example' => 'test', 'required' => false],
+ 'pass' => ['title' => '', 'description' => 'Indicates whether the request is passed through.', 'type' => 'boolean', 'example' => 'true', 'required' => false],
],
'required' => false,
- 'backendName' => 'jwtTokenConfig',
+ 'example' => '',
],
'jwtPayloadConfig' => [
- 'title' => 'jwtPayloadConfig',
- 'description' => 'The JWT payload configuration.'."\n",
- 'visibility' => 'Public',
+ 'title' => '',
+ 'description' => 'The JWT payload configuration.',
'type' => 'object',
'properties' => [
- 'payloadKeyName' => [
- 'title' => 'payloadKeyName',
- 'description' => 'The key in the JWT payload.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'uid',
- 'backendName' => 'payloadKeyName',
- ],
- 'payloadKeyValue' => [
- 'title' => 'payloadKeyValue',
- 'description' => 'The value for the JWT payload key.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '2222',
- 'backendName' => 'payloadKeyValue',
+ 'payloadKeyName' => ['title' => '', 'description' => 'The JWT payload key configuration.', 'type' => 'string', 'example' => 'uid', 'required' => false],
+ 'payloadKeyValue' => ['title' => '', 'description' => 'The JWT payload value configuration.', 'type' => 'string', 'example' => '2222', 'required' => false],
+ ],
+ 'example' => '',
+ ],
+ 'claimsToHeadersConfigs' => [
+ 'title' => '',
+ 'description' => 'The list of claim-to-header configurations.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The configuration list.',
+ 'type' => 'object',
+ 'properties' => [
+ 'claim' => ['title' => '', 'description' => 'The claim name in the JWT payload.', 'type' => 'string', 'example' => 'sub', 'required' => false],
+ 'header' => ['title' => '', 'description' => 'The HTTP header name after conversion.', 'type' => 'string', 'example' => 'X-Consumer-Id', 'required' => false],
+ 'override' => ['title' => '', 'description' => 'Specifies whether to overwrite an existing header with the same name.', 'type' => 'boolean', 'example' => 'true', 'required' => false],
],
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'jwtPayloadConfig',
+ 'required' => false,
+ 'example' => '',
],
],
+ 'example' => '',
],
'KMSConfig' => [
'title' => 'A short description of struct',
'description' => 'object',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'kmsInstanceId' => [
- 'title' => 'kmsInstanceId',
- 'description' => 'The KMS instance ID',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'kst-xxxxxxxx',
- 'backendName' => 'kmsInstanceId',
- ],
- 'kmsKeyId' => [
- 'title' => 'kmsKeyId',
- 'description' => 'The KMS key ID',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'key-xxxxxxxx',
- 'backendName' => 'kmsKeyId',
- ],
+ 'kmsInstanceId' => ['title' => 'kmsInstanceId', 'description' => 'The KMS instance ID', 'type' => 'string', 'example' => 'kst-xxxxxxxx'],
+ 'kmsKeyId' => ['title' => 'kmsKeyId', 'description' => 'The KMS key ID', 'type' => 'string', 'example' => 'key-xxxxxxxx'],
],
+ 'example' => '',
],
'LabelDetail' => [
'title' => 'A short description of struct',
'description' => 'object',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'key' => [
- 'title' => '',
- 'description' => 'The label key',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'version',
- 'backendName' => 'key',
- ],
+ 'key' => ['title' => '标签key', 'description' => 'The label key', 'type' => 'string', 'example' => 'version'],
'values' => [
- 'title' => '',
+ 'title' => '标签value列表',
'description' => 'The list of available values for this label',
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'description' => 'string',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '["v1.0.0", "v2.0.0"]',
- 'extendType' => 'true',
- ],
- 'backendName' => 'values',
+ 'items' => ['description' => 'string', 'type' => 'string', 'example' => '["v1.0.0", "v2.0.0"]', 'title' => ''],
+ 'example' => '',
],
],
+ 'example' => '',
],
'ParentResourceInfo' => [
'title' => 'A short description of struct',
'description' => 'The resource data struct.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'resourceType' => [
- 'title' => 'resourceType',
- 'description' => 'The resource type. Valid values: HttpApi/Operation/GatewayRoute/Gateway/GatewayDomain'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Gateway',
- 'backendName' => 'resourceType',
- ],
- 'apiInfo' => [
- 'description' => 'The API information.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'apiInfo',
- '$ref' => '#/components/schemas/HttpApiApiInfo',
- ],
+ 'resourceType' => ['title' => 'resourceType', 'description' => 'The resource type. Valid values: HttpApi/Operation/GatewayRoute/Gateway/GatewayDomain'."\n", 'type' => 'string', 'example' => 'Gateway'],
+ 'apiInfo' => ['description' => 'The API information.'."\n", '$ref' => '#/components/schemas/HttpApiApiInfo', 'title' => '', 'example' => ''],
],
+ 'example' => '',
+ ],
+ 'PluginClassInfo' => [
+ 'title' => '',
+ 'description' => 'object',
+ 'type' => 'object',
+ 'properties' => [
+ 'pluginClassId' => ['title' => '', 'description' => 'The plugin class ID.', 'type' => 'string', 'example' => 'cls-xxx'],
+ 'type' => ['title' => '', 'description' => 'The plugin type category.', 'type' => 'string', 'example' => 'AI'],
+ 'mode' => ['title' => '', 'description' => 'The plugin running mode.', 'type' => 'string', 'example' => 'Wasm'],
+ 'name' => ['title' => '', 'description' => 'The plugin class name.', 'type' => 'string', 'example' => 'ai-security-guard'],
+ 'alias' => ['title' => '', 'description' => 'The plugin class alias.', 'type' => 'string', 'example' => 'AI安全护栏'],
+ 'description' => ['title' => '', 'description' => 'The plugin class description.', 'type' => 'string', 'example' => 'AI请求内容安全检测插件'],
+ 'source' => ['title' => '', 'description' => 'The plugin source.', 'type' => 'string', 'example' => 'HigressOfficial'],
+ 'version' => ['title' => '', 'description' => 'The plugin version number.', 'type' => 'string', 'example' => '1.0.0'],
+ 'versionDescription' => ['title' => '', 'description' => 'The version description.', 'type' => 'string', 'example' => '初始版本'],
+ 'executeStage' => ['title' => '', 'description' => 'The execution stage.', 'type' => 'string', 'example' => 'AUTHN'],
+ 'executePriority' => ['title' => '', 'description' => 'The execution priority.', 'type' => 'integer', 'example' => '100', 'format' => 'int32'],
+ 'configExample' => ['title' => '', 'description' => 'The configuration example (JSON string).', 'type' => 'string', 'example' => '{"checkRequest":true}'],
+ 'imageName' => ['title' => '', 'description' => 'The Wasm image name.', 'type' => 'string', 'example' => 'higress-registry.tencentcloudcr.com/ai-security-guard'],
+ 'wasmLanguage' => ['title' => '', 'description' => 'The Wasm programming language.', 'type' => 'string', 'example' => 'Rust'],
+ 'supportedMinGatewayVersion' => ['title' => '', 'description' => 'The minimum supported gateway DPI engine version.', 'type' => 'string', 'example' => '2.1.11'],
+ 'wasmUrl' => ['title' => '', 'description' => 'The Wasm file download URL.', 'type' => 'string', 'example' => 'https://...'],
+ 'innerPlugin' => ['title' => '', 'description' => 'Indicates whether the plugin is a built-in plugin.', 'type' => 'boolean', 'example' => 'false'],
+ ],
+ 'example' => '',
],
'PolicyClassInfo' => [
'title' => 'A short description of struct',
'description' => 'The policy template.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'classId' => [
- 'title' => 'classId',
- 'description' => 'The template identifier.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'pc-cpqm0s94ckt1displ8ng',
- 'backendName' => 'classId',
- ],
- 'name' => [
- 'title' => 'name',
- 'description' => 'The template name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'ConcurrencyLimit',
- 'backendName' => 'name',
- ],
- 'alias' => [
- 'title' => 'alias',
- 'description' => 'The template alias.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Rate Limit',
- 'backendName' => 'alias',
- ],
- 'version' => [
- 'title' => 'version',
- 'description' => 'The template version.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '1.0.0',
- 'backendName' => 'version',
- ],
- 'description' => [
- 'title' => 'description',
- 'description' => 'The template description.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Limits the number of requests per unit of time',
- 'backendName' => 'description',
- ],
- 'type' => [
- 'title' => 'type',
- 'description' => 'The policy type.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'FlowControl',
- 'backendName' => 'type',
- ],
- 'direction' => [
- 'title' => 'direction',
- 'description' => 'The direction of traffic on which the policy takes effect.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'InBound',
- 'backendName' => 'direction',
- ],
+ 'classId' => ['title' => 'classId', 'description' => 'The template identifier.'."\n", 'type' => 'string', 'example' => 'pc-cpqm0s94ckt1displ8ng'],
+ 'name' => ['title' => 'name', 'description' => 'The template name.'."\n", 'type' => 'string', 'example' => 'ConcurrencyLimit'],
+ 'alias' => ['title' => 'alias', 'description' => 'The template alias.'."\n", 'type' => 'string', 'example' => '并发控制'],
+ 'version' => ['title' => 'version', 'description' => 'The template version.'."\n", 'type' => 'string', 'example' => '1.0.0'],
+ 'description' => ['title' => 'description', 'description' => 'The template description.'."\n", 'type' => 'string', 'example' => '通过控制并发线程数以保证系统的稳定性。适用于应用内部或下游依赖出现不稳定的场景,例如慢SQL、下游应用响应时间变长等。'],
+ 'type' => ['title' => 'type', 'description' => 'The policy type.'."\n", 'type' => 'string', 'example' => 'FlowControl'],
+ 'direction' => ['title' => 'direction', 'description' => 'The direction of traffic on which the policy takes effect.'."\n", 'type' => 'string', 'example' => 'InBound'],
'attachableResourceTypes' => [
'title' => 'attachableResourceTypes',
'description' => 'The list of resource types that can be mounted.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'description' => 'The resource type.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Gateway',
- 'extendType' => 'true',
- ],
- 'backendName' => 'attachableResourceTypes',
- ],
- 'executeStage' => [
- 'title' => 'executeStage',
- 'description' => 'The execution phase.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'POST',
- 'backendName' => 'executeStage',
- ],
- 'executePriority' => [
- 'title' => 'executePriority',
- 'description' => 'The execution priority.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '1',
- 'backendName' => 'executePriority',
- ],
- 'enableLog' => [
- 'title' => 'enableLog',
- 'description' => 'Specifies whether to enable logging.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'true',
- 'backendName' => 'enableLog',
- ],
- 'deprecated' => [
- 'title' => 'deprecated',
- 'description' => 'Specifies whether the policy has been deprecated.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'false',
- 'backendName' => 'deprecated',
- ],
- 'configExample' => [
- 'title' => 'configExample',
- 'description' => 'A configuration example.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '{}',
- 'backendName' => 'configExample',
+ 'items' => ['description' => 'The resource type.'."\n", 'type' => 'string', 'example' => 'Gateway', 'title' => ''],
+ 'example' => '',
],
+ 'executeStage' => ['title' => 'executeStage', 'description' => 'The execution phase.'."\n", 'type' => 'string', 'example' => 'POST'],
+ 'executePriority' => ['title' => 'executePriority', 'description' => 'The execution priority.'."\n", 'type' => 'string', 'example' => '1'],
+ 'enableLog' => ['title' => 'enableLog', 'description' => 'Specifies whether to enable logging.'."\n", 'type' => 'boolean', 'example' => 'true'],
+ 'deprecated' => ['title' => 'deprecated', 'description' => 'Specifies whether the policy has been deprecated.'."\n", 'type' => 'boolean', 'example' => 'false'],
+ 'configExample' => ['title' => 'configExample', 'description' => 'A configuration example.'."\n", 'type' => 'string', 'example' => '{}'],
],
+ 'example' => '',
+ ],
+ 'PolicyDetailInfo' => [
+ 'title' => '',
+ 'description' => 'PolicyDetailInfo',
+ 'type' => 'object',
+ 'properties' => [
+ 'policyId' => ['title' => '', 'description' => 'The policy ID.', 'type' => 'string', 'example' => 'plc-xxx'],
+ 'classId' => ['title' => '', 'description' => 'The policy class ID.', 'type' => 'string', 'example' => 'cls-xxx'],
+ 'name' => ['title' => '', 'description' => 'The policy name.', 'type' => 'string', 'example' => 'my-rate-limit'],
+ 'className' => ['title' => '', 'description' => 'The policy type name.', 'type' => 'string', 'example' => 'RateLimit'],
+ 'description' => ['title' => '', 'description' => 'The policy description.', 'type' => 'string', 'example' => '每秒限流100次'],
+ 'config' => ['title' => '', 'description' => 'The policy configuration content (JSON string).', 'type' => 'string', 'example' => '{"rate":100,"burst":50}'],
+ ],
+ 'example' => '',
],
'PolicyInfo' => [
'title' => 'A short description of struct',
'description' => 'The information about the policy.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'policyId' => [
- 'title' => 'policyId',
- 'description' => 'The policy ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'p-cq7l5s5lhtgi6qasrdc0',
- 'backendName' => 'policyId',
- ],
- 'direction' => [
- 'title' => 'direction',
- 'description' => 'The direction of traffic on which the policy takes effect. Valid values:'."\n"
- ."\n"
- .'* OutBound'."\n"
- .'* InBound'."\n"
- .'* Both'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'InBound',
- 'backendName' => 'direction',
- ],
- 'className' => [
- 'title' => 'className',
- 'description' => 'The class name supported by the policy. Different policies support different mount points. This parameter is used in combination with AttachResourceType.'."\n"
- ."\n"
- .'* RateLimit: throttles traffic. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
- .'* ConcurrencyLimit: controls concurrency. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
- .'* CircuitBreaker: breaks circuits and downgrades traffic. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
- .'* HttpRewrite: rewrites HTTP traffic. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
- .'* HeaderModify: modifies headers. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
- .'* Cors: supports CORS. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
- .'* FlowCopy: replicates traffic. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
- .'* Timeout: times out requests. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
- .'* Retry: retries requests. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
- .'* IpAccessControl: implements IP address-based access control. Supported: HttpApi, Operation, GatewayRoute, Domain, and Gateway.'."\n"
- .'* DirectResponse: mocks responses. Supported: Operation and GatewayRoute.'."\n"
- .'* Redirect: redirects traffic. Supported: GatewayRoute.'."\n"
- .'* Fallback: implements fallback. Supported: Operation and GatewayRoute.'."\n"
- .'* ServiceTls: implements TLS authentication. Supported: GatewayService.'."\n"
- .'* ServiceLb: balances loads. Supported: GatewayService.'."\n"
- .'* ServicePortTls: implements service port TLS authentication. Supported: GatewayServicePort.'."\n"
- .'* Waf: implements WAF protection. Supported: GatewayRoute and Gateway.'."\n"
- .'* JWTAuth: implements global JWT authentication. Supported: Gateway.'."\n"
- .'* OIDCAuth: implements global OIDC authentication. Supported: Gateway.'."\n"
- .'* ExternalZAuth: implements custom authentication. Supported: Gateway.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'backendName' => 'className',
- ],
- 'classAlias' => [
- 'title' => 'classAlias',
- 'description' => 'The policy class alias.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '',
- 'backendName' => 'classAlias',
- ],
- 'config' => [
- 'title' => 'config',
- 'description' => 'The policy configurations.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '{"enable":false}',
- 'backendName' => 'config',
- ],
+ 'policyId' => ['title' => 'policyId', 'description' => 'The policy ID.'."\n", 'type' => 'string', 'example' => 'p-cq7l5s5lhtgi6qasrdc0'],
+ 'direction' => ['title' => 'direction', 'description' => 'The direction of traffic on which the policy takes effect. Valid values:'."\n"
+ ."\n"
+ .'* OutBound'."\n"
+ .'* InBound'."\n"
+ .'* Both'."\n", 'type' => 'string', 'example' => 'InBound'],
+ 'className' => ['title' => 'className', 'description' => 'The class name supported by the policy. Different policies support different mount points. This parameter is used in combination with AttachResourceType.'."\n"
+ ."\n"
+ .'* RateLimit: throttles traffic. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
+ .'* ConcurrencyLimit: controls concurrency. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
+ .'* CircuitBreaker: breaks circuits and downgrades traffic. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
+ .'* HttpRewrite: rewrites HTTP traffic. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
+ .'* HeaderModify: modifies headers. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
+ .'* Cors: supports CORS. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
+ .'* FlowCopy: replicates traffic. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
+ .'* Timeout: times out requests. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
+ .'* Retry: retries requests. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
+ .'* IpAccessControl: implements IP address-based access control. Supported: HttpApi, Operation, GatewayRoute, Domain, and Gateway.'."\n"
+ .'* DirectResponse: mocks responses. Supported: Operation and GatewayRoute.'."\n"
+ .'* Redirect: redirects traffic. Supported: GatewayRoute.'."\n"
+ .'* Fallback: implements fallback. Supported: Operation and GatewayRoute.'."\n"
+ .'* ServiceTls: implements TLS authentication. Supported: GatewayService.'."\n"
+ .'* ServiceLb: balances loads. Supported: GatewayService.'."\n"
+ .'* ServicePortTls: implements service port TLS authentication. Supported: GatewayServicePort.'."\n"
+ .'* Waf: implements WAF protection. Supported: GatewayRoute and Gateway.'."\n"
+ .'* JWTAuth: implements global JWT authentication. Supported: Gateway.'."\n"
+ .'* OIDCAuth: implements global OIDC authentication. Supported: Gateway.'."\n"
+ .'* ExternalZAuth: implements custom authentication. Supported: Gateway.'."\n", 'type' => 'string', 'example' => 'RateLimit'],
+ 'classAlias' => ['title' => 'classAlias', 'description' => 'The policy class alias.'."\n", 'type' => 'string', 'example' => '流量控制'],
+ 'config' => ['title' => 'config', 'description' => 'The policy configurations.'."\n", 'type' => 'string', 'example' => '{"enable":false}'],
'attachments' => [
'title' => 'attachments',
'description' => 'The mount information.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'description' => 'The mount information.'."\n",
- 'visibility' => 'Public',
- 'extendType' => 'true',
- '$ref' => '#/components/schemas/Attachment',
- ],
- 'backendName' => 'attachments',
- ],
- 'name' => [
- 'title' => 'name',
- 'description' => 'The policy name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'test-policy',
- 'backendName' => 'name',
- ],
- 'type' => [
- 'title' => 'type',
- 'description' => 'The policy type.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
+ 'items' => ['description' => 'The mount information.'."\n", '$ref' => '#/components/schemas/Attachment', 'title' => '', 'example' => ''],
'example' => '',
- 'backendName' => 'type',
],
+ 'name' => ['title' => 'name', 'description' => 'The policy name.'."\n", 'type' => 'string', 'example' => 'test-policy'],
+ 'type' => ['title' => 'type', 'description' => 'The policy type.'."\n", 'type' => 'string', 'example' => '策略类型'],
'executeStage' => [
'title' => 'executeStage',
'description' => 'The execution phase.'."\n"
@@ -7211,73 +3597,29 @@
.'* PluginAuthentication'."\n"
.'* PluginDefault'."\n"
.'* PluginPost'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'PluginStatistic' => 'PluginStatistic',
- 'PluginAuthorization' => 'PluginAuthorization',
- 'PluginPre' => 'PluginPre',
- 'PluginAuthentication' => 'PluginAuthentication',
- 'PluginDefault' => 'PluginDefault',
- 'PluginPost' => 'PluginPost',
- ],
+ 'enumValueTitles' => ['PluginStatistic' => 'PluginStatistic', 'PluginAuthorization' => 'PluginAuthorization', 'PluginPre' => 'PluginPre', 'PluginAuthentication' => 'PluginAuthentication', 'PluginDefault' => 'PluginDefault', 'PluginPost' => 'PluginPost'],
'example' => 'PluginPost',
- 'backendName' => 'executeStage',
- ],
- 'executePriority' => [
- 'title' => 'executePriority',
- 'description' => 'The execution priority.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '310',
- 'backendName' => 'executePriority',
],
+ 'executePriority' => ['title' => 'executePriority', 'description' => 'The execution priority.'."\n", 'type' => 'string', 'example' => '310'],
],
+ 'example' => '',
],
'ResourceInfo' => [
'title' => 'A short description of struct',
'description' => 'ResourceInfo'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'resourceType' => [
- 'title' => 'resourceType',
- 'description' => 'The resource type. Valid values: HttpApi, Operation, GatewayRoute, Gateway, and GatewayDomain.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'HttpApi',
- 'backendName' => 'resourceType',
- ],
- 'resourceId' => [
- 'title' => 'resourceId',
- 'description' => 'The resource ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'api-1nsu2d****',
- 'backendName' => 'resourceId',
- ],
- 'resourceName' => [
- 'title' => 'resourceName',
- 'description' => 'The resource name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'test1023',
- 'backendName' => 'resourceName',
- ],
- 'resourceVersion' => [
- 'title' => 'resourceVersion',
- 'description' => 'The resource version.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '1.0.0',
- 'backendName' => 'resourceVersion',
- ],
+ 'resourceType' => ['title' => 'resourceType', 'description' => 'The resource type. Valid values: HttpApi, Operation, GatewayRoute, Gateway, and GatewayDomain.'."\n", 'type' => 'string', 'example' => 'HttpApi'],
+ 'resourceId' => ['title' => 'resourceId', 'description' => 'The resource ID.'."\n", 'type' => 'string', 'example' => 'api-1nsu2d****'],
+ 'resourceName' => ['title' => 'resourceName', 'description' => 'The resource name.'."\n", 'type' => 'string', 'example' => 'test1023'],
+ 'resourceVersion' => ['title' => 'resourceVersion', 'description' => 'The resource version.'."\n", 'type' => 'string', 'example' => '1.0.0'],
],
+ 'example' => '',
],
'ResourceStatistic' => [
'title' => 'A short description of struct',
'description' => 'The resource statistics.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
'resourceType' => [
@@ -7288,679 +3630,322 @@
."\n"
.'* HttpApi'."\n"
.'* GatewayRoute'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'HttpApi' => 'HttpApi',
- 'GatewayRoute' => 'GatewayRoute',
- ],
+ 'enumValueTitles' => ['HttpApi' => 'HttpApi', 'GatewayRoute' => 'GatewayRoute'],
'example' => 'HttpApi',
- 'backendName' => 'resourceType',
- ],
- 'resourceCount' => [
- 'title' => 'resourceCount',
- 'description' => 'The number of online resources.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- 'backendName' => 'resourceCount',
],
+ 'resourceCount' => ['title' => 'resourceCount', 'description' => 'The number of online resources.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '10'],
],
+ 'example' => '',
],
'RiskCheckResults' => [
'title' => 'RiskCheckResults',
'description' => 'object',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'gatewayId' => [
- 'title' => '',
- 'description' => 'The gateway ID',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gw-0364f863b1a04474911b48cd6d51d03d',
- 'backendName' => 'gatewayId',
- ],
+ 'gatewayId' => ['title' => '网关实例ID', 'description' => 'The gateway ID', 'type' => 'string', 'example' => 'gw-0364f863b1a04474911b48cd6d51d03d'],
'metadata' => [
- 'title' => '',
+ 'title' => '实例元数据',
'description' => 'The instance metadata',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'clusterType' => [
- 'title' => '',
- 'description' => 'The cluster type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Ingress',
- 'backendName' => 'clusterType',
- ],
- 'version' => [
- 'title' => '',
- 'description' => 'The version',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '2.0.14',
- 'backendName' => 'version',
- ],
- 'spec' => [
- 'title' => '',
- 'description' => 'The specification',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'apigw.small.x1',
- 'backendName' => 'spec',
- ],
- 'replica' => [
- 'title' => '',
- 'description' => 'The replica count',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '3',
- 'backendName' => 'replica',
- ],
+ 'clusterType' => ['title' => '集群类型', 'description' => 'The cluster type', 'type' => 'string', 'example' => 'Ingress'],
+ 'version' => ['title' => '实例版本', 'description' => 'The version', 'type' => 'string', 'example' => '2.0.14'],
+ 'spec' => ['title' => '实例规格', 'description' => 'The specification', 'type' => 'string', 'example' => 'apigw.small.x1'],
+ 'replica' => ['title' => '副本数', 'description' => 'The replica count', 'type' => 'integer', 'format' => 'int32', 'example' => '3'],
],
- 'backendName' => 'metadata',
+ 'example' => '',
],
'status' => [
- 'title' => '',
+ 'title' => '风险检测状态',
'description' => 'The execution status',
- 'visibility' => 'Public',
'type' => 'string',
'example' => 'SUCCESS',
- 'backendName' => 'status',
- 'enum' => [
- 'SUCCESS',
- 'FAIL',
- 'RUNNING',
- ],
- ],
- 'score' => [
- 'title' => '',
- 'description' => 'The risk score',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'maximum' => '100',
- 'minimum' => '0',
- 'example' => '85',
- 'backendName' => 'score',
+ 'enum' => ['SUCCESS', 'FAIL', 'RUNNING'],
],
+ 'score' => ['title' => '风险评分', 'description' => 'The risk score', 'type' => 'integer', 'format' => 'int32', 'maximum' => '100', 'minimum' => '0', 'example' => '85'],
'riskLevel' => [
- 'title' => '',
+ 'title' => '风险等级',
'description' => 'The risk level',
- 'visibility' => 'Public',
'type' => 'string',
'example' => 'MEDIUM',
- 'backendName' => 'riskLevel',
- 'enum' => [
- 'LOW',
- 'MEDIUM',
- 'HIGH',
- ],
- ],
- 'totalRisk' => [
- 'title' => '',
- 'description' => 'The total number of risks',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- 'backendName' => 'totalRisk',
- ],
- 'checkTime' => [
- 'title' => '',
- 'description' => 'The check time',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1234567890000',
- 'backendName' => 'checkTime',
- ],
- 'snapshotTime' => [
- 'description' => 'The snapshot time',
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1234567890000',
- 'backendName' => 'snapshotTime',
+ 'enum' => ['LOW', 'MEDIUM', 'HIGH'],
],
+ 'totalRisk' => ['title' => '风险项数目', 'description' => 'The total number of risks', 'type' => 'integer', 'format' => 'int32', 'example' => '1'],
+ 'checkTime' => ['title' => '检查时间戳', 'description' => 'The check time', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890000'],
+ 'snapshotTime' => ['description' => 'The snapshot time', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890000', 'title' => ''],
'riskDetails' => [
- 'title' => '',
+ 'title' => '风险项列表',
'description' => 'The risk details list',
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'object',
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'riskCode' => [
- 'title' => '',
- 'description' => 'The risk code',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '30010010001',
- 'backendName' => 'riskCode',
- ],
- 'riskType' => [
- 'title' => '',
- 'description' => 'The risk type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'SYSTEM',
- 'backendName' => 'riskType',
- ],
- 'riskName' => [
- 'title' => '',
- 'description' => 'The risk title',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Version Risk',
- 'backendName' => 'riskName',
- ],
+ 'riskCode' => ['title' => '风险项ID', 'description' => 'The risk code', 'type' => 'string', 'example' => '30010010001'],
+ 'riskType' => ['title' => '风险类型', 'description' => 'The risk type', 'type' => 'string', 'example' => 'SYSTEM'],
+ 'riskName' => ['title' => '风险名称', 'description' => 'The risk title', 'type' => 'string', 'example' => '单节点架构风险'],
'riskLevel' => [
- 'title' => '',
+ 'title' => '风险等级',
'description' => 'The risk level',
- 'visibility' => 'Public',
'type' => 'string',
'example' => 'HIGH',
- 'backendName' => 'riskLevel',
- 'enum' => [
- 'CRITICAL',
- 'HIGH',
- 'MEDIUM',
- 'LOW',
- ],
- ],
- 'description' => [
- 'title' => '',
- 'description' => 'The risk description',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'The version is outdated',
- 'backendName' => 'description',
- ],
- 'situation' => [
- 'title' => '',
- 'description' => 'The risk situation',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Current version is 2 releases behind',
- 'backendName' => 'situation',
- ],
- 'suggestion' => [
- 'title' => '',
- 'description' => 'The fix suggestion',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Upgrade to the latest version',
- 'backendName' => 'suggestion',
- ],
- 'isNoticeMute' => [
- 'title' => '',
- 'description' => 'Whether to mute notifications',
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'example' => 'false',
- 'backendName' => 'isNoticeMute',
- ],
- 'checkModule' => [
- 'title' => '',
- 'description' => 'The check module',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'BaseInfo',
- 'backendName' => 'checkModule',
+ 'enum' => ['CRITICAL', 'HIGH', 'MEDIUM', 'LOW'],
],
+ 'description' => ['title' => '风险描述', 'description' => 'The risk description', 'type' => 'string', 'example' => '{"desc":"单节点实例存在架构风险,单点故障会导致服务不可用。建议扩容到2节点及以上。"}'],
+ 'situation' => ['title' => '现状描述', 'description' => 'The risk situation', 'type' => 'string', 'example' => '{"desc":"集群节点数为1,不具备高可用能力"}'],
+ 'suggestion' => ['title' => '建议措施', 'description' => 'The fix suggestion', 'type' => 'string', 'example' => '{"desc":"扩容到2节点及以上","links":[{"descEn":"click to upgrade specification","type":"upgrade","desc":"点击扩容"}]}'],
+ 'isNoticeMute' => ['title' => '通知是否屏蔽', 'description' => 'Whether to mute notifications', 'type' => 'boolean', 'example' => 'false'],
+ 'checkModule' => ['title' => '检测模块', 'description' => 'The check module', 'type' => 'string', 'example' => 'BaseInfo'],
'data' => [
- 'title' => '',
+ 'title' => '风险详细数据',
'description' => 'The risk detailed data',
- 'visibility' => 'Public',
'type' => 'object',
- 'additionalProperties' => [
- 'description' => 'string',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '["",""]',
- ],
- 'backendName' => 'data',
+ 'additionalProperties' => ['description' => 'string', 'type' => 'string', 'example' => '["",""]', 'title' => ''],
+ 'example' => '',
],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'riskDetails',
+ 'example' => '',
],
],
+ 'example' => '',
],
'Service' => [
- 'title' => 'apig service',
- 'description' => 'The service object.'."\n",
- 'visibility' => 'Public',
+ 'title' => '',
+ 'description' => 'The service.',
'type' => 'object',
'properties' => [
- 'serviceId' => [
- 'title' => '',
- 'description' => 'The service unique ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'svc-cr6pk4tlhtgm***',
- 'backendName' => 'serviceId',
- ],
- 'sourceType' => [
- 'title' => '',
- 'description' => 'The source type.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'MSE_NACOS',
- 'backendName' => 'sourceType',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The service name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'user-service',
- 'backendName' => 'name',
- ],
- 'namespace' => [
+ 'serviceId' => ['title' => '', 'description' => 'The unique ID of the service.', 'type' => 'string', 'example' => 'svc-cr6pk4tlhtgm***'],
+ 'sourceType' => ['title' => '', 'description' => 'The source type of the service.', 'type' => 'string', 'example' => 'MSE_NACOS'],
+ 'name' => ['title' => '', 'description' => 'The service name.', 'type' => 'string', 'example' => 'user-service'],
+ 'namespace' => ['title' => '', 'description' => 'The namespace.', 'type' => 'string', 'example' => 'PUBLIC'],
+ 'healthCheck' => ['title' => '', 'description' => 'The health check configuration.', '$ref' => '#/components/schemas/ServiceHealthCheck', 'example' => ''],
+ 'healthStatus' => [
'title' => '',
- 'description' => 'The namespace of the service.'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The health check status. Valid values:'."\n"
+ .'- Healthy'."\n"
+ .'- Unhealthy',
+ 'enumValueTitles' => ['Unhealthy' => 'Unhealthy.', 'Healthy' => 'Healthy.'],
'type' => 'string',
- 'example' => 'PUBLIC',
- 'backendName' => 'namespace',
+ 'example' => 'Healthy',
],
+ 'qualifier' => ['title' => '', 'description' => 'The qualifier of the function.', 'type' => 'string', 'example' => 'LATEST'],
+ 'createTimestamp' => ['title' => '', 'description' => 'The time when the service was created.', 'type' => 'integer', 'format' => 'int64', 'example' => '1725617840096'],
+ 'updateTimestamp' => ['title' => '', 'description' => 'The time when the service was updated.', 'type' => 'integer', 'format' => 'int64', 'example' => '1725868548440'],
+ 'protocol' => ['title' => '', 'description' => 'The service protocol.', 'type' => 'string', 'example' => 'HTTP'],
+ 'gatewayId' => ['title' => '', 'description' => 'The gateway instance ID.', 'type' => 'string', 'example' => 'gw-xxxx'],
+ 'modelProviderId' => ['title' => '', 'type' => 'string', 'description' => '', 'example' => 'mp-xxxx'],
+ 'resourceGroupId' => ['title' => '', 'description' => 'The ID of the resource group.', 'type' => 'string', 'example' => 'rg-xxx'],
+ 'groupName' => ['title' => '', 'description' => 'The service group name.', 'type' => 'string', 'example' => 'publich'],
+ 'aiServiceConfig' => ['description' => 'The AI service configuration.', '$ref' => '#/components/schemas/AiServiceConfig', 'title' => '', 'example' => ''],
+ 'agentServiceConfig' => ['description' => 'The agent service configuration.', '$ref' => '#/components/schemas/AgentServiceConfig', 'title' => '', 'example' => ''],
+ 'expressType' => ['title' => '', 'description' => 'The CloudFlow execution mode.', 'type' => 'string', 'example' => 'StartExecution'],
'addresses' => [
'title' => '',
- 'description' => 'The address details, which can be IP addresses or domain names.'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The address information, including IP addresses or domain names.',
'type' => 'array',
- 'items' => [
- 'description' => 'The domain names or fixed IP addresses.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '127.0.0.1:8080',
- 'extendType' => 'true',
- ],
- 'backendName' => 'addresses',
+ 'items' => ['description' => 'The list of domain names or static addresses.', 'type' => 'string', 'example' => '127.0.0.1:8080', 'title' => ''],
+ 'example' => '',
],
'ports' => [
'title' => '',
- 'description' => 'The list of objects containing port details.'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The list of port information.',
'type' => 'array',
'items' => [
- 'description' => 'An object containing details about a port.'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The port information.',
'type' => 'object',
'properties' => [
- 'port' => [
- 'title' => '',
- 'description' => 'The port number.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '8080',
- 'backendName' => 'port',
- ],
- 'name' => [
- 'title' => '',
- 'description' => 'The port name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'user-service',
- 'backendName' => 'name',
- ],
+ 'port' => ['title' => '', 'description' => 'The port number.', 'type' => 'integer', 'format' => 'int32', 'example' => '8080'],
+ 'name' => ['title' => '', 'description' => 'The port name.', 'type' => 'string', 'example' => 'user-service'],
'protocol' => [
'title' => '',
- 'description' => 'The protocol. Valid values: TCP and UDP.'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The protocol. Valid values: TCP and UDP.',
+ 'enumValueTitles' => ['TCP' => 'TCP', 'UDP' => 'UDP'],
'type' => 'string',
- 'enumValueTitles' => [
- 'TCP' => 'TCP',
- 'UDP' => 'UDP',
- ],
'example' => 'TCP',
- 'backendName' => 'protocol',
],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'ports',
+ 'example' => '',
],
'unhealthyEndpoints' => [
'title' => '',
- 'description' => 'The list of unhealthy endpoints.'."\n",
- 'visibility' => 'Public',
+ 'description' => 'The unhealthy endpoints.',
'type' => 'array',
- 'items' => [
- 'description' => 'An unhealthy endpoint.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '192.168.1.12:8080',
- 'extendType' => 'true',
- ],
- 'backendName' => 'unhealthyEndpoints',
+ 'items' => ['description' => 'The unhealthy endpoint.', 'type' => 'string', 'example' => '192.168.1.12:8080', 'title' => ''],
+ 'example' => '',
],
'outlierEndpoints' => [
- 'title' => '熔断的endpoints',
- 'description' => 'The outlier endpoints list',
- 'visibility' => 'Public',
+ 'title' => '',
+ 'description' => 'The circuit-broken endpoints.',
'type' => 'array',
- 'items' => [
- 'description' => 'string',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => '["10.0.0.2:8080"]',
- 'extendType' => 'true',
- ],
- 'backendName' => 'outlierEndpoints',
+ 'items' => ['description' => 'The parameter.', 'type' => 'string', 'example' => '["10.0.0.2:8080"]', 'title' => ''],
+ 'example' => '',
],
- 'healthCheck' => [
+ 'labelDetails' => [
'title' => '',
- 'description' => 'The health check configurations.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'healthCheck',
- '$ref' => '#/components/schemas/ServiceHealthCheck',
+ 'description' => 'The label information of the service.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The parameter.', '$ref' => '#/components/schemas/LabelDetail', 'title' => '', 'example' => ''],
+ 'example' => '',
],
- 'healthStatus' => [
- 'title' => '',
- 'description' => 'The health check status.'."\n"
- ."\n"
- .'Valid values:'."\n"
- ."\n"
- .'* Unhealthy'."\n"
- .'* Healthy'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'enumValueTitles' => [
- 'Unhealthy' => '',
- 'Healthy' => '',
+ 'runtimeDetailStatus' => ['title' => '', 'type' => 'string', 'description' => '', 'example' => 'Available'],
+ 'runtimeDetailErrorCode' => ['title' => '', 'type' => 'string', 'description' => '', 'example' => 'RuntimeEndpointTimeout'],
+ 'versions' => [
+ 'description' => 'The list of service versions.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The version name.', 'type' => 'string', 'title' => '', 'example' => 'v1'],
+ 'labels' => [
+ 'description' => 'The list of version labels.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list.',
+ 'type' => 'object',
+ 'properties' => [
+ 'key' => ['description' => 'The label key.', 'type' => 'string', 'title' => '', 'example' => 'version'],
+ 'value' => ['description' => 'The label value.', 'type' => 'string', 'title' => '', 'example' => 'v1'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
- 'example' => 'Healthy',
- 'backendName' => 'healthStatus',
- ],
- 'qualifier' => [
'title' => '',
- 'description' => 'The function qualifier name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'LATEST',
- 'backendName' => 'qualifier',
- ],
- 'createTimestamp' => [
- 'title' => '',
- 'description' => 'The creation time (unix timestamp).'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1725617840096',
- 'backendName' => 'createTimestamp',
- ],
- 'updateTimestamp' => [
- 'title' => '',
- 'description' => 'The last modified time (unix timestamp).'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1725868548440',
- 'backendName' => 'updateTimestamp',
- ],
- 'protocol' => [
- 'title' => '',
- 'description' => 'The service protocol type.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'HTTP',
- 'backendName' => 'protocol',
- ],
- 'gatewayId' => [
- 'title' => '',
- 'description' => 'The gateway instance ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'gw-xxxx',
- 'backendName' => 'gatewayId',
- ],
- 'resourceGroupId' => [
- 'title' => '',
- 'description' => 'The resource group ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'rg-xxx',
- 'backendName' => 'resourceGroupId',
+ 'example' => '',
],
- 'groupName' => [
+ ],
+ 'example' => '',
+ ],
+ 'ServiceHealthCheck' => [
+ 'title' => '',
+ 'description' => 'The service health check configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'protocol' => ['title' => '', 'description' => 'The health check protocol. Valid values: TCP, HTTP, and GRPC.', 'type' => 'string', 'example' => 'TCP'],
+ 'timeout' => ['title' => '', 'description' => 'The health check response timeout period.', 'type' => 'integer', 'example' => '5', 'format' => 'int32'],
+ 'interval' => ['title' => '', 'description' => 'The health check interval.', 'type' => 'integer', 'example' => '10', 'format' => 'int32'],
+ 'healthyThreshold' => ['title' => '', 'description' => 'The healthy threshold for the health check.', 'type' => 'integer', 'example' => '2', 'format' => 'int32'],
+ 'unhealthyThreshold' => ['title' => '', 'description' => 'The unhealthy threshold for the health check.', 'type' => 'integer', 'example' => '3', 'format' => 'int32'],
+ 'httpPath' => ['title' => '', 'description' => 'The health check path. This parameter is required when the health check protocol is HTTP.', 'type' => 'string', 'example' => '/health'],
+ 'httpHost' => ['title' => '', 'description' => 'The health check domain name. This parameter is optional when the health check protocol is HTTP.', 'type' => 'string', 'example' => 'example.com'],
+ 'enable' => ['title' => '', 'description' => 'Specifies whether to enable the health check.', 'type' => 'boolean', 'example' => 'true'],
+ ],
+ 'example' => '',
+ ],
+ 'ServiceInfo' => [
+ 'title' => '',
+ 'description' => 'The service summary.',
+ 'type' => 'object',
+ 'properties' => [
+ 'serviceId' => ['description' => 'The service ID.', 'type' => 'string', 'title' => '', 'example' => 'svc-xxx****'],
+ 'name' => ['description' => 'The service name.', 'type' => 'string', 'title' => '', 'example' => 'my-openai-service'],
+ 'namespace' => ['description' => 'The service namespace.', 'type' => 'string', 'title' => '', 'example' => 'default'],
+ 'sourceType' => ['description' => 'The service source type.', 'type' => 'string', 'title' => '', 'example' => 'user'],
+ 'groupName' => ['description' => 'The service group name.', 'type' => 'string', 'title' => '', 'example' => 'default-group'],
+ 'qualifier' => ['description' => 'The service version qualifier.', 'type' => 'string', 'title' => '', 'example' => 'v1'],
+ 'expressType' => ['description' => 'The service routing type.', 'type' => 'string', 'title' => '', 'example' => 'normal'],
+ 'versions' => [
+ 'description' => 'The list of service versions.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list of service versions.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The version name.', 'type' => 'string', 'title' => '', 'example' => 'v1.0.0'],
+ 'labels' => [
+ 'description' => 'The list of version labels.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list of version labels.',
+ 'type' => 'object',
+ 'properties' => [
+ 'key' => ['description' => 'The label key.', 'type' => 'string', 'title' => '', 'example' => 'env'],
+ 'value' => ['description' => 'The label value.', 'type' => 'string', 'title' => '', 'example' => 'production'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
'title' => '',
- 'description' => 'The service group name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'publich',
- 'backendName' => 'groupName',
- ],
- 'aiServiceConfig' => [
- 'description' => 'The AI service configurations.'."\n",
- 'visibility' => 'Public',
- 'backendName' => 'aiServiceConfig',
- '$ref' => '#/components/schemas/AiServiceConfig',
+ 'example' => '',
],
- 'labelDetails' => [
- 'title' => '服务的标签信息',
- 'description' => 'The label details for service version configuration',
- 'visibility' => 'Public',
+ 'ports' => [
+ 'description' => 'The list of service ports.',
'type' => 'array',
'items' => [
- 'description' => 'LabelDetail',
- 'visibility' => 'Public',
- 'extendType' => 'true',
- '$ref' => '#/components/schemas/LabelDetail',
- ],
- 'backendName' => 'labelDetails',
- ],
- 'agentServiceConfig' => [
- 'description' => 'The agent service configuration',
- 'visibility' => 'Public',
- 'backendName' => 'agentServiceConfig',
- '$ref' => '#/components/schemas/AgentServiceConfig',
- ],
- 'expressType' => [
- 'title' => '云工作流执行方式',
- 'description' => 'The express type',
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'StartExecution',
- 'backendName' => 'expressType',
+ 'description' => 'The list of service ports.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The port name.', 'type' => 'string', 'title' => '', 'example' => 'http'],
+ 'port' => ['description' => 'The port number.', 'type' => 'integer', 'title' => '', 'example' => '8080', 'format' => 'int32'],
+ 'protocol' => ['description' => 'The port protocol.', 'type' => 'string', 'title' => '', 'example' => 'HTTP'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'paiWorkspaceName' => ['description' => 'The PAI workspace name.', 'type' => 'string', 'title' => '', 'example' => 'my-workspace'],
+ 'paiWorkspaceId' => ['description' => 'The PAI workspace ID.', 'type' => 'string', 'title' => '', 'example' => 'ws-xxx**** '],
+ 'status' => ['description' => 'The service status.', 'type' => 'string', 'title' => '', 'example' => 'running'],
],
+ 'example' => '',
],
'SslCertMetaInfo' => [
'title' => 'A short description of struct',
'description' => 'The SSL certificate metadata.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'certIdentifier' => [
- 'title' => 'certIdentifier',
- 'description' => 'The certificate ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'backendName' => 'certIdentifier',
- 'example' => 'cert-123',
- ],
- 'isChainCompleted' => [
- 'title' => 'isChainCompleted',
- 'description' => 'isChainCompleted'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'backendName' => 'isChainCompleted',
- 'example' => 'true',
- ],
- 'instanceId' => [
- 'title' => 'instanceId',
- 'description' => 'The instance ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'backendName' => 'instanceId',
- 'example' => 'i-bp1234567890',
- ],
- 'domain' => [
- 'title' => 'domain',
- 'description' => 'The domain name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'backendName' => 'domain',
- 'example' => 'api.example.com',
- ],
- 'fingerprint' => [
- 'title' => 'fingerprint',
- 'description' => 'The certificate fingerprint.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'backendName' => 'fingerprint',
- 'example' => 'A1:B2:C3:D4:E5:F6:78:90:AB:CD:EF:12:34:56:78:90',
- ],
- 'certName' => [
- 'title' => 'certName',
- 'description' => 'The certificate name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'backendName' => 'certName',
- 'example' => 'example.com',
- ],
- 'certId' => [
- 'title' => 'certId',
- 'description' => 'The certificate ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'backendName' => 'certId',
- 'example' => '1234567890',
- ],
- 'commonName' => [
- 'title' => 'commonName',
- 'description' => 'The name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'backendName' => 'commonName',
- 'example' => 'example.com',
- ],
- 'domainMatchCert' => [
- 'title' => 'domainMatchCert',
- 'description' => 'The certificate matching the domain name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'boolean',
- 'backendName' => 'domainMatchCert',
- 'example' => 'true',
- ],
- 'sans' => [
- 'title' => 'sans',
- 'description' => 'sans'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'backendName' => 'sans',
- 'example' => '*.example.com,api.example.com,www.example.com',
- ],
- 'notBeforeTimestamp' => [
- 'title' => 'notBeforeTimestamp',
- 'description' => 'The time when the certificate starts to take effect.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'backendName' => 'notBeforeTimestamp',
- 'example' => '1234567890000',
- ],
- 'notAfterTimestamp' => [
- 'title' => 'notAfterTimestamp',
- 'description' => 'The time when the certificate expires.'."\n",
- 'visibility' => 'Public',
- 'type' => 'integer',
- 'format' => 'int64',
- 'backendName' => 'notAfterTimestamp',
- 'example' => '1234567890000',
- ],
- 'algorithm' => [
- 'title' => 'algorithm',
- 'description' => 'The algorithm.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'backendName' => 'algorithm',
- 'example' => 'RSA2048',
- ],
- 'keySize' => [
- 'title' => 'keySize',
- 'description' => 'The key size.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'backendName' => 'keySize',
- 'example' => '2048',
- ],
- 'issuer' => [
- 'title' => 'issuer',
- 'description' => 'The certificate issuer.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'backendName' => 'issuer',
- 'example' => 'DigiCert Inc',
- ],
- 'serialNo' => [
- 'title' => 'serialNo',
- 'description' => 'The serial number.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'backendName' => 'serialNo',
- 'example' => '03:A1:B2:C3:D4:E5:F6:78:90:AB:CD:EF:12:34:56:78:90',
- ],
- 'md5' => [
- 'title' => 'md5',
- 'description' => 'The md5 value.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'backendName' => 'md5',
- 'example' => 'A1B2C3D4E5F67890ABCDEF1234567890',
- ],
- 'sha2' => [
- 'title' => 'sha2',
- 'description' => 'The sha2 value.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'backendName' => 'sha2',
- 'example' => 'A1B2C3D4E5F67890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890',
- ],
- 'signAlgorithm' => [
- 'title' => 'signAlgorithm',
- 'description' => 'The signature algorithm.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'backendName' => 'signAlgorithm',
- 'example' => 'sha256WithRSAEncryption',
- ],
- ],
+ 'certIdentifier' => ['title' => 'certIdentifier', 'description' => 'The certificate ID.'."\n", 'type' => 'string', 'example' => 'cert-123'],
+ 'isChainCompleted' => ['title' => 'isChainCompleted', 'description' => 'isChainCompleted'."\n", 'type' => 'boolean', 'example' => 'true'],
+ 'instanceId' => ['title' => 'instanceId', 'description' => 'The instance ID.'."\n", 'type' => 'string', 'example' => 'i-bp1234567890'],
+ 'domain' => ['title' => 'domain', 'description' => 'The domain name.'."\n", 'type' => 'string', 'example' => 'api.example.com'],
+ 'fingerprint' => ['title' => 'fingerprint', 'description' => 'The certificate fingerprint.'."\n", 'type' => 'string', 'example' => 'A1:B2:C3:D4:E5:F6:78:90:AB:CD:EF:12:34:56:78:90'],
+ 'certName' => ['title' => 'certName', 'description' => 'The certificate name.'."\n", 'type' => 'string', 'example' => 'example.com'],
+ 'certId' => ['title' => 'certId', 'description' => 'The certificate ID.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890'],
+ 'commonName' => ['title' => 'commonName', 'description' => 'The name.'."\n", 'type' => 'string', 'example' => 'example.com'],
+ 'domainMatchCert' => ['title' => 'domainMatchCert', 'description' => 'The certificate matching the domain name.'."\n", 'type' => 'boolean', 'example' => 'true'],
+ 'sans' => ['title' => 'sans', 'description' => 'sans'."\n", 'type' => 'string', 'example' => '*.example.com,api.example.com,www.example.com'],
+ 'notBeforeTimestamp' => ['title' => 'notBeforeTimestamp', 'description' => 'The time when the certificate starts to take effect.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890000'],
+ 'notAfterTimestamp' => ['title' => 'notAfterTimestamp', 'description' => 'The time when the certificate expires.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890000'],
+ 'algorithm' => ['title' => 'algorithm', 'description' => 'The algorithm.'."\n", 'type' => 'string', 'example' => 'RSA2048'],
+ 'keySize' => ['title' => 'keySize', 'description' => 'The key size.'."\n", 'type' => 'string', 'example' => '2048'],
+ 'issuer' => ['title' => 'issuer', 'description' => 'The certificate issuer.'."\n", 'type' => 'string', 'example' => 'DigiCert Inc'],
+ 'serialNo' => ['title' => 'serialNo', 'description' => 'The serial number.'."\n", 'type' => 'string', 'example' => '03:A1:B2:C3:D4:E5:F6:78:90:AB:CD:EF:12:34:56:78:90'],
+ 'md5' => ['title' => 'md5', 'description' => 'The md5 value.'."\n", 'type' => 'string', 'example' => 'A1B2C3D4E5F67890ABCDEF1234567890'],
+ 'sha2' => ['title' => 'sha2', 'description' => 'The sha2 value.'."\n", 'type' => 'string', 'example' => 'A1B2C3D4E5F67890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890'],
+ 'signAlgorithm' => ['title' => 'signAlgorithm', 'description' => 'The signature algorithm.'."\n", 'type' => 'string', 'example' => 'sha256WithRSAEncryption'],
+ ],
+ 'example' => '',
],
'SubDomainInfo' => [
'title' => 'A short description of struct',
'description' => 'The domain name information.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'domainId' => [
- 'title' => 'domainId',
- 'description' => 'The domain name ID.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'd-cpudb0llhtgl2djvq2sg',
- 'backendName' => 'domainId',
- ],
- 'name' => [
- 'title' => 'name',
- 'description' => 'The domain name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'abc.com',
- 'backendName' => 'name',
- ],
+ 'domainId' => ['title' => 'domainId', 'description' => 'The domain name ID.'."\n", 'type' => 'string', 'example' => 'd-cpudb0llhtgl2djvq2sg'],
+ 'name' => ['title' => 'name', 'description' => 'The domain name.'."\n", 'type' => 'string', 'example' => 'abc.com'],
'protocol' => [
'title' => 'protocol',
'description' => 'The protocol.'."\n"
@@ -7969,14 +3954,9 @@
."\n"
.'* HTTPS'."\n"
.'* HTTP'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'HTTPS' => 'HTTPS',
- 'HTTP' => 'HTTP',
- ],
+ 'enumValueTitles' => ['HTTPS' => 'HTTPS', 'HTTP' => 'HTTP'],
'example' => 'HTTP',
- 'backendName' => 'protocol',
],
'networkType' => [
'title' => 'networkType',
@@ -7986,2932 +3966,2095 @@
."\n"
.'* Intranet'."\n"
.'* Internet'."\n",
- 'visibility' => 'Public',
'type' => 'string',
- 'enumValueTitles' => [
- 'Intranet' => 'Intranet',
- 'Internet' => 'Internet',
- ],
+ 'enumValueTitles' => ['Intranet' => 'Intranet', 'Internet' => 'Internet'],
'example' => 'Intranet',
- 'backendName' => 'networkType',
],
],
+ 'example' => '',
],
'TlsCipherSuitesConfig' => [
'title' => 'A short description of struct',
'description' => 'The TLS cipher suite configurations.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'configType' => [
- 'title' => 'configType',
- 'description' => 'The configuration type.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'Default',
- 'backendName' => 'configType',
- ],
+ 'configType' => ['title' => 'configType', 'description' => 'The configuration type.'."\n", 'type' => 'string', 'example' => 'Default'],
'tlsCipherSuite' => [
'title' => 'tlsCipherSuite',
'description' => 'tlsCipherSuite'."\n",
- 'visibility' => 'Public',
'type' => 'array',
'items' => [
'description' => 'The TLS cipher suite information.'."\n",
- 'visibility' => 'Public',
'type' => 'object',
'properties' => [
- 'name' => [
- 'title' => 'name',
- 'description' => 'The suite name.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'ECDHE-ECDSA-AES256-GCM-SHA384',
- 'backendName' => 'name',
- ],
+ 'name' => ['title' => 'name', 'description' => 'The suite name.'."\n", 'type' => 'string', 'example' => 'ECDHE-ECDSA-AES256-GCM-SHA384'],
'supportVersions' => [
'title' => 'supportVersions',
'description' => 'The supported versions.'."\n",
- 'visibility' => 'Public',
'type' => 'array',
- 'items' => [
- 'description' => 'The supported version.'."\n",
- 'visibility' => 'Public',
- 'type' => 'string',
- 'example' => 'TLS 1.2',
- 'extendType' => 'true',
- ],
- 'backendName' => 'supportVersions',
+ 'items' => ['description' => 'The supported version.'."\n", 'type' => 'string', 'example' => 'TLS 1.2', 'title' => ''],
+ 'example' => '',
],
],
- 'extendType' => 'true',
+ 'title' => '',
+ 'example' => '',
],
- 'backendName' => 'tlsCipherSuite',
+ 'example' => '',
],
],
+ 'example' => '',
],
- ],
- ],
- 'apis' => [
- 'ExportHttpApi' => [
- 'summary' => 'Exports an HTTP API.',
- 'path' => '/v1/http-apis/{httpApiId}/export',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
- 'security' => [
- [
- 'AK' => [],
- ],
- ],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'none',
- 'riskType' => 'high',
- 'chargeType' => 'paid',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway9WMX21',
- ],
- ],
- 'parameters' => [
- [
- 'name' => 'httpApiId',
- 'in' => 'path',
- 'schema' => [
- 'title' => 'API ID。',
- 'description' => 'The HTTP API ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'api-xxx',
+ 'TransportCertificateInfo' => [
+ 'title' => '',
+ 'description' => 'TransportCertificateInfo',
+ 'type' => 'object',
+ 'properties' => [
+ 'certIdentifier' => ['title' => '', 'type' => 'string', 'description' => '', 'example' => ''],
+ 'certName' => ['title' => '', 'type' => 'string', 'description' => '', 'example' => ''],
+ 'commonName' => ['title' => '', 'type' => 'string', 'description' => '', 'example' => ''],
+ 'sans' => ['title' => '', 'type' => 'string', 'description' => '', 'example' => ''],
+ 'certificateMatchStatus' => ['title' => '', 'type' => 'string', 'description' => '', 'example' => ''],
+ 'notBeforeTimestamp' => ['title' => '', 'type' => 'integer', 'description' => '', 'example' => '', 'format' => 'int64'],
+ 'notAfterTimestamp' => ['title' => '', 'type' => 'integer', 'description' => '', 'example' => '', 'format' => 'int64'],
+ 'algorithm' => ['title' => '', 'type' => 'string', 'description' => '', 'example' => ''],
+ 'issuer' => ['title' => '', 'type' => 'string', 'description' => '', 'example' => ''],
+ 'coveredDomains' => [
+ 'title' => '',
+ 'type' => 'array',
+ 'items' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ 'description' => '',
+ 'example' => '',
+ ],
+ 'matchedDomains' => [
+ 'title' => '',
+ 'type' => 'array',
+ 'items' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ 'description' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response parameters.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '4BACB05C-3FE2-588F-9148-700C5C026B74',
- ],
- 'code' => [
- 'title' => '响应状态码。',
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'title' => '响应消息。',
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'data' => [
- 'title' => 'API定义信息。',
- 'description' => 'The API definition.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'specContentBase64' => [
- 'title' => 'Base64编码的API定义。',
- 'description' => 'The Base64-encoded API definition.'."\n",
- 'type' => 'string',
- 'example' => 'b3BlbmFwaTogMy4wLjAKaW5mbzoKICAgIHRpdGxlOiBkZW1vCiAgICBkZXNjcmlwdGlvbjogdGhpc2lzZGVtbwogICAgdmVyc2lvbjogIiIKcGF0aHM6CiAgICAvdXNlci97dXNlcklkfToKICAgICAgICBnZXQ6CiAgICAgICAgICAgIHN1bW1hcnk6IOiOt+WPlueUqOaIt+S/oeaBrwogICAgICAgICAgICBkZXNjcmlwdGlvbjog6I635Y+W55So5oi35L+h5oGvCiAgICAgICAgICAgIG9wZXJhdGlvbklkOiBHZXRVc2VySW5mbwogICAgICAgICAgICByZXNwb25zZXM6CiAgICAgICAgICAgICAgICAiMjAwIjoKICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjog5oiQ5YqfCiAgICAgICAgICAgICAgICAgICAgY29udGVudDoKICAgICAgICAgICAgICAgICAgICAgICAgYXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04OgogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NoZW1hOiBudWxsCnNlcnZlcnM6CiAgICAtIHVybDogaHR0cDovL2FwaS5leGFtcGxlLmNvbS92MQo=',
- ],
- ],
- ],
- ],
+ 'TransportEncryptionInfo' => [
+ 'title' => '',
+ 'description' => 'TransportEncryptionInfo',
+ 'type' => 'object',
+ 'properties' => [
+ 'tlsPolicy' => ['title' => '', 'type' => 'string', 'description' => '', 'example' => ''],
+ 'http2Enabled' => ['title' => '', 'type' => 'boolean', 'description' => '', 'example' => ''],
+ 'deployStatus' => ['title' => '', 'type' => 'string', 'description' => '', 'example' => ''],
+ 'deployError' => ['title' => '', 'type' => 'string', 'description' => '', 'example' => ''],
+ 'certificates' => [
+ 'title' => '',
+ 'type' => 'array',
+ 'items' => ['description' => '', 'title' => '', 'example' => '', '$ref' => '#/components/schemas/TransportCertificateInfo'],
+ 'description' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'ValidationOptions' => [
+ 'description' => 'Parameters',
+ 'type' => 'object',
+ 'properties' => [],
+ 'title' => '',
+ 'example' => '',
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"4BACB05C-3FE2-588F-9148-700C5C026B74\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"specContentBase64\\": \\"b3BlbmFwaTogMy4wLjAKaW5mbzoKICAgIHRpdGxlOiBkZW1vCiAgICBkZXNjcmlwdGlvbjogdGhpc2lzZGVtbwogICAgdmVyc2lvbjogIiIKcGF0aHM6CiAgICAvdXNlci97dXNlcklkfToKICAgICAgICBnZXQ6CiAgICAgICAgICAgIHN1bW1hcnk6IOiOt+WPlueUqOaIt+S/oeaBrwogICAgICAgICAgICBkZXNjcmlwdGlvbjog6I635Y+W55So5oi35L+h5oGvCiAgICAgICAgICAgIG9wZXJhdGlvbklkOiBHZXRVc2VySW5mbwogICAgICAgICAgICByZXNwb25zZXM6CiAgICAgICAgICAgICAgICAiMjAwIjoKICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjog5oiQ5YqfCiAgICAgICAgICAgICAgICAgICAgY29udGVudDoKICAgICAgICAgICAgICAgICAgICAgICAgYXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04OgogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NoZW1hOiBudWxsCnNlcnZlcnM6CiAgICAtIHVybDogaHR0cDovL2FwaS5leGFtcGxlLmNvbS92MQo=\\"\\n }\\n}","type":"json"}]',
- 'title' => 'ExportHttpApi',
- 'translator' => 'machine',
],
- 'ImportHttpApi' => [
- 'summary' => 'Imports HTTP APIs. You can call this operation to import OpenAPI 2.0 and OpenAPI 3.0.x definition files to create REST APIs.',
- 'path' => '/v1/http-apis/import',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ ],
+ 'apis' => [
+ 'AddGatewayQuotaRule' => [
+ 'summary' => 'Creates a gateway quota throttling rule.',
+ 'path' => '/v1/gateways/{gatewayId}/quota-rules',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '220978',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway9WMX21',
- ],
+ 'abilityTreeCode' => '222348',
+ 'abilityTreeNodes' => ['FEATUREapigatewayC93I4Z'],
+ 'tenantRelevance' => 'tenant',
],
'parameters' => [
[
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The unique ID of the gateway.', 'type' => 'string', 'required' => false, 'example' => 'gw-d8ki1xxxxxxxxxxxxxxx'],
+ ],
+ [
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
- 'description' => 'The request body.'."\n",
+ 'title' => '',
+ 'description' => 'The request body.',
'type' => 'object',
'properties' => [
- 'specContentBase64' => [
- 'title' => 'Bse64编码的API定义,支持OAS2.0和OAS3.0规范,支持YAML格式和JSON格式。',
- 'description' => 'The Base64-encoded API definition (supports OAS 2.0/OAS 3.0 in YAML/JSON). This parameter has higher priority than the specFileUrl parameter. However, if the file size exceeds 10 MB, use the specFileUrl parameter to pass the definition.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'b3BlbmFwaTogMy4wLjAKaW5mbzoKICAgIHRpdGxlOiBkZW1vCiAgICBkZXNjcmlwdGlvbjogdGhpc2lzZGVtbwogICAgdmVyc2lvbjogIiIKcGF0aHM6CiAgICAvdXNlci97dXNlcklkfToKICAgICAgICBnZXQ6CiAgICAgICAgICAgIHN1bW1hcnk6IOiOt+WPlueUqOaIt+S/oeaBrwogICAgICAgICAgICBkZXNjcmlwdGlvbjog6I635Y+W55So5oi35L+h5oGvCiAgICAgICAgICAgIG9wZXJhdGlvbklkOiBHZXRVc2VySW5mbwogICAgICAgICAgICByZXNwb25zZXM6CiAgICAgICAgICAgICAgICAiMjAwIjoKICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjog5oiQ5YqfCiAgICAgICAgICAgICAgICAgICAgY29udGVudDoKICAgICAgICAgICAgICAgICAgICAgICAgYXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04OgogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NoZW1hOiBudWxsCnNlcnZlcnM6CiAgICAtIHVybDogaHR0cDovL2FwaS5leGFtcGxlLmNvbS92MQo=',
- ],
- 'specFileUrl' => [
- 'title' => 'OAS文件的下载地址,需要支持免验证下载。优先级低于specContentBase64字段。',
- 'description' => 'The download URL of the API definition file. Must be either a publicly accessible Object Storage Service (OSS) URL or an OSS intranet endpoint within the same region. Requires download permissions. For OSS URLs that are not publicly readable, refer to [https://www.alibabacloud.com/help/en/oss/user-guide/how-to-obtain-the-url-of-a-single-object-or-the-urls-of-multiple-objects](~~39607~~) and use URLs with download permissions. Currently, only OSS URLs are supported.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'https://my-bucket.oss-cn-hangzhou.aliyuncs.com/my-api/api.yaml',
- ],
- 'name' => [
- 'title' => 'API名称。',
- 'description' => 'The imported API name. If not specified, a name is extracted from the API definition file. If the API name and versioning configuration already exist, this import will update the existing API definition based on the strategy field.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'import-test',
- ],
- 'description' => [
- 'title' => 'API描述。',
- 'description' => 'The imported API description (255-byte limit). If not specified, a description is extracted from the API definition file. A maximum of 255 bytes is supported.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'API for testing'."\n",
- ],
- 'versionConfig' => [
- 'description' => 'The API versioning configuration. If versioning is enabled, an imported API that matches both the version number and the API name of an existing API will update that API. If versioning is disabled, an imported API that matches the API name of an existing API will update it.'."\n",
- 'required' => false,
- '$ref' => '#/components/schemas/HttpApiVersionConfig',
- ],
- 'dryRun' => [
- 'title' => '预检功能,不进行导入只检查Swagger定义。',
- 'description' => 'Specifies whether to perform a precheck. If set to true, a check is performed without actual import.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
- 'strategy' => [
- 'title' => '导入时的冲突合并策略,为空默ExistFirst',
- 'description' => 'The conflict resolution strategy when the API to be imported has the same name and version as an existing one. Valid values:'."\n"
- ."\n"
- .'* SpecOnly: full override.'."\n"
- .'* SpecFirst: Merge with priority on the newly imported file. New APIs are created and existing ones are updated. APIs not included in the file remain unchanged.'."\n"
- .'* ExistFirst (default): Merge with priority on existing APIs. New APIs are created but existing ones remain unchanged. If this parameter is not specified, the ExistFirst policy takes effect.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'ExistFirst',
- 'enum' => [
- 'SpecFirst',
- 'SpecOnly',
- 'ExistFirst',
- ],
- ],
- 'targetHttpApiId' => [
- 'title' => '导入覆盖指定的HTTP API。若指定该字段,则name和versionConfig字段失效。',
- 'description' => 'The target REST API ID for direct updates. If specified, the import operation will directly update the designated API instead of creating new APIs or updating existing APIs based on the name and version. Only REST APIs can be specified.'."\n",
+ 'ruleName' => ['title' => '', 'description' => 'The name of the rule.', 'type' => 'string', 'required' => true, 'example' => 'team-rule'],
+ 'quotaDimension' => [
+ 'title' => '',
+ 'description' => 'The quota dimension or throttling type. Valid values: token and credit. The credit quota applies only to dedicated instances of version 2.1.19 or later.',
+ 'enumValueTitles' => ['credit' => 'quota throttling measured by credit consumption.', 'token' => 'quota throttling measured by token count.'],
'type' => 'string',
- 'required' => false,
- 'example' => 'api-xxxx',
+ 'required' => true,
+ 'example' => 'token',
+ 'enum' => ['token', 'credit'],
],
- 'resourceGroupId' => [
- 'description' => 'The [resource group ID](~~151181~~).'."\n",
+ 'quotaLimit' => ['title' => '', 'description' => 'The total available quota per period (the limit).', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1000'],
+ 'windowAlignment' => ['title' => '', 'description' => 'The reset period type. Valid values:'."\n"
+ ."\n"
+ .'- calendar: calendar period. The period starts from the beginning of a calendar day, week, or month.'."\n"
+ .'- epoch: custom period. The period starts from the time the rule is applied. The custom period applies only to dedicated instances of version 2.1.19 or later.', 'type' => 'string', 'required' => false, 'example' => 'calendar'],
+ 'periodType' => [
+ 'title' => '',
+ 'description' => 'The period unit. For calendar periods, the value can be day, week, or month. For custom periods, only day is supported.',
+ 'enumValueTitles' => ['week' => 'calendar week.', 'month' => 'calendar month.', 'day' => 'calendar day.'],
'type' => 'string',
- 'required' => false,
- 'example' => 'rg-acfm3q4zjh7fkki',
- ],
- 'specOssConfig' => [
- 'description' => 'The OSS configuration details.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'regionId' => [
- 'description' => 'The region ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cn-hangzhou',
- ],
- 'bucketName' => [
- 'description' => 'The OSS bucket name.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'api-1',
- ],
- 'objectKey' => [
- 'description' => 'The full file path in OSS.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '/test/swagger.json',
- ],
- ],
- 'required' => false,
+ 'required' => true,
+ 'example' => 'week',
+ 'enum' => ['day', 'week', 'month'],
],
- 'deployConfigs' => [
- 'description' => 'The API deployment configuration.'."\n",
+ 'periodMultiplier' => ['title' => '', 'description' => 'The period multiplier, which specifies the number of periods after which the quota resets. This parameter is required for custom period rules. Minimum value: 1. Maximum value: 60.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'required' => false],
+ 'timezone' => ['title' => '', 'description' => 'The time zone for the calendar period, in UTC+x format.', 'type' => 'string', 'required' => false, 'example' => 'UTC+8', 'default' => 'UTC+8'],
+ 'consumerGroupIds' => [
+ 'title' => '',
+ 'description' => 'The list of consumer group IDs. This parameter is not supported.',
'type' => 'array',
- 'items' => [
- 'description' => 'HttpApiDeployConfig',
- 'required' => false,
- '$ref' => '#/components/schemas/HttpApiDeployConfig',
- ],
- 'required' => false,
- ],
- 'mcpRouteId' => [
- 'description' => 'The MCP route ID.'."\n",
- 'type' => 'string',
+ 'items' => ['title' => '', 'description' => 'The consumer group ID.', 'type' => 'string', 'example' => 'consumer-group-001', 'required' => false],
+ 'deprecated' => true,
'required' => false,
- 'example' => 'xxx',
+ 'example' => 'group1,group2',
],
- 'gatewayId' => [
- 'description' => 'Gateway ID.',
- 'type' => 'string',
+ 'consumerIds' => [
+ 'title' => '',
+ 'description' => 'The list of consumer IDs to bind to the rule. You can specify up to 1,000 consumers in a single request.',
+ 'type' => 'array',
+ 'items' => ['title' => '', 'description' => 'The consumer ID.', 'type' => 'string', 'example' => 'cs-xxxxxx', 'required' => false],
'required' => false,
- 'example' => 'gw-xxx',
+ 'example' => '1001,1002,1003',
],
+ 'dryRun' => ['title' => '', 'description' => 'Specifies whether to perform only a dry run without applying the configuration. A dry run checks whether conflicting rules exist on the bound consumers. For example, a consumer that already has a calendar-day quota rule cannot have another calendar-day quota rule added.', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
+ 'overwrite' => ['title' => '', 'description' => 'Specifies whether to allow overwriting when conflicts exist. If overwriting is allowed, the conflicting consumers are unbound from the old rule and bound to the new rule.', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
+ 'conflictHash' => ['title' => '', 'description' => 'The conflict snapshot hash, used to prevent concurrent dirty overwrites during confirmation. Obtain this value from the response of a previous dry run (dryRun=true).'."\n"
+ ."\n"
+ .'This parameter is not required in the following cases: no conflicts exist, the request is a dry run (dryRun=true), or overwrite is set to false.'."\n"
+ ."\n"
+ .'If dryRun is set to false and overwrite is set to true but this parameter is not specified or the value has expired, the system returns accepted=false with a new conflict preview. Perform a new dry run to confirm the updated conflicts.', 'type' => 'string', 'required' => false, 'example' => 'f8f44dc6cf369a017d56b7197eb4fb5ac4bbb6b09a92b9b41999541fxxxxxxxx'],
],
'required' => false,
+ 'example' => '{\'key\': \'value\'}',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response payload.'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'CE857A85-251D-5018-8103-A38957D71E20',
- ],
- 'code' => [
- 'title' => '响应状态码。',
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'title' => '响应消息。',
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '1234567890'],
+ 'code' => ['title' => '', 'description' => 'The status code or error code.', 'type' => 'string', 'example' => '200, 404, 500'],
+ 'message' => ['title' => '', 'description' => 'The message content.', 'type' => 'string', 'example' => 'success'],
'data' => [
- 'description' => 'The API information.'."\n",
+ 'title' => '',
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'name' => [
- 'description' => 'The API name.'."\n",
- 'type' => 'string',
- 'example' => 'import-test',
- ],
- 'httpApiId' => [
- 'description' => 'The API ID.'."\n",
- 'type' => 'string',
- 'example' => 'api-xxx',
- ],
- 'dryRunInfo' => [
- 'description' => 'The dry run result.'."\n",
+ 'ruleId' => ['title' => '', 'description' => 'The rule ID.', 'type' => 'string', 'example' => 'qr-xxxxx'],
+ 'dryRun' => ['title' => '', 'description' => 'Indicates whether the request is a dry run.', 'type' => 'boolean', 'example' => 'false'],
+ 'accepted' => ['description' => 'Indicates whether the write request is accepted by the system. A value of false typically indicates a retryable scenario, such as an unconfirmed conflict overwrite.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'conflictPreview' => [
+ 'title' => '',
+ 'description' => 'The conflict preview.',
'type' => 'object',
'properties' => [
- 'successOperations' => [
- 'description' => 'The operations that pass the dry run.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The operation information.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'action' => [
- 'description' => 'The action that will be performed for the operation after the dry run.'."\n"
- ."\n"
- .'* Create: The operation is created.'."\n"
- .'* Update: The operation is updated.'."\n",
- 'type' => 'string',
- 'enumValueTitles' => [
- 'Create' => 'Create',
- 'Update' => 'Update',
- ],
- 'example' => 'Create',
- ],
- 'name' => [
- 'description' => 'The operation name.'."\n",
- 'type' => 'string',
- 'example' => 'CreateUser',
- ],
- 'path' => [
- 'description' => 'The operation path.'."\n",
- 'type' => 'string',
- 'example' => '/v1/users',
- ],
- 'method' => [
- 'description' => 'The HTTP method of the operation.'."\n",
- 'type' => 'string',
- 'example' => 'POST',
- ],
- ],
- ],
- ],
- 'failureOperations' => [
- 'description' => 'The operations that fail the dry run.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The operation information.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'path' => [
- 'description' => 'The operation path.'."\n",
- 'type' => 'string',
- 'example' => '/v1/orders',
- ],
- 'method' => [
- 'description' => 'The HTTP method of the operation.'."\n",
- 'type' => 'string',
- 'example' => 'GET',
- ],
- 'errorMessage' => [
- 'description' => 'The error message.'."\n",
- 'type' => 'string',
- 'example' => 'Missing response definition.'."\n",
- ],
- ],
- ],
- ],
- 'successComponents' => [
- 'description' => 'The data structs that pass the dry run.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The data struct information.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'action' => [
- 'description' => 'The action that will be performed for the data struct after the dry run.'."\n"
- ."\n"
- .'* Create: The data struct is created.'."\n"
- .'* Update: The data struct is updated.'."\n",
- 'type' => 'string',
- 'enumValueTitles' => [
- 'Create' => 'Create',
- 'Update' => 'Update',
- ],
- 'example' => 'Create',
- ],
- 'name' => [
- 'description' => 'The data struct name.'."\n",
- 'type' => 'string',
- 'example' => 'userDTO',
- ],
- ],
- ],
- ],
- 'failureComponents' => [
- 'description' => 'The data structs that fail the dry run.'."\n",
+ 'totalConflictCount' => ['title' => '', 'description' => 'The total number of conflicts.', 'type' => 'integer', 'format' => 'int32', 'example' => '2'],
+ 'conflictHash' => ['title' => '', 'description' => 'The hash of the conflict snapshot.', 'type' => 'string', 'example' => 'f8f44dc6cf369a017d56b7197eb4fb5ac4bbb6b09a92b9b41999541fxxxxxxxx'],
+ 'items' => [
+ 'description' => 'The list of conflicting entities (consumers).',
'type' => 'array',
'items' => [
- 'description' => 'The data struct information.'."\n",
+ 'description' => 'The details of a conflicting entity (consumer).',
'type' => 'object',
'properties' => [
- 'name' => [
- 'description' => 'The data struct name.'."\n",
- 'type' => 'string',
- 'example' => 'orderDTO',
- ],
- 'errorMessage' => [
- 'description' => 'The error message.'."\n",
- 'type' => 'string',
- 'example' => 'The data struct is incorrectly defined.'."\n",
- ],
+ 'consumerId' => ['description' => 'The consumer ID.', 'type' => 'string', 'example' => 'cs-xxxxxx', 'title' => ''],
+ 'consumerName' => ['description' => 'The consumer name.', 'type' => 'string', 'example' => 'consumer-a', 'title' => ''],
+ 'conflictType' => ['title' => '', 'description' => 'The type of the existing conflicting rule on the consumer. A value of calendar indicates that the conflicting rule uses a calendar period. A value of epoch indicates that the conflicting rule uses a custom period.', 'type' => 'string', 'example' => 'calendar'],
+ 'conflictPeriodType' => ['title' => '', 'description' => 'The period type of the existing conflicting rule on the consumer. A value of day, week, or month indicates that the conflicting rule uses a daily, weekly, or monthly period respectively.', 'type' => 'string', 'example' => 'week'],
],
+ 'title' => '',
+ 'example' => '',
],
- ],
- 'errorMessages' => [
- 'description' => 'The error messages. If an error message is returned, the API fails to be imported.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The error message.'."\n",
- 'type' => 'string',
- 'example' => 'OpenAPI 3.1.x is not supported.'."\n",
- ],
- ],
- 'warningMessages' => [
- 'description' => 'The alerts. If an alert is returned, specific operations or structs may fail to be imported.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The alert.'."\n",
- 'type' => 'string',
- 'example' => 'Parameter definition is incomplete for GET /v1/orders.'."\n",
- ],
- ],
- 'existHttpApiInfo' => [
- 'description' => 'The existing APIs. If an existing API is returned, the import updates the existing API.'."\n",
- '$ref' => '#/components/schemas/HttpApiApiInfo',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
+ 'example' => '{\'key\': \'value\'}',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CE857A85-251D-5018-8103-A38957D71E20\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"name\\": \\"import-test\\",\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"dryRunInfo\\": {\\n \\"successOperations\\": [\\n {\\n \\"action\\": \\"Create\\",\\n \\"name\\": \\"CreateUser\\",\\n \\"path\\": \\"/v1/users\\",\\n \\"method\\": \\"POST\\"\\n }\\n ],\\n \\"failureOperations\\": [\\n {\\n \\"path\\": \\"/v1/orders\\",\\n \\"method\\": \\"GET\\",\\n \\"errorMessage\\": \\"缺少响应定义。\\"\\n }\\n ],\\n \\"successComponents\\": [\\n {\\n \\"action\\": \\"Create\\",\\n \\"name\\": \\"userDTO\\"\\n }\\n ],\\n \\"failureComponents\\": [\\n {\\n \\"name\\": \\"orderDTO\\",\\n \\"errorMessage\\": \\"数据结构定义有误。\\"\\n }\\n ],\\n \\"errorMessages\\": [\\n \\"OpenAPI 3.1.x 版本不支持。\\"\\n ],\\n \\"warningMessages\\": [\\n \\"GET /v1/orders 参数定义不完整。\\"\\n ],\\n \\"existHttpApiInfo\\": {\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"basePath\\": \\"/v1\\",\\n \\"description\\": \\"\\",\\n \\"versionInfo\\": {\\n \\"enable\\": true,\\n \\"scheme\\": \\"Query\\",\\n \\"headerName\\": \\"my-version\\",\\n \\"queryName\\": \\"myVersion\\",\\n \\"version\\": \\"v1\\"\\n },\\n \\"ingressInfo\\": {\\n \\"sourceId\\": \\"\\",\\n \\"ingressClass\\": \\"\\",\\n \\"watchNamespace\\": \\"\\",\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"\\"\\n },\\n \\"k8sClusterInfo\\": {\\n \\"clusterId\\": \\"\\"\\n },\\n \\"overrideIngressIp\\": true\\n },\\n \\"type\\": \\"Rest\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"enabelAuth\\": true,\\n \\"authConfig\\": {\\n \\"authType\\": \\"\\",\\n \\"authMode\\": \\"\\"\\n },\\n \\"gatewayId\\": \\"\\",\\n \\"modelCategory\\": \\"\\",\\n \\"protocols\\": [\\n \\"HTTP\\"\\n ],\\n \\"environments\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"backendType\\": \\"Service\\",\\n \\"serviceConfigs\\": [\\n {\\n \\"gatewayServiceId\\": \\"gs-xxx\\",\\n \\"name\\": \\"demo-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": \\"8080\\",\\n \\"weight\\": 100,\\n \\"version\\": \\"v1\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"serviceId\\": \\"svc-xxx\\"\\n }\\n ],\\n \\"customDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"test\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-xxx\\",\\n \\"name\\": \\"test\\"\\n },\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n }\\n ],\\n \\"aiProtocols\\": [\\n \\"\\"\\n ],\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 0,\\n \\"protocol\\": \\"\\",\\n \\"gatewayServiceId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"version\\": \\"\\",\\n \\"multiServiceRouteStrategy\\": \\"\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"\\",\\n \\"rateLimit\\": 0,\\n \\"queueSize\\": 0\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {\\n \\"type\\": \\"AiFallback\\",\\n \\"enable\\": true,\\n \\"aiFallbackConfig\\": {\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"\\",\\n \\"targetModelName\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiSecurityGuardConfig\\": {\\n \\"serviceAddress\\": \\"\\",\\n \\"checkRequest\\": true,\\n \\"checkResponse\\": true,\\n \\"checkRequestImage\\": true,\\n \\"checkResponseImage\\": true,\\n \\"requestCheckService\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"riskAlertLevel\\": \\"\\",\\n \\"riskConfig\\": [\\n {\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\",\\n \\"consumerRules\\": {\\n \\"pattern\\": \\"\\",\\n \\"matchType\\": \\"\\"\\n }\\n }\\n ],\\n \\"bufferLimit\\": 0,\\n \\"consumerRequestCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"requestCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerResponseCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerRiskLevel\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiTokenRateLimitConfig\\": {\\n \\"rules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"globalRules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"enableGlobalRules\\": true\\n }\\n }\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"deployCntMap\\": {\\n \\"key\\": {\\n \\"deployedCnt\\": 0,\\n \\"Cnt\\": 0\\n }\\n },\\n \\"agentProtocols\\": [\\n \\"\\"\\n ]\\n }\\n }\\n }\\n}","type":"json"}]',
- 'title' => 'ImportHttpApi',
- 'translator' => 'machine',
- ],
- 'DeployHttpApi' => [
- 'summary' => 'Deploy HttpApi',
- 'path' => '/v1/http-apis/{httpApiId}/deploy',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"1234567890\\",\\n \\"code\\": \\"200, 404, 500\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"ruleId\\": \\"qr-xxxxx\\",\\n \\"dryRun\\": false,\\n \\"accepted\\": true,\\n \\"conflictPreview\\": {\\n \\"totalConflictCount\\": 2,\\n \\"conflictHash\\": \\"f8f44dc6cf369a017d56b7197eb4fb5ac4bbb6b09a92b9b41999541fxxxxxxxx\\",\\n \\"items\\": [\\n {\\n \\"consumerId\\": \\"cs-xxxxxx\\",\\n \\"consumerName\\": \\"consumer-a\\",\\n \\"conflictType\\": \\"calendar\\",\\n \\"conflictPeriodType\\": \\"week\\"\\n }\\n ]\\n }\\n }\\n}","type":"json"}]',
+ 'title' => 'Create a consumer quota rule',
+ 'description' => 'Creates a consumer-based quota rule for an AI gateway. This operation takes effect only on AI gateways of version 2.1.19 or later.'."\n"
+ ."\n"
+ .'> '."\n"
+ .'> Recommended call sequence:'."\n"
+ .'> - Step 1: Perform a dry run to check for rule conflicts.'."\n"
+ .'> - - Set dryRun to true.'."\n"
+ .'> - - The response contains a conflict preview with a conflictHash value.'."\n"
+ .'> - Step 2: Submit the request after confirmation.'."\n"
+ .'> - - No conflicts: Set dryRun to false and overwrite to false.'."\n"
+ .'> - - Conflicts exist and you confirm the overwrite: Set dryRun to false, overwrite to true, and conflictHash to the value returned in the previous step.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:AddGatewayQuotaRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
],
+ ],
+ 'AddGatewaySecurityGroupRule' => [
+ 'summary' => 'Authorizes a security group that allows a gateway to access services.',
+ 'path' => '/v1/gateways/{gatewayId}/security-group-rules',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'read',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'high',
- 'chargeType' => 'paid',
- 'abilityTreeCode' => '237786',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayTZMIOF',
- ],
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '222348',
+ 'abilityTreeNodes' => ['FEATUREapigatewayPVG2GF'],
+ 'tenantRelevance' => 'tenant',
],
'parameters' => [
[
- 'name' => 'httpApiId',
+ 'name' => 'gatewayId',
'in' => 'path',
- 'schema' => [
- 'title' => 'HTTP API ID。',
- 'description' => 'HTTP API ID.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'api-cr68g1dlhtgm31fb***',
- ],
+ 'schema' => ['description' => 'The ID of the cloud-native API gateway.', 'type' => 'string', 'required' => false, 'example' => 'gw-cpv4sqdlh***', 'title' => ''],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
- 'title' => '请求Body。',
- 'description' => 'The request body.'."\n",
+ 'description' => 'The request body.',
'type' => 'object',
'properties' => [
- 'routeId' => [
- 'title' => '路由ID。当发布HTTP API的路由时候,必须传入。',
- 'description' => 'The route ID. You must specify this parameter when you publish an HTTP API.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'hr-cr82undlhtgrl***',
- ],
- 'restApiConfig' => [
- 'title' => 'Rest API部署配置。当发布HTTP API为Rest API必填。',
- 'description' => 'The REST API deployment configuration. This parameter is required when you publish a REST API.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'revisionId' => [
- 'title' => '历史版本号,若指定该字段,发布信息以历史版本信息为准。',
- 'description' => 'The historical version of the API. If you specify this parameter, the corresponding version of the API is published.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'apr-xxx'."\n",
- ],
- 'description' => [
- 'title' => '发布描述。',
- 'description' => 'The publish description.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'The user service API'."\n",
- ],
- 'environment' => [
- 'title' => '发布环境配置。',
- 'description' => 'The environment configurations.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'environmentId' => [
- 'title' => '环境ID。',
- 'description' => 'The environment ID.'."\n",
- 'type' => 'string',
- 'deprecated' => true,
- 'required' => false,
- 'example' => 'env-cpqnr6tlhtgubc***',
- ],
- 'customDomainIds' => [
- 'title' => '域名ID。',
- 'description' => 'The custom domain names.'."\n",
- 'type' => 'array',
- 'items' => [
- 'title' => '域名ID。',
- 'description' => 'The domain ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'd-cr62ts5lhtgln***',
- ],
- 'required' => false,
- ],
- 'backendScene' => [
- 'title' => 'API发布场景。',
- 'description' => 'The publishing scenario.'."\n"
- ."\n"
- .'Valid values:'."\n"
- ."\n"
- .'* SingleService'."\n"
- .'* MultiServiceByRatio'."\n"
- .'* MultiServiceByContent'."\n"
- .'* Mock'."\n",
- 'type' => 'string',
- 'deprecated' => true,
- 'required' => false,
- 'enumValueTitles' => [
- 'SingleService' => '',
- 'MultiServiceByRatio' => '',
- 'MultiServiceByContent' => '',
- 'Mock' => 'Mock',
- ],
- 'example' => 'SingleService',
- ],
- 'serviceConfigs' => [
- 'title' => '已有服务配置。',
- 'description' => 'The configurations of existing services. For single-service publishing, only one entry is allowed. For other scenarios, multiple entries are allowed.'."\n",
- 'type' => 'array',
- 'items' => [
- 'title' => '已有服务配置。',
- 'description' => 'The configurations of an existing service.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'serviceId' => [
- 'title' => '服务ID。',
- 'description' => 'The service ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'svc-cr6pk4tlhtgm58e***',
- ],
- 'protocol' => [
- 'title' => '服务协议:'."\n"
- .'- HTTP。'."\n"
- .'- HTTPS。',
- 'description' => 'The service protocol. Valid values:'."\n"
- ."\n"
- .'* HTTP'."\n"
- .'* HTTPS'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'HTTPS' => 'HTTPS',
- 'HTTP' => 'HTTP',
- ],
- 'example' => 'HTTP',
- ],
- 'port' => [
- 'title' => '服务端口, 动态端口不传入。',
- 'description' => 'The service port. If you want to use a dynamic port, do not pass this parameter.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '8080',
- ],
- 'weight' => [
- 'title' => '权重,范围[1,100],仅在按比例场景下有效。',
- 'description' => 'The weight. Valid values: \\[1,100]. This parameter is valid only in proportional routing.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '49',
- ],
- 'version' => [
- 'title' => '服务版本。',
- 'description' => 'The version of the microservice.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'v1',
- ],
- 'match' => [
- 'title' => 'API发布相关的匹配条件配置。',
- 'description' => 'The matching condition configurations related to API publishing.'."\n",
- 'required' => false,
- 'example' => '{\\"change_order_revision\\":\\"3.657.33_fc-hz-yunqi.1662568293908382_faas-eerouter\\"}',
- '$ref' => '#/components/schemas/HttpApiBackendMatchConditions',
- ],
- ],
- 'required' => false,
- ],
- 'deprecated' => true,
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'operationIds' => [
- 'description' => 'operationIds',
- 'type' => 'array',
- 'items' => [
- 'description' => 'string',
- 'type' => 'string',
- 'required' => false,
- 'example' => '["operation-002", "operation-003"]',
- ],
- 'deprecated' => true,
- 'required' => false,
- ],
- 'gatewayId' => [
- 'title' => '网关实例ID。',
- 'description' => 'The gateway ID.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cvn2u46m1hkun04oll8g',
- ],
- 'operationDeployments' => [
- 'title' => '接口发布配置',
- 'description' => 'Operation-level deployment control list',
- 'type' => 'array',
- 'items' => [
- 'title' => '接口发布配置对象',
- 'description' => 'object',
- 'type' => 'object',
- 'properties' => [
- 'operationId' => [
- 'title' => '接口ID。',
- 'description' => 'Unique identifier of the operation',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'op-xxx',
- ],
- 'action' => [
- 'title' => '预检后将执行的动作。'."\n"
- .'- Create:创建。'."\n"
- .'- Update: 更新。',
- 'description' => 'Operation type',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'Publish',
- 'enum' => [
- 'Publish',
- 'Unpublish',
- ],
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'httpApiConfig' => [
- 'description' => 'httpApiConfig',
- 'type' => 'object',
- 'properties' => [
- 'gatewayId' => [
- 'title' => '网关id。',
- 'description' => 'The gateway ID.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-csrhgfmm1hknf0hu6o3g',
- ],
- 'routeIds' => [
- 'description' => 'routeIds',
- 'type' => 'array',
- 'items' => [
- 'description' => 'string',
- 'type' => 'string',
- 'required' => false,
- 'example' => '["xxx-002", "xxx-003"]'."\n",
- ],
- 'required' => false,
- ],
- ],
- 'deprecated' => true,
+ 'securityGroupId' => ['description' => 'The security group ID.', 'type' => 'string', 'required' => false, 'example' => 'sg-wz929kxhcdp****', 'title' => ''],
+ 'portRanges' => [
+ 'description' => 'The port ranges.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The port ranges.', 'type' => 'string', 'required' => false, 'example' => '1/65535', 'title' => ''],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
+ 'description' => ['description' => 'The description of the security group rule.', 'type' => 'string', 'required' => false, 'example' => '商品中心访问安全组', 'title' => ''],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of the response',
+ 'description' => 'The response.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Request ID.',
- 'type' => 'string',
- 'example' => '0C2D1C68-0D93-5561-8EE6-FDB7BF067A30',
- ],
- 'code' => [
- 'description' => 'Response status code.',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'Response message.',
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '2A6E90D5-A711-54F4-A489-E33C2021EDDF', 'title' => ''],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0C2D1C68-0D93-5561-8EE6-FDB7BF067A30\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'DeployHttpApi',
- 'translator' => 'machine',
- ],
- 'CreateHttpApi' => [
- 'summary' => 'Creates an HTTP API.',
- 'path' => '/v1/http-apis',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Add gateway security group rules',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'AddGatewaySecurityGroupRule'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:AddGatewaySecurityGroupRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"2A6E90D5-A711-54F4-A489-E33C2021EDDF\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'BatchDeleteConsumerAuthorizationRule' => [
+ 'path' => '/v1/authorization-rules',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '259028',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
],
- 'produces' => [
- 'application/json',
+ 'parameters' => [
+ [
+ 'name' => 'consumerAuthorizationRuleIds',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The list of consumer authorization rule IDs.', 'type' => 'string', 'required' => false, 'example' => 'car-cus2d1em1hkg7732kuk0', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '464F9EA0-1052-51BD-8187-D292AA2D8D24'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ ],
+ 'example' => '',
+ ],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Batch revoke consumer authorization rules',
+ 'summary' => 'Revokes consumer authorization rules in batches.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'apig:BatchDeleteConsumerAuthorizationRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"464F9EA0-1052-51BD-8187-D292AA2D8D24\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'ChangeResourceGroup' => [
+ 'summary' => 'Moves a resource to a different resource group.',
+ 'path' => '/move-resource-group',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '218843',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway910B7T',
+ 'abilityTreeCode' => '247672',
+ 'abilityTreeNodes' => ['FEATUREapigatewayUWNKMC'],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Service',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The service name. Set this parameter to apig.', 'type' => 'string', 'default' => 'APIG', 'required' => false, 'example' => 'apig', 'title' => ''],
+ ],
+ [
+ 'name' => 'ResourceType',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The resource type.', 'type' => 'string', 'default' => 'Gateway', 'required' => false, 'example' => 'gateway', 'title' => ''],
+ ],
+ [
+ 'name' => 'ResourceId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The resource ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-ct4i14um1hkn0tpqfae0', 'title' => ''],
+ ],
+ [
+ 'name' => 'ResourceGroupId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The ID of the destination resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-aekzdrfx2xdnaja', 'title' => ''],
],
],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => '',
+ 'description' => 'The response struct.',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '59F86F37-787A-52DB-9475-DB5A255517F0'],
+ ],
+ 'example' => '',
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'MissingParameter.RegionId', 'errorMessage' => 'The RegionId parameters that are required for processing this request are missing', 'description' => ''],
+ ['errorCode' => 'MissingParameter.ResourceId', 'errorMessage' => 'The ResourceId parameters that are required for processing this request are missing', 'description' => ''],
+ ['errorCode' => 'MissingParameter.ResourceGroupId', 'errorMessage' => 'The ResourceGroupId parameters that are required for processing this request are missing', 'description' => ''],
+ ['errorCode' => 'InvalidResourceGroup', 'errorMessage' => 'The specified ResourceGroupId is invalid', 'description' => ''],
+ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''],
+ ['errorCode' => 'ResourceNotFound', 'errorMessage' => ' The specified resource is not found', 'description' => ''],
+ ],
+ 403 => [
+ ['errorCode' => 'NoPermission.ChangeResourceGroup', 'errorMessage' => 'You are not authorized to change resourcegroup', 'description' => ''],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Move resource to another resource group',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ChangeResourceGroup'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ChangeResourceGroup',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"59F86F37-787A-52DB-9475-DB5A255517F0\\"\\n}","type":"json"}]',
+ ],
+ 'CreateAiModelProvider' => [
+ 'summary' => '',
+ 'path' => '/v1/ai-model-providers',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '281123',
+ 'abilityTreeNodes' => ['FEATUREapigatewayMD7H1W'],
+ ],
'parameters' => [
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
- 'description' => '$.parameters[0].schema.properties.ingressConfig.enumValueTitles',
'type' => 'object',
'properties' => [
- 'name' => [
- 'title' => 'API名称。',
- 'description' => '$.parameters[0].schema.example',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'test-api',
- ],
- 'description' => [
- 'title' => 'API描述。',
- 'description' => '$.parameters[0].schema.properties.aiProtocols.items.description',
- 'type' => 'string',
- 'required' => false,
- 'example' => '$.parameters[0].schema.properties.aiProtocols.items.example',
- ],
- 'protocols' => [
- 'title' => 'API访问协议。',
- 'description' => '$.parameters[0].schema.properties.aiProtocols.description',
+ 'gatewayId' => ['type' => 'string', 'required' => true, 'description' => '', 'example' => 'gw-ucbx3s2m****', 'title' => ''],
+ 'provider' => ['type' => 'string', 'required' => true, 'description' => '', 'example' => 'openai', 'title' => ''],
+ 'displayName' => ['type' => 'string', 'required' => true, 'description' => '', 'example' => 'OpenAI', 'title' => ''],
+ 'serviceIds' => [
'type' => 'array',
- 'items' => [
- 'title' => 'API访问协议。',
- 'description' => '$.parameters[0].schema.properties.aiProtocols.enumValueTitles',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'HTTP',
- 'default' => 'HTTP',
- 'enum' => [
- 'HTTP',
- 'HTTPS',
- ],
- ],
- 'required' => false,
- ],
- 'basePath' => [
- 'title' => 'API基础路径,需要以/开头。',
- 'description' => '$.parameters[0].schema.properties.deployConfigs.items.example',
- 'type' => 'string',
- 'required' => false,
- 'example' => '/v1',
- ],
- 'versionConfig' => [
- 'description' => '$.parameters[0].schema.properties.deployConfigs.items.enumValueTitles',
- 'required' => false,
- '$ref' => '#/components/schemas/HttpApiVersionConfig',
- ],
- 'type' => [
- 'description' => '$.parameters[0].schema.properties.deployConfigs.description',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'Http',
- ],
- 'ingressConfig' => [
- 'description' => '$.parameters[0].schema.properties.deployConfigs.example',
- 'type' => 'object',
- 'properties' => [
- 'environmentId' => [
- 'description' => '$.parameters[0].schema.properties.deployConfigs.enumValueTitles',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'env-cq146allhtgk***',
- ],
- 'sourceId' => [
- 'description' => '$.parameters[0].schema.properties.enableAuth.description',
- 'type' => 'string',
- 'deprecated' => true,
- 'required' => false,
- 'example' => 'src-crdddallhtgtr***',
- ],
- 'ingressClass' => [
- 'description' => '$.parameters[0].schema.properties.enableAuth.example',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'mse',
- ],
- 'watchNamespace' => [
- 'description' => '$.parameters[0].schema.properties.enableAuth.enumValueTitles',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'default',
- ],
- 'overrideIngressIp' => [
- 'description' => '$.parameters[0].schema.properties.authConfig.description',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
- 'clusterId' => [
- 'description' => 'Cluster ID.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'k7v5eobfzttudni2pw***',
- ],
- ],
- 'required' => false,
- ],
- 'resourceGroupId' => [
- 'description' => '$.parameters[0].schema.properties.authConfig.example',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rg-xxx',
- ],
- 'aiProtocols' => [
- 'description' => '$.parameters[0].schema.properties.authConfig.enumValueTitles',
- 'type' => 'array',
- 'items' => [
- 'description' => '$.parameters[0].schema.description',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'OpenAI/v1',
- ],
- 'required' => false,
- ],
- 'agentProtocols' => [
- 'description' => 'Agent protocols',
- 'type' => 'array',
- 'items' => [
- 'description' => 'string',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'http/https',
- ],
- 'required' => false,
- ],
- 'deployConfigs' => [
- 'description' => '$.parameters[0].schema.example',
- 'type' => 'array',
- 'items' => [
- 'description' => '$.parameters[0].schema.enumValueTitles',
- 'required' => false,
- '$ref' => '#/components/schemas/HttpApiDeployConfig',
- ],
- 'required' => false,
- ],
- 'enableAuth' => [
- 'description' => 'Create an API of HTTP type',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
- 'authConfig' => [
- 'description' => 'The request parameters for API creation.'."\n",
- 'required' => false,
- '$ref' => '#/components/schemas/AuthConfig',
- ],
- 'modelCategory' => [
- 'description' => 'Model category',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'llm/text-to-image',
- ],
- 'removeBasePathOnForward' => [
- 'description' => 'Whether to remove base path when forwarding',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
- 'firstByteTimeout' => [
- 'description' => 'First byte timeout',
- 'type' => 'integer',
- 'format' => 'int32',
+ 'items' => ['type' => 'string', 'description' => '', 'required' => false, 'example' => '["svc-xxx","svc-yyy"]', 'title' => ''],
+ 'description' => '',
'required' => false,
- 'example' => '30',
- ],
- 'belongGatewayId' => [
- 'type' => 'string',
- ],
- 'dryRun' => [
- 'type' => 'boolean',
- 'deprecated' => true,
- ],
- 'strategy' => [
- 'type' => 'string',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => '',
'required' => false,
+ 'example' => '{\'key\': \'value\'}',
+ 'title' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The API name.'."\n",
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The API description.'."\n",
- 'type' => 'string',
- 'example' => 'A1994B10-C6A8-58FA-8347-6A08B0D4EFDE',
- ],
- 'code' => [
- 'description' => 'API for testing'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The protocol list for API access.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['type' => 'string', 'title' => '', 'description' => '', 'example' => '464F9EA0-1052-51BD-8187-D292AA2D8D24'],
+ 'code' => ['type' => 'string', 'description' => '', 'example' => '200', 'title' => ''],
+ 'message' => ['type' => 'string', 'description' => '', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'A protocol.'."\n",
'type' => 'object',
'properties' => [
- 'httpApiId' => [
- 'description' => 'HTTP API ID。',
- 'type' => 'string',
- 'example' => 'api-xxx',
+ 'modelProviderId' => ['type' => 'string', 'description' => '', 'example' => 'mp-xxx****', 'title' => ''],
+ 'gatewayId' => ['type' => 'string', 'description' => '', 'example' => 'gw-ucbx3s2m****', 'title' => ''],
+ 'provider' => ['type' => 'string', 'description' => '', 'example' => 'openai', 'title' => ''],
+ 'displayName' => ['type' => 'string', 'description' => '', 'example' => 'OpenAI', 'title' => ''],
+ 'source' => ['type' => 'string', 'description' => '', 'example' => 'custom', 'title' => ''],
+ 'boundServices' => [
+ 'type' => 'array',
+ 'items' => ['$ref' => '#/components/schemas/ServiceInfo', 'description' => '', 'title' => '', 'example' => ''],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
- 'name' => [
- 'description' => 'The API base path, which must start with a forward slash (/).'."\n",
- 'type' => 'string',
- 'example' => 'test-api',
+ 'modelCards' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'modelCardId' => ['type' => 'string', 'description' => '', 'example' => 'mc-xxx****', 'title' => ''],
+ 'gatewayId' => ['type' => 'string', 'description' => '', 'example' => 'gw-ucbx3s2m****', 'title' => ''],
+ 'modelProvider' => ['type' => 'string', 'description' => '', 'example' => 'openai', 'title' => ''],
+ 'modelName' => ['type' => 'string', 'description' => '', 'example' => 'gpt-4', 'title' => ''],
+ 'source' => ['type' => 'string', 'description' => '', 'example' => 'custom', 'title' => ''],
+ 'credit' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'type' => ['type' => 'string', 'description' => '', 'example' => 'token', 'title' => ''],
+ 'inputCost' => ['type' => 'number', 'format' => 'float', 'description' => '', 'example' => '0.03', 'title' => ''],
+ 'outputCost' => ['type' => 'number', 'format' => 'float', 'description' => '', 'example' => '0.06', 'title' => ''],
+ 'cacheCost' => ['type' => 'number', 'format' => 'float', 'description' => '', 'example' => '0.015', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'features' => ['type' => 'object', 'description' => '', 'example' => '{"stream":true,"tools":true}', 'title' => ''],
+ 'meta' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'maxInputTokens' => ['type' => 'integer', 'format' => 'int64', 'description' => '', 'example' => '128000', 'title' => ''],
+ 'maxOutputTokens' => ['type' => 'integer', 'format' => 'int64', 'description' => '', 'example' => '4096', 'title' => ''],
+ 'maxTokens' => ['type' => 'integer', 'format' => 'int64', 'description' => '', 'example' => '132096', 'title' => ''],
+ 'supportedInputModalities' => [
+ 'type' => 'array',
+ 'items' => ['type' => 'string', 'description' => '', 'example' => '["text","image"]', 'title' => ''],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'supportedOutputModalities' => [
+ 'type' => 'array',
+ 'items' => ['type' => 'string', 'description' => '', 'example' => '["text"]', 'title' => ''],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'availablePaths' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'path' => ['type' => 'string', 'description' => '', 'example' => '/v1/chat/completions', 'title' => ''],
+ 'type' => ['type' => 'string', 'description' => '', 'example' => 'chat', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'updateTime' => ['type' => 'string', 'description' => '', 'example' => '2024-07-03T10:48:00Z', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'modelCount' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'example' => '3', 'title' => ''],
+ 'updateTime' => ['type' => 'string', 'description' => '', 'example' => '2024-07-03T10:48:00Z', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'description' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => '',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"A1994B10-C6A8-58FA-8347-6A08B0D4EFDE\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"name\\": \\"test-api\\"\\n }\\n}","type":"json"}]',
- 'title' => 'CreateHttpApi',
- 'translator' => 'machine',
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"464F9EA0-1052-51BD-8187-D292AA2D8D24\\",\\n \\"code\\": \\"200\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"modelProviderId\\": \\"mp-xxx****\\",\\n \\"gatewayId\\": \\"gw-ucbx3s2m****\\",\\n \\"provider\\": \\"openai\\",\\n \\"displayName\\": \\"OpenAI\\",\\n \\"source\\": \\"custom\\",\\n \\"boundServices\\": [\\n {\\n \\"serviceId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"namespace\\": \\"\\",\\n \\"sourceType\\": \\"\\",\\n \\"groupName\\": \\"\\",\\n \\"qualifier\\": \\"\\",\\n \\"expressType\\": \\"\\",\\n \\"versions\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"labels\\": [\\n {\\n \\"key\\": \\"\\",\\n \\"value\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"ports\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"port\\": 0,\\n \\"protocol\\": \\"\\"\\n }\\n ],\\n \\"paiWorkspaceName\\": \\"\\",\\n \\"paiWorkspaceId\\": \\"\\",\\n \\"status\\": \\"\\"\\n }\\n ],\\n \\"modelCards\\": [\\n {\\n \\"modelCardId\\": \\"mc-xxx****\\",\\n \\"gatewayId\\": \\"gw-ucbx3s2m****\\",\\n \\"modelProvider\\": \\"openai\\",\\n \\"modelName\\": \\"gpt-4\\",\\n \\"source\\": \\"custom\\",\\n \\"credit\\": {\\n \\"type\\": \\"token\\",\\n \\"inputCost\\": 0.03,\\n \\"outputCost\\": 0.06,\\n \\"cacheCost\\": 0.015\\n },\\n \\"features\\": {\\n \\"stream\\": true,\\n \\"tools\\": true\\n },\\n \\"meta\\": {\\n \\"maxInputTokens\\": 128000,\\n \\"maxOutputTokens\\": 4096,\\n \\"maxTokens\\": 132096,\\n \\"supportedInputModalities\\": [\\n \\"[\\\\\\"text\\\\\\",\\\\\\"image\\\\\\"]\\"\\n ],\\n \\"supportedOutputModalities\\": [\\n \\"[\\\\\\"text\\\\\\"]\\"\\n ]\\n },\\n \\"availablePaths\\": [\\n {\\n \\"path\\": \\"/v1/chat/completions\\",\\n \\"type\\": \\"chat\\"\\n }\\n ],\\n \\"updateTime\\": \\"2024-07-03T10:48:00Z\\"\\n }\\n ],\\n \\"modelCount\\": 3,\\n \\"updateTime\\": \\"2024-07-03T10:48:00Z\\"\\n }\\n}","type":"json"}]',
],
- 'UpdateHttpApi' => [
- 'summary' => 'Updates an HTTP API.',
- 'path' => '/v1/http-apis/{httpApiId}',
- 'methods' => [
- 'put',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'CreateAndAttachPolicy' => [
+ 'summary' => 'Creates and attaches a policy.',
+ 'path' => '/v1/policies',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
- 'riskType' => 'none',
+ 'operationType' => 'none',
+ 'riskType' => 'high',
'chargeType' => 'free',
- 'abilityTreeCode' => '218997',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway910B7T',
- ],
+ 'abilityTreeCode' => '222758',
+ 'abilityTreeNodes' => ['FEATUREapigatewayOZOKBY'],
+ 'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'httpApiId',
- 'in' => 'path',
- 'schema' => [
- 'title' => '待更新API ID。',
- 'description' => 'The API base path, which must start with a forward slash (/).'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'api-xxx',
- ],
- ],
- [
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
- 'title' => '请求体配置。',
- 'description' => 'json',
+ 'description' => 'Request Body.',
'type' => 'object',
'properties' => [
- 'description' => [
- 'title' => 'API描述。',
- 'description' => 'The environment ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'The source ID.'."\n",
- ],
- 'protocols' => [
- 'title' => 'API访问协议配置。',
- 'description' => 'The listened namespace.'."\n",
+ 'name' => ['description' => 'The policy name.', 'type' => 'string', 'required' => false, 'example' => 'my-fallback-policy', 'title' => ''],
+ 'className' => ['description' => 'The policy type.', 'type' => 'string', 'required' => true, 'example' => 'AiFallback', 'title' => ''],
+ 'config' => ['description' => 'The policy configuration content (JSON string).', 'type' => 'string', 'required' => true, 'example' => '{"serviceConfigs":[...]}', 'title' => ''],
+ 'description' => ['description' => 'The policy description.', 'type' => 'string', 'required' => false, 'example' => '主路由失败时回退', 'title' => ''],
+ 'attachResourceIds' => [
+ 'description' => 'The list of target resource IDs to attach.',
'type' => 'array',
- 'items' => [
- 'title' => 'API访问协议,枚举值。',
- 'description' => 'List of AI protocols.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'HTTP',
- 'default' => 'HTTP',
- 'enum' => [
- 'HTTP',
- 'HTTPS',
- ],
- ],
- 'required' => false,
- ],
- 'basePath' => [
- 'title' => 'API基础路径,需要以/开头。',
- 'description' => 'The list of API deployment configurations.'."\n",
- 'type' => 'string',
+ 'items' => ['description' => 'The list of target resource IDs to attach.', 'type' => 'string', 'required' => false, 'example' => '["route-xxx"]', 'title' => ''],
'required' => true,
- 'docRequired' => true,
- 'example' => '/v1',
- ],
- 'versionConfig' => [
- 'description' => 'A deployment configuration.'."\n",
- 'required' => false,
- '$ref' => '#/components/schemas/HttpApiVersionConfig',
- ],
- 'ingressConfig' => [
- 'description' => 'Specifies whether to enable authentication.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'environmentId' => [
- 'description' => 'The authentication configuration.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'env-cr6ql0tlhtgmc****',
- ],
- 'sourceId' => [
- 'description' => 'json',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'src-crdddallhtgtr****',
- ],
- 'ingressClass' => [
- 'description' => 'The response parameters.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'mse',
- ],
- 'watchNamespace' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'default',
- ],
- 'overrideIngressIp' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
- ],
- 'required' => false,
- ],
- 'aiProtocols' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'Update HTTP API',
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'OpenAI/v1' => 'OpenAI/v1',
- ],
- 'example' => 'OpenAI/v1',
- ],
- 'required' => false,
- ],
- 'agentProtocols' => [
- 'description' => 'The list of agent protocols',
- 'type' => 'array',
- 'items' => [
- 'description' => 'string',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'DashScope',
- ],
- 'required' => false,
- ],
- 'deployConfigs' => [
- 'description' => 'The deployment configurations',
- 'type' => 'array',
- 'items' => [
- 'description' => 'HttpApiDeployConfig',
- 'required' => false,
- '$ref' => '#/components/schemas/HttpApiDeployConfig',
- ],
- 'required' => false,
- ],
- 'enableAuth' => [
- 'description' => 'Whether authentication is enabled',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
- 'authConfig' => [
- 'description' => 'The authentication configuration',
- 'required' => false,
- '$ref' => '#/components/schemas/AuthConfig',
- ],
- 'onlyChangeConfig' => [
- 'description' => 'Whether to only change configuration without redeployment',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
- 'removeBasePathOnForward' => [
- 'description' => 'Whether to remove base path when forwarding',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
- 'firstByteTimeout' => [
- 'description' => 'The first byte timeout in nanoseconds',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '30s',
+ 'title' => '',
+ 'example' => '',
],
+ 'attachResourceType' => ['description' => 'The type of the target resource to attach.', 'type' => 'string', 'required' => true, 'example' => 'GatewayRoute', 'title' => ''],
+ 'environmentId' => ['description' => 'The environment ID.', 'type' => 'string', 'required' => false, 'example' => 'env-test', 'title' => ''],
+ 'gatewayId' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-xxx', 'title' => ''],
],
'required' => false,
+ 'example' => '{\'key\': \'value\'}',
+ 'title' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => '',
+ 'title' => '',
+ 'description' => 'object',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Request ID.',
- 'type' => 'string',
- 'example' => '393E2630-DBE7-5221-AB35-9E740675491A',
- ],
- 'message' => [
- 'title' => '响应消息。',
- 'description' => 'Response message.',
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'code' => [
- 'title' => '响应状态码。',
- 'description' => 'Response status code.',
- 'type' => 'string',
- 'example' => '200',
+ 'requestId' => ['title' => '', 'description' => 'Request ID', 'type' => 'string', 'example' => '585657D2-1C20-5B8A-AF17-D727C6490BE4'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response struct.',
+ 'type' => 'object',
+ 'properties' => [
+ 'policyId' => ['description' => 'The ID of the newly created policy.', 'type' => 'string', 'example' => 'plc-xxx', 'title' => ''],
+ 'attachment' => ['description' => 'The attachment information.', '$ref' => '#/components/schemas/Attachment', 'title' => '', 'example' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"393E2630-DBE7-5221-AB35-9E740675491A\\",\\n \\"message\\": \\"success\\",\\n \\"code\\": \\"Ok\\"\\n}","type":"json"}]',
- 'title' => 'UpdateHttpApi',
- 'translator' => 'machine',
- ],
- 'GetHttpApi' => [
- 'summary' => 'Read HttpApi',
- 'path' => '/v1/http-apis/{httpApiId}',
- 'methods' => [
- 'get',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C6490BE4\\",\\n \\"code\\": \\"200\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"policyId\\": \\"plc-xxx\\",\\n \\"attachment\\": {\\n \\"policyAttachmentId\\": \\"pr-cq7l5s5lhtgi6qasrdc0\\",\\n \\"attachResourceId\\": \\"gw-xxx\\",\\n \\"attachResourceType\\": \\"HttpApi\\",\\n \\"environmentId\\": \\"env-cq7l5s5lhtgi6qasrdc0\\",\\n \\"gatewayId\\": \\"gw-cpr4f9dlhtgq5ksfgmb0\\",\\n \\"attachResourceIds\\": [\\n \\"api-cq7l5s5lhtgi6qasrdc0\\"\\n ],\\n \\"attachResourceParentIds\\": [\\n \\"[\\\\\\"api-xxx\\\\\\"]\\"\\n ]\\n }\\n }\\n}","type":"json"}]',
+ 'title' => 'Create and attach a policy',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateAndAttachPolicy'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreateAndAttachPolicy',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Policy', 'arn' => 'acs:apig:{#regionId}:{#accountId}:policy/*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'CreateConsumer' => [
+ 'path' => '/v1/consumers',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'read',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'get',
+ 'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '218957',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway910B7T',
- ],
+ 'abilityTreeCode' => '248083',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
+ 'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'httpApiId',
- 'in' => 'path',
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'title' => 'API ID。',
- 'description' => 'Target HTTP API ID.',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'api-xxx',
+ 'description' => 'The request body.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The consumer name.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''],
+ 'description' => ['description' => 'The consumer description.', 'type' => 'string', 'required' => false, 'example' => 'consumer for test', 'title' => ''],
+ 'jwtIdentityConfig' => ['description' => 'The JWT identity configuration.', '$ref' => '#/components/schemas/JwtIdentityConfig', 'required' => false, 'title' => '', 'example' => ''],
+ 'akSkIdentityConfigs' => [
+ 'description' => 'The list of AK/SK identity configurations.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The AK/SK identity configuration.', '$ref' => '#/components/schemas/AkSkIdentityConfig', 'required' => false, 'title' => '', 'example' => ''],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'apikeyIdentityConfig' => ['description' => 'The API key authentication identity configuration.', '$ref' => '#/components/schemas/ApiKeyIdentityConfig', 'required' => false, 'title' => '', 'example' => ''],
+ 'enable' => ['description' => 'Specifies whether to enable the consumer.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
+ 'gatewayType' => ['description' => 'The gateway type. Valid values:'."\n"
+ ."\n"
+ .'- API: a consumer of a cloud-native API gateway.'."\n"
+ .'- AI: a consumer of an AI gateway.', 'type' => 'string', 'required' => false, 'example' => 'API', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The returned result.'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'description' => 'Request ID.',
- 'type' => 'string',
- 'example' => '8FA9BB94-915B-5299-A694-49FCC7F5DD00',
- ],
- 'message' => [
- 'title' => '响应消息。',
- 'description' => 'Response message.',
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'code' => [
- 'title' => '响应状态码。',
- 'description' => 'Response status code.',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '479AE38F-A574-52F7-87EA-E91199999F9E'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'title' => 'API信息。',
- 'description' => 'The API information.'."\n",
- '$ref' => '#/components/schemas/HttpApiApiInfo',
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'consumerId' => ['description' => 'The consumer ID.', 'type' => 'string', 'example' => 'cs-cvnjramm1hks1r3fmmug', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"8FA9BB94-915B-5299-A694-49FCC7F5DD00\\",\\n \\"message\\": \\"success\\",\\n \\"code\\": \\"Ok\\",\\n \\"data\\": {\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"basePath\\": \\"/v1\\",\\n \\"description\\": \\"\\",\\n \\"versionInfo\\": {\\n \\"enable\\": true,\\n \\"scheme\\": \\"Query\\",\\n \\"headerName\\": \\"my-version\\",\\n \\"queryName\\": \\"myVersion\\",\\n \\"version\\": \\"v1\\"\\n },\\n \\"ingressInfo\\": {\\n \\"sourceId\\": \\"\\",\\n \\"ingressClass\\": \\"\\",\\n \\"watchNamespace\\": \\"\\",\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"\\"\\n },\\n \\"k8sClusterInfo\\": {\\n \\"clusterId\\": \\"\\"\\n },\\n \\"overrideIngressIp\\": true\\n },\\n \\"type\\": \\"Rest\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"enabelAuth\\": true,\\n \\"authConfig\\": {\\n \\"authType\\": \\"\\",\\n \\"authMode\\": \\"\\"\\n },\\n \\"gatewayId\\": \\"\\",\\n \\"modelCategory\\": \\"\\",\\n \\"protocols\\": [\\n \\"HTTP\\"\\n ],\\n \\"environments\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"backendType\\": \\"Service\\",\\n \\"serviceConfigs\\": [\\n {\\n \\"gatewayServiceId\\": \\"gs-xxx\\",\\n \\"name\\": \\"demo-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": \\"8080\\",\\n \\"weight\\": 100,\\n \\"version\\": \\"v1\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"serviceId\\": \\"svc-xxx\\"\\n }\\n ],\\n \\"customDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"test\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-xxx\\",\\n \\"name\\": \\"test\\"\\n },\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n }\\n ],\\n \\"aiProtocols\\": [\\n \\"\\"\\n ],\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 0,\\n \\"protocol\\": \\"\\",\\n \\"gatewayServiceId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"version\\": \\"\\",\\n \\"multiServiceRouteStrategy\\": \\"\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"\\",\\n \\"rateLimit\\": 0,\\n \\"queueSize\\": 0\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {\\n \\"type\\": \\"AiFallback\\",\\n \\"enable\\": true,\\n \\"aiFallbackConfig\\": {\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"\\",\\n \\"targetModelName\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiSecurityGuardConfig\\": {\\n \\"serviceAddress\\": \\"\\",\\n \\"checkRequest\\": true,\\n \\"checkResponse\\": true,\\n \\"checkRequestImage\\": true,\\n \\"checkResponseImage\\": true,\\n \\"requestCheckService\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"riskAlertLevel\\": \\"\\",\\n \\"riskConfig\\": [\\n {\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\",\\n \\"consumerRules\\": {\\n \\"pattern\\": \\"\\",\\n \\"matchType\\": \\"\\"\\n }\\n }\\n ],\\n \\"bufferLimit\\": 0,\\n \\"consumerRequestCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"requestCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerResponseCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerRiskLevel\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiTokenRateLimitConfig\\": {\\n \\"rules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"globalRules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"enableGlobalRules\\": true\\n }\\n }\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"deployCntMap\\": {\\n \\"key\\": {\\n \\"deployedCnt\\": 0,\\n \\"Cnt\\": 0\\n }\\n },\\n \\"agentProtocols\\": [\\n \\"\\"\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'GetHttpApi',
- 'translator' => 'machine',
- ],
- 'ListHttpApis' => [
- 'summary' => 'Queries a list of HTTP APIs.',
- 'path' => '/v1/http-apis',
- 'methods' => [
- 'get',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Create a consumer',
+ 'summary' => 'Creates a consumer.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateConsumer'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'apig:CreateConsumer',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'https',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"479AE38F-A574-52F7-87EA-E91199999F9E\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"consumerId\\": \\"cs-cvnjramm1hks1r3fmmug\\"\\n }\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
+ ],
+ 'CreateConsumerAuthorizationRule' => [
+ 'path' => '/v1/consumers/{consumerId}/authorization-rules',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'read',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'list',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '219000',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway910B7T',
- ],
- 'tenantRelevance' => 'publicInformation',
+ 'abilityTreeCode' => '248099',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
+ 'tenantRelevance' => 'tenant',
],
'parameters' => [
[
- 'name' => 'keyword',
- 'in' => 'query',
- 'schema' => [
- 'title' => '搜索关键词,支持API名称模糊搜索或API ID精确搜索。',
- 'description' => 'The consumer authentication policy in the specified environment in each returned API.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test-',
- ],
- ],
- [
- 'name' => 'pageNumber',
- 'in' => 'query',
- 'schema' => [
- 'title' => '分页页码,从1开始,不填默认1.',
- 'description' => 'The environment information.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
- ],
- [
- 'name' => 'pageSize',
- 'in' => 'query',
- 'schema' => [
- 'title' => '分页大小,有效范围[1, 100],不填默认10。',
- 'description' => 'The resource group ID.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
- ],
- [
- 'name' => 'name',
- 'in' => 'query',
- 'schema' => [
- 'title' => '按照名称精确搜索。',
- 'description' => 'Specifies whether authentication is enabled.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'login',
- ],
- ],
- [
- 'name' => 'types',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The Ingress information.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'Http,Rest',
- ],
- ],
- [
- 'name' => 'gatewayId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Specifies whether to include policy configurations.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cq2avtllh****',
- ],
- ],
- [
- 'name' => 'withAuthPolicyInEnvironmentId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The gateway type to filter. Valid values: **AI** and **API**.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'env-xxx',
- ],
- ],
- [
- 'name' => 'withConsumerInfoById',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The response body.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cs-xxx',
- ],
- ],
- [
- 'name' => 'withEnvironmentInfo',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
- ],
- [
- 'name' => 'withPluginAttachmentByPluginId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'pl-ct9qn3um1hktue8dqol0',
- ],
- ],
- [
- 'name' => 'resourceGroupId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rg-ahr5uil8raz0rq3b',
- ],
- ],
- [
- 'name' => 'withEnvironmentInfoById',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The APIs.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'env-ctovu5mm1hksb4q8ln40',
- ],
+ 'name' => 'consumerId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The consumer ID.', 'type' => 'string', 'required' => false, 'example' => 'cs-ctd4l1um1hkph7ki1k80', 'title' => ''],
],
[
- 'name' => 'withAuthPolicyList',
- 'in' => 'query',
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'description' => 'The page number of the returned page.'."\n",
- 'type' => 'boolean',
+ 'description' => 'The request parameters.',
+ 'type' => 'object',
+ 'properties' => [
+ 'resourceType' => ['description' => 'The resource type.', 'type' => 'string', 'required' => false, 'example' => 'API', 'title' => ''],
+ 'parentResourceType' => ['description' => 'The parent resource type.', 'type' => 'string', 'required' => false, 'example' => 'API', 'title' => ''],
+ 'authorizationResourceInfos' => [
+ 'description' => 'The list of resource authorization information.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The resource authorization information.', '$ref' => '#/components/schemas/AuthorizationResourceInfo', 'required' => false, 'title' => '', 'example' => ''],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'expireMode' => ['description' => 'The expiration mode. Valid values:'."\n"
+ .'- LongTerm: long-term'."\n"
+ .'- ShortTerm: short-term', 'type' => 'string', 'required' => false, 'example' => 'LongTerm', 'title' => ''],
+ 'expireTimestamp' => ['description' => 'The expiration time.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1750852089975', 'title' => ''],
+ ],
'required' => false,
- 'example' => 'true',
+ 'title' => '',
+ 'example' => '',
],
],
- [
- 'name' => 'withIngressInfo',
- 'in' => 'query',
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The number of entries per page.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '6CC83C32-3B5A-57EE-9AFE-D0D51822C7BA'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'consumerAuthorizationRuleId' => ['description' => 'The consumer authorization rule ID. When this ID is used to filter the API list, the response includes only the authorized APIs.', 'type' => 'string', 'example' => 'car-d06p196m1hkg9ukum5pg', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'example' => '',
],
],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Create a consumer authorization rule',
+ 'summary' => 'Creates a consumer authorization rule.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
[
- 'name' => 'withPolicyConfigs',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The total number of entries returned.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreateConsumerAuthorizationRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/{#ConsumerId}'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"6CC83C32-3B5A-57EE-9AFE-D0D51822C7BA\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"consumerAuthorizationRuleId\\": \\"car-d06p196m1hkg9ukum5pg\\"\\n }\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
+ ],
+ ],
+ 'CreateConsumerAuthorizationRules' => [
+ 'summary' => 'Creates consumer authorization rules.',
+ 'path' => '/v1/authorization-rules',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'withAPIsPublishedToEnvironment',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Whether to return all APIs published to a specific environment',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'AK' => [],
],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '259035',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
[
- 'name' => 'gatewayType',
- 'in' => 'query',
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'description' => 'The API information.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'AI' => 'AI',
- 'API' => 'API',
+ 'description' => 'The request body parameters.',
+ 'type' => 'object',
+ 'properties' => [
+ 'authorizationRules' => [
+ 'description' => 'The consumer authentication rules.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The consumer authentication rules.',
+ 'type' => 'object',
+ 'properties' => [
+ 'principalType' => [
+ 'title' => '',
+ 'description' => 'The type of the authorization principal.',
+ 'enumValueTitles' => ['Consumer' => 'consumer.', 'ConsumerGroup' => 'consumer group.'],
+ 'type' => 'string',
+ 'example' => 'ConsumerGroup',
+ 'required' => false,
+ ],
+ 'consumerId' => ['description' => 'The consumer ID.', 'type' => 'string', 'required' => false, 'example' => 'cs-******', 'title' => ''],
+ 'consumerGroupId' => ['title' => '', 'description' => 'The consumer group ID.', 'type' => 'string', 'example' => 'csg-8c13d2b4f8a1', 'required' => false],
+ 'resourceType' => [
+ 'description' => 'The resource type.',
+ 'enumValueTitles' => ['Policy' => 'policy.', 'Consumer' => 'consumer.', 'Service' => 'service.', 'HttpApi' => 'HTTP API', 'PluginClass' => 'plugin class.', 'Domain' => 'domain name.', 'HttpApiRoute' => 'HTTP API route.', 'Plugin' => 'plugin.', 'ConsumerGroup' => 'consumer group.'],
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'HttpApiRoute',
+ 'title' => '',
+ ],
+ 'resourceIdentifier' => [
+ 'description' => 'The resource identifier, which serves as a unique identifier for space reuse by non-standard code sources.',
+ 'type' => 'object',
+ 'properties' => [
+ 'resourceId' => ['description' => 'The resource ID.', 'type' => 'string', 'required' => false, 'example' => 'ha-cn-li942gy8p03', 'title' => ''],
+ 'environmentId' => ['description' => 'The environment ID.', 'type' => 'string', 'required' => false, 'example' => 'env-******', 'title' => ''],
+ 'resources' => [
+ 'description' => 'The resource information.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The resource information.', 'type' => 'string', 'required' => false, 'example' => '[]', 'title' => ''],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'parentResourceId' => ['description' => 'The parent resource ID.', 'type' => 'string', 'required' => false, 'example' => 'api-******', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'expireMode' => [
+ 'description' => 'The expiration mode. Currently, only LongTerm is supported.',
+ 'enumValueTitles' => ['LongTerm' => 'long-term validity.'],
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'LongTerm',
+ 'title' => '',
+ ],
+ 'expireTimestamp' => ['description' => 'The expiration timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1741162221', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
],
- 'example' => 'API',
+ 'required' => false,
+ 'example' => '{\'key\': \'value\'}',
+ 'title' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The API information grouped by API name.'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Get HTTP API List',
- 'type' => 'string',
- 'example' => '585657D2-1C20-5B8A-AF17-D727C6490BE4',
- ],
- 'code' => [
- 'title' => '响应状态码。',
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => '200',
- ],
- 'message' => [
- 'title' => '响应消息。',
- 'description' => 'Response message.',
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '3ACFC7A7-45A9-58CF-B2D5-765B60254695'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'title' => 'API列表。',
- 'description' => 'Response data.',
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'pageNumber' => [
- 'title' => '分页页码。',
- 'description' => 'Page number.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'pageSize' => [
- 'title' => '分页大小。',
- 'description' => 'Page size.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
- 'totalSize' => [
- 'title' => '总数量。',
- 'description' => 'Total number of items.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
- 'items' => [
- 'title' => 'API信息。',
- 'description' => 'object',
+ 'consumerAuthorizationRuleIds' => [
+ 'description' => 'The list of consumer authorization rule IDs.',
'type' => 'array',
- 'items' => [
- 'title' => '按照API名进行分组的API信息。',
- 'description' => 'HttpApiInfoByName',
- '$ref' => '#/components/schemas/HttpApiInfoByName',
- ],
+ 'items' => ['description' => 'The consumer authorization rule ID.', 'type' => 'string', 'example' => 'car-cus2d1em1hkg7732kuk0', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C6490BE4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 10,\\n \\"items\\": [\\n {\\n \\"name\\": \\"test-api\\",\\n \\"versionEnabled\\": true,\\n \\"versionedHttpApis\\": [\\n {\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"basePath\\": \\"/v1\\",\\n \\"description\\": \\"\\",\\n \\"versionInfo\\": {\\n \\"enable\\": true,\\n \\"scheme\\": \\"Query\\",\\n \\"headerName\\": \\"my-version\\",\\n \\"queryName\\": \\"myVersion\\",\\n \\"version\\": \\"v1\\"\\n },\\n \\"ingressInfo\\": {\\n \\"sourceId\\": \\"\\",\\n \\"ingressClass\\": \\"\\",\\n \\"watchNamespace\\": \\"\\",\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"\\"\\n },\\n \\"k8sClusterInfo\\": {\\n \\"clusterId\\": \\"\\"\\n },\\n \\"overrideIngressIp\\": true\\n },\\n \\"type\\": \\"Rest\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"enabelAuth\\": true,\\n \\"authConfig\\": {\\n \\"authType\\": \\"\\",\\n \\"authMode\\": \\"\\"\\n },\\n \\"gatewayId\\": \\"\\",\\n \\"modelCategory\\": \\"\\",\\n \\"protocols\\": [\\n \\"HTTP\\"\\n ],\\n \\"environments\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"backendType\\": \\"Service\\",\\n \\"serviceConfigs\\": [\\n {\\n \\"gatewayServiceId\\": \\"gs-xxx\\",\\n \\"name\\": \\"demo-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": \\"8080\\",\\n \\"weight\\": 100,\\n \\"version\\": \\"v1\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"serviceId\\": \\"svc-xxx\\"\\n }\\n ],\\n \\"customDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"test\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-xxx\\",\\n \\"name\\": \\"test\\"\\n },\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n }\\n ],\\n \\"aiProtocols\\": [\\n \\"\\"\\n ],\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 0,\\n \\"protocol\\": \\"\\",\\n \\"gatewayServiceId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"version\\": \\"\\",\\n \\"multiServiceRouteStrategy\\": \\"\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"\\",\\n \\"rateLimit\\": 0,\\n \\"queueSize\\": 0\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {\\n \\"type\\": \\"AiFallback\\",\\n \\"enable\\": true,\\n \\"aiFallbackConfig\\": {\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"\\",\\n \\"targetModelName\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiSecurityGuardConfig\\": {\\n \\"serviceAddress\\": \\"\\",\\n \\"checkRequest\\": true,\\n \\"checkResponse\\": true,\\n \\"checkRequestImage\\": true,\\n \\"checkResponseImage\\": true,\\n \\"requestCheckService\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"riskAlertLevel\\": \\"\\",\\n \\"riskConfig\\": [\\n {\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\",\\n \\"consumerRules\\": {\\n \\"pattern\\": \\"\\",\\n \\"matchType\\": \\"\\"\\n }\\n }\\n ],\\n \\"bufferLimit\\": 0,\\n \\"consumerRequestCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"requestCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerResponseCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerRiskLevel\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiTokenRateLimitConfig\\": {\\n \\"rules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"globalRules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"enableGlobalRules\\": true\\n }\\n }\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"deployCntMap\\": {\\n \\"key\\": {\\n \\"deployedCnt\\": 0,\\n \\"Cnt\\": 0\\n }\\n },\\n \\"agentProtocols\\": [\\n \\"\\"\\n ]\\n }\\n ],\\n \\"type\\": \\"Http\\",\\n \\"GatewayId\\": \\"gw-xx\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'ListHttpApis',
- 'translator' => 'machine',
- ],
- 'UndeployHttpApi' => [
- 'summary' => 'Unpublishes an HTTP API.',
- 'path' => '/v1/http-apis/{httpApiId}/undeploy',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3ACFC7A7-45A9-58CF-B2D5-765B60254695\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"consumerAuthorizationRuleIds\\": [\\n \\"car-cus2d1em1hkg7732kuk0\\"\\n ]\\n }\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
- 'schemes' => [
- 'https',
+ 'title' => 'Create consumer authorization rules',
+ 'changeSet' => [
+ ['createdAt' => '2025-07-24T12:32:03.000Z', 'description' => 'Request parameters changed'],
],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreateConsumerAuthorizationRules',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'CreateDomain' => [
+ 'summary' => 'Creates a domain name.',
+ 'path' => '/v1/domains',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
- 'riskType' => 'high',
+ 'operationType' => 'create',
+ 'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '237789',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway910B7T',
- ],
+ 'abilityTreeCode' => '218988',
+ 'abilityTreeNodes' => ['FEATUREapigatewayLPOSXV'],
+ 'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'httpApiId',
- 'in' => 'path',
- 'schema' => [
- 'description' => 'HTTP API ID。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'api-cqu95allhtgii6***',
- ],
- ],
- [
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
- 'description' => 'The request body.'."\n",
+ 'description' => 'The request body.',
'type' => 'object',
'properties' => [
- 'routeId' => [
- 'description' => 'The route ID. You must specify this parameter when you unpublish the route of an HTTP API.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'hr-cr82undlhtgrle***',
- ],
- 'environmentId' => [
- 'description' => 'The environment ID.'."\n",
+ 'name' => ['description' => 'The domain name.', 'type' => 'string', 'required' => true, 'example' => 'abc.com', 'title' => ''],
+ 'protocol' => [
+ 'description' => 'The protocol type supported by the domain name. Valid values:'."\n"
+ ."\n"
+ .'- HTTP: Only HTTP is supported.'."\n"
+ .'- HTTPS: Only HTTPS is supported.',
+ 'enumValueTitles' => ['HTTPS' => 'HTTPS', 'HTTP' => 'HTTP'],
'type' => 'string',
'required' => false,
- 'example' => 'env-cqsmtellhtgvo***',
+ 'example' => 'HTTP',
+ 'title' => '',
],
- 'operationId' => [
- 'description' => 'The operation ID.',
+ 'domainScope' => ['title' => '', 'description' => 'The domain name scope.', 'type' => 'string', 'example' => 'Dedicated', 'required' => false],
+ 'forceHttps' => ['description' => 'Specifies whether to enable forced HTTPS redirect when the protocol type is set to HTTPS.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
+ 'mTLSEnabled' => ['title' => '', 'description' => 'Specifies whether to enable mTLS mutual authentication.', 'type' => 'boolean', 'required' => false, 'example' => ''],
+ 'certIdentifier' => ['description' => 'The certificate identifier.', 'type' => 'string', 'required' => false, 'example' => '1ef1da5f-38ed-69b3-****-037781890265'."\n", 'title' => ''],
+ 'caCertIdentifier' => ['description' => 'The CA certificate identifier.', 'type' => 'string', 'required' => false, 'example' => '1ef1da5f-38ed-69b3-****-037781890265'."\n", 'title' => ''],
+ 'clientCACert' => ['title' => '', 'description' => 'The client CA certificate.', 'type' => 'string', 'required' => false, 'example' => '-----BEGIN CERTIFICATE-----'."\n"
+ .'MIIFBTCCAu2gAwIBAgIUORLpYPGSFD1YOP6PMbE7Wd/mpTQwDQYJKoZIhvcNAQEL'."\n"
+ .'BQAwE************************************************2VwVOJ2gqX3'."\n"
+ .'YuGaxvIbDy0iQJ1GMerPRyzJTeVEtdIKT29u0PdFRr4KZWom35qX7G4='."\n"
+ .'-----END CERTIFICATE-----'],
+ 'http2Option' => [
+ 'description' => 'The HTTP/2 setting.',
+ 'enumValueTitles' => ['GlobalConfig' => 'GlobalConfig', 'Close' => 'Close', 'Open' => 'Open'],
'type' => 'string',
'required' => false,
- 'example' => 'op-d4favr6m1hk***',
+ 'example' => 'Open',
+ 'title' => '',
],
- 'gatewayId' => [
- 'description' => 'Gateway ID.',
+ 'tlsMax' => ['description' => 'The maximum TLS protocol version. TLS 1.3 is the maximum supported version.', 'type' => 'string', 'required' => false, 'example' => 'TLS1.3', 'title' => ''],
+ 'tlsMin' => ['description' => 'The minimum TLS protocol version. TLS 1.0 is the minimum supported version.', 'type' => 'string', 'required' => false, 'example' => 'TLS1.0', 'title' => ''],
+ 'resourceGroupId' => ['description' => 'The [resource group ID](~~151181~~).', 'type' => 'string', 'required' => false, 'example' => 'rg-aekzhiv7derfweq', 'title' => ''],
+ 'tlsCipherSuitesConfig' => ['description' => 'The cipher suite configuration.', '$ref' => '#/components/schemas/TlsCipherSuitesConfig', 'required' => false, 'title' => '', 'example' => ''],
+ 'gatewayType' => [
+ 'description' => 'The gateway type.',
+ 'enumValueTitles' => ['AI' => 'AI', 'API' => 'API'],
'type' => 'string',
'required' => false,
- 'example' => 'gw-cq7l5s5lhtg***',
+ 'example' => 'API',
+ 'title' => '',
],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
+ 'title' => '',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Request ID.',
- 'type' => 'string',
- 'example' => '3ACFC7A7-45A9-58CF-B2D5-765B60254695',
- ],
- 'code' => [
- 'description' => 'Response code.',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'Response message.',
- 'type' => 'string',
- 'example' => 'success',
+ 'requestId' => ['title' => '', 'description' => 'The request ID, which is used to trace the API call chain.', 'type' => 'string', 'example' => '0C2D1C68-0D93-5561-8EE6-FDB7BF067A30'],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'domainId' => ['description' => 'The domain name ID.', 'type' => 'string', 'example' => 'd-cpu1aullhtgkidg7sa4g', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3ACFC7A7-45A9-58CF-B2D5-765B60254695\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'UndeployHttpApi',
- ],
- 'DeleteHttpApi' => [
- 'summary' => 'Deletes an HTTP API.',
- 'path' => '/v1/http-apis/{httpApiId}',
- 'methods' => [
- 'delete',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0C2D1C68-0D93-5561-8EE6-FDB7BF067A30\\",\\n \\"data\\": {\\n \\"domainId\\": \\"d-cpu1aullhtgkidg7sa4g\\"\\n },\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ 'title' => 'Create a domain name',
+ 'changeSet' => [
+ ['createdAt' => '2026-06-17T12:19:57.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-04-24T16:41:34.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-02-27T07:54:24.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-11-28T10:53:19.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-11-20T09:31:25.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-09-23T07:51:38.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-07-25T08:17:35.000Z', 'description' => 'Request parameters changed'],
],
- 'schemes' => [
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateDomain'],
+ ],
],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'apig:CreateDomain',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:domain/*'],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'CreateEnvironment' => [
+ 'summary' => 'Creates an environment.',
+ 'path' => '/v1/environments',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
'operationType' => 'write',
- 'deprecated' => false,
+ 'deprecated' => true,
'systemTags' => [
- 'operationType' => 'delete',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '218999',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway910B7T',
- ],
+ 'abilityTreeCode' => '219212',
+ 'abilityTreeNodes' => ['FEATUREapigatewayN14L0I'],
+ 'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'httpApiId',
- 'in' => 'path',
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'title' => 'API ID。',
- 'description' => 'The HTTP API ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'api-xxx',
+ 'description' => 'The request body.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The environment name.', 'type' => 'string', 'required' => true, 'docRequired' => false, 'example' => 'test', 'title' => ''],
+ 'alias' => ['description' => 'The environment alias.', 'type' => 'string', 'required' => true, 'example' => '测试环境', 'title' => ''],
+ 'description' => ['description' => 'The description of the environment. You can specify information such as the purpose and owner of the environment.', 'type' => 'string', 'required' => false, 'example' => '这是xxx的xx项目测试环境', 'title' => ''],
+ 'gatewayId' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => true, 'example' => 'gw-cq7l5s5lhtgi6qasrdc0', 'title' => ''],
+ 'resourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-ahr5uil8raz0rq3b', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response body.'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '5B626361-070A-56A7-B127-ADAC8F3655DB',
- ],
- 'code' => [
- 'title' => '响应状态码。',
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'title' => '响应消息。',
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
+ 'requestId' => ['title' => '', 'description' => 'The request ID, which is used to trace the API call chain.', 'type' => 'string', 'example' => '3C3B9A12-3868-5EB9-8BEA-F99E03DD125C'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'environmentId' => ['description' => 'The environment ID.', 'type' => 'string', 'example' => 'env-cq7l5s5lhtgi6qasrdc0', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', 'returnType' => 'synchronous'],
+ 'title' => 'Create an environment',
+ 'changeSet' => [
+ ['createdAt' => '2024-11-20T09:31:23.000Z', 'description' => 'Request parameters changed'],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"5B626361-070A-56A7-B127-ADAC8F3655DB\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'DeleteHttpApi',
- 'translator' => 'machine',
- ],
- 'CreateHttpApiOperation' => [
- 'summary' => 'Create an Operation for HTTP API',
- 'path' => '/v1/http-apis/{httpApiId}/operations',
- 'methods' => [
- 'post',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateEnvironment'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreateEnvironment',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Environment', 'arn' => 'acs:apig:{#regionId}:{#accountId}:environment/*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3C3B9A12-3868-5EB9-8BEA-F99E03DD125C\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"environmentId\\": \\"env-cq7l5s5lhtgi6qasrdc0\\"\\n }\\n}","type":"json"}]',
+ ],
+ 'CreateGateway' => [
+ 'summary' => 'Creates a cloud-native gateway.',
+ 'path' => '/v1/gateways',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'create',
'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '219801',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway910B7T',
- ],
+ 'chargeType' => 'paid',
+ 'abilityTreeCode' => '220852',
+ 'abilityTreeNodes' => ['FEATUREapigatewayUWNKMC'],
],
'parameters' => [
[
- 'name' => 'httpApiId',
- 'in' => 'path',
- 'schema' => [
- 'title' => 'API ID。',
- 'description' => 'The ID of the HTTP API to which the operation belongs.',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'api-xxx',
- ],
- ],
- [
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
- 'description' => 'The request parameters.'."\n",
+ 'description' => 'The request body.',
'type' => 'object',
'properties' => [
- 'operations' => [
- 'title' => '接口定义。',
- 'description' => 'The operation definitions.'."\n",
+ 'name' => ['description' => 'The gateway name.', 'type' => 'string', 'required' => false, 'example' => 'test-ceshi', 'title' => ''],
+ 'chargeType' => [
+ 'description' => 'The billing method. Valid values:'."\n"
+ .'- POSTPAY: subscription.'."\n"
+ .'- PREPAY: pay-as-you-go.',
+ 'enumValueTitles' => ['POSTPAY' => 'subscription.', 'PREPAY' => 'pay-as-you-go.'],
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'POSTPAY',
+ 'title' => '',
+ ],
+ 'gatewayType' => [
+ 'description' => 'The gateway type. Valid values:'."\n"
+ .'- AI: AI gateway.'."\n"
+ .'- API: cloud-native API gateway.',
+ 'enumValueTitles' => ['AI' => 'AI gateway.', 'API' => 'Cloud-native API gateway.'],
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'API',
+ 'title' => '',
+ ],
+ 'spec' => ['description' => 'The node specifications.', 'type' => 'string', 'required' => false, 'example' => 'apigw.dev.x2', 'title' => ''],
+ 'vpcId' => ['description' => 'The VPC ID.', 'type' => 'string', 'required' => false, 'example' => 'vpc-zm0x16tomfiat1mk9f6rs', 'title' => ''],
+ 'networkAccessConfig' => [
+ 'description' => 'The network access configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'type' => [
+ 'description' => 'The network access type. Valid values:'."\n"
+ .'- InternetAndIntranet: public and internal network.'."\n"
+ .'- Intranet: internal network.'."\n"
+ .'- Internet: public network.',
+ 'enumValueTitles' => ['InternetAndIntranet' => 'public and internal network.', 'Intranet' => 'internal network.', 'Internet' => 'public network.'],
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Internet',
+ 'title' => '',
+ ],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'zoneConfig' => [
+ 'description' => 'The zone configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'selectOption' => [
+ 'description' => 'The zone selection option. Valid values:'."\n"
+ .'- Auto: automatic.'."\n"
+ .'- Manual: manual.',
+ 'enumValueTitles' => ['Auto' => 'automatic.', 'Manual' => 'manual.'],
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Manual',
+ 'title' => '',
+ ],
+ 'vSwitchId' => ['description' => 'The vSwitch ID.', 'type' => 'string', 'required' => false, 'example' => 'vsw-xxx', 'title' => ''],
+ 'zones' => [
+ 'description' => 'The list of supported zones.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The zone information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'zoneId' => ['description' => 'The zone ID.', 'type' => 'string', 'required' => false, 'example' => 'cn-wulanchabu-a', 'title' => ''],
+ 'vSwitchId' => ['description' => 'The vSwitch ID.', 'type' => 'string', 'required' => false, 'example' => 'vsw-xx', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'logConfig' => [
+ 'description' => 'The gateway log configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'sls' => [
+ 'description' => 'The Simple Log Service (SLS) log configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'enable' => ['description' => 'Specifies whether to enable SLS logging.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'resourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-ahr5uil8raz0rq3b', 'title' => ''],
+ 'tag' => [
+ 'description' => 'The list of tags.',
'type' => 'array',
'items' => [
- 'description' => 'The operation definition.'."\n",
+ 'description' => 'The tag information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'key' => ['description' => 'The tag key.', 'type' => 'string', 'required' => false, 'example' => 'key', 'title' => ''],
+ 'value' => ['description' => 'The tag value.', 'type' => 'string', 'required' => false, 'example' => 'value', 'title' => ''],
+ ],
'required' => false,
- '$ref' => '#/components/schemas/HttpApiOperation',
+ 'title' => '',
+ 'example' => '',
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
+ 'gatewayEdition' => ['title' => '', 'description' => 'The gateway instance edition. Valid values:'."\n"
+ ."\n"
+ .'- Professional: standard instance.'."\n"
+ ."\n"
+ .'- Serverless: Serverless instance.'."\n"
+ ."\n"
+ .'- MultiTenantServerless: multi-tenant Serverless instance.'."\n"
+ ."\n"
+ .'- Unknown: unknown.', 'type' => 'string', 'example' => 'Professional', 'default' => 'Professional', 'required' => false],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Response.',
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Request ID.',
- 'type' => 'string',
- 'example' => '393E2630-DBE7-5221-AB35-9E740675491A',
- ],
- 'message' => [
- 'title' => '响应消息。',
- 'description' => 'Response message.',
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'code' => [
- 'title' => '响应状态码。',
- 'description' => 'Response status code.',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '9CDE3E69-69C2-5402-83AD-ACA80B1AF35B'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'title' => '接口信息。',
- 'description' => 'Operation information.',
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'operations' => [
- 'title' => '接口信息。',
- 'description' => 'Operation information.',
- 'type' => 'array',
- 'items' => [
- 'description' => 'Operation information.',
- 'type' => 'object',
- 'properties' => [
- 'operationId' => [
- 'description' => 'Operation ID.',
- 'type' => 'string',
- 'example' => 'op-xxx',
- ],
- ],
- ],
- ],
+ 'gatewayId' => ['description' => 'The gateway ID.', 'type' => 'string', 'example' => 'gw-cq2vundlhtg***', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"393E2630-DBE7-5221-AB35-9E740675491A\\",\\n \\"message\\": \\"success\\",\\n \\"code\\": \\"Ok\\",\\n \\"data\\": {\\n \\"operations\\": [\\n {\\n \\"operationId\\": \\"op-xxx\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'CreateHttpApiOperation',
- 'translator' => 'machine',
- ],
- 'GetHttpApiOperation' => [
- 'summary' => 'Get Operation',
- 'path' => '/v1/http-apis/{httpApiId}/operations/{operationId}',
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
- 'security' => [
- [
- 'AK' => [],
- ],
- ],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"9CDE3E69-69C2-5402-83AD-ACA80B1AF35B\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"gatewayId\\": \\"gw-cq2vundlhtg***\\"\\n }\\n}","type":"json"}]',
+ 'title' => 'Create a gateway',
+ 'changeSet' => [
+ ['createdAt' => '2025-09-18T12:49:49.000Z', 'description' => 'Request parameters changed'],
],
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'abilityTreeCode' => '219803',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway910B7T',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateGateway'],
],
],
- 'parameters' => [
- [
- 'name' => 'httpApiId',
- 'in' => 'path',
- 'schema' => [
- 'title' => 'API ID。',
- 'description' => 'The HTTP API ID to which the operation belongs.',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'api-xxx',
- ],
- ],
+ 'ramActions' => [
[
- 'name' => 'operationId',
- 'in' => 'path',
- 'schema' => [
- 'title' => '接口ID。',
- 'description' => 'The operation ID.',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'op-xxx',
- ],
- ],
- ],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The returned result.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Request ID.',
- 'type' => 'string',
- 'example' => 'B725275B-50C6-5A49-A9FD-F0332FCB3351',
- ],
- 'code' => [
- 'title' => '响应状态码。',
- 'description' => 'Response status code.',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'title' => '响应消息。',
- 'description' => 'Response message.',
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'data' => [
- 'title' => '接口信息。',
- 'description' => 'The operation information.'."\n",
- '$ref' => '#/components/schemas/HttpApiOperationInfo',
- ],
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'apig:CreateGateway',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/*'],
],
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"B725275B-50C6-5A49-A9FD-F0332FCB3351\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"operationId\\": \\"op-xxx\\",\\n \\"method\\": \\"GET\\",\\n \\"name\\": \\"GetUserInfo\\",\\n \\"path\\": \\"/user/123\\",\\n \\"description\\": \\"获取用户信息\\",\\n \\"response\\": {\\n \\"contentType\\": \\"application/json\\",\\n \\"items\\": [\\n {\\n \\"code\\": 200,\\n \\"example\\": \\"{\\\\\\"result\\\\\\": \\\\\\"ok\\\\\\"}\\",\\n \\"description\\": \\"正常接口响应\\",\\n \\"jsonSchema\\": \\"\\"\\n }\\n ]\\n },\\n \\"request\\": {\\n \\"headerParameters\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"required\\": false,\\n \\"type\\": \\"string\\",\\n \\"defaultValue\\": \\"\\",\\n \\"exampleValue\\": \\"\\",\\n \\"description\\": \\"\\"\\n }\\n ],\\n \\"queryParameters\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"required\\": false,\\n \\"type\\": \\"string\\",\\n \\"defaultValue\\": \\"\\",\\n \\"exampleValue\\": \\"\\",\\n \\"description\\": \\"\\"\\n }\\n ],\\n \\"pathParameters\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"required\\": false,\\n \\"type\\": \\"string\\",\\n \\"defaultValue\\": \\"\\",\\n \\"exampleValue\\": \\"\\",\\n \\"description\\": \\"\\"\\n }\\n ],\\n \\"body\\": {\\n \\"description\\": \\"\\",\\n \\"example\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"contentType\\": \\"application/json\\",\\n \\"jsonSchema\\": \\"\\"\\n }\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"\\"\\n },\\n \\"createTimestamp\\": 1719386834548,\\n \\"enableAuth\\": true,\\n \\"authConfig\\": {\\n \\"authType\\": \\"\\",\\n \\"authMode\\": \\"\\"\\n },\\n \\"status\\": \\"Deployed\\",\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 0,\\n \\"protocol\\": \\"\\",\\n \\"gatewayServiceId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"version\\": \\"\\",\\n \\"multiServiceRouteStrategy\\": \\"\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"\\",\\n \\"rateLimit\\": 0,\\n \\"queueSize\\": 0\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {\\n \\"type\\": \\"AiFallback\\",\\n \\"enable\\": true,\\n \\"aiFallbackConfig\\": {\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"\\",\\n \\"targetModelName\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiSecurityGuardConfig\\": {\\n \\"serviceAddress\\": \\"\\",\\n \\"checkRequest\\": true,\\n \\"checkResponse\\": true,\\n \\"checkRequestImage\\": true,\\n \\"checkResponseImage\\": true,\\n \\"requestCheckService\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"riskAlertLevel\\": \\"\\",\\n \\"riskConfig\\": [\\n {\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\",\\n \\"consumerRules\\": {\\n \\"pattern\\": \\"\\",\\n \\"matchType\\": \\"\\"\\n }\\n }\\n ],\\n \\"bufferLimit\\": 0,\\n \\"consumerRequestCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"requestCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerResponseCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerRiskLevel\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiTokenRateLimitConfig\\": {\\n \\"rules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"globalRules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"enableGlobalRules\\": true\\n }\\n }\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"\\"\\n }\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'GetHttpApiOperation',
- 'translator' => 'machine',
],
- 'UpdateHttpApiOperation' => [
- 'summary' => 'Updates an operation of an HTTP API.',
- 'path' => '/v1/http-apis/{httpApiId}/operations/{operationId}',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'CreateHttpApi' => [
+ 'summary' => 'Creates an HTTP API.',
+ 'path' => '/v1/http-apis',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '218843',
+ 'abilityTreeNodes' => ['FEATUREapigateway910B7T'],
],
'parameters' => [
[
- 'name' => 'httpApiId',
- 'in' => 'path',
- 'schema' => [
- 'title' => '待更新接口所属的API ID。',
- 'description' => 'The HTTP API ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'api-xxx',
- ],
- ],
- [
- 'name' => 'operationId',
- 'in' => 'path',
- 'schema' => [
- 'title' => '待更新的接口ID。',
- 'description' => 'The operation ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'op-xxx',
- ],
- ],
- [
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
- 'description' => 'The request body.'."\n",
+ 'description' => 'The request body.',
'type' => 'object',
'properties' => [
- 'operation' => [
- 'title' => '接口定义。',
- 'description' => 'The operation definition.'."\n",
+ 'name' => ['title' => '', 'description' => 'The API name.', 'type' => 'string', 'required' => true, 'example' => 'test-api'],
+ 'description' => ['title' => '', 'description' => 'The API description.', 'type' => 'string', 'required' => false, 'example' => 'Test API for integration'],
+ 'protocols' => [
+ 'title' => '',
+ 'description' => 'The list of API access protocols.',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '',
+ 'description' => 'The API access protocol.',
+ 'enumValueTitles' => ['HTTPS' => 'HTTPS protocol.', 'HTTP' => 'HTTP protocol.'],
+ 'type' => 'string',
+ 'default' => 'HTTP',
+ 'enum' => ['HTTP', 'HTTPS'],
+ 'required' => false,
+ 'example' => 'HTTP',
+ ],
+ 'required' => false,
+ 'example' => '',
+ ],
+ 'basePath' => ['title' => '', 'description' => 'The API base path, which must start with a forward slash (/).', 'type' => 'string', 'required' => false, 'example' => '/v1'],
+ 'versionConfig' => ['description' => 'The API versioning configuration.', '$ref' => '#/components/schemas/HttpApiVersionConfig', 'required' => false, 'title' => '', 'example' => ''],
+ 'type' => [
+ 'description' => 'The type of the HTTP API. Valid values:'."\n"
+ .'- Http'."\n"
+ .'- Rest'."\n"
+ .'- WebSocket'."\n"
+ .'- HttpIngress'."\n"
+ .'- LLM'."\n"
+ .'- Agent',
+ 'enumValueTitles' => ['HttpIngress' => 'HTTP Ingress API, accessed through Ingress.', 'Agent' => 'Agent proxy API.', 'Rest' => 'RESTful API', 'Http' => 'Standard HTTP API.', 'LLM' => 'Large language model API.', 'WebSocket' => 'WebSocket API'],
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Http',
+ 'title' => '',
+ ],
+ 'ingressConfig' => [
+ 'description' => 'The HTTP Ingress API configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'environmentId' => ['description' => 'The environment ID.', 'type' => 'string', 'required' => false, 'example' => 'env-cq146allhtgk***', 'title' => ''],
+ 'sourceId' => ['description' => 'The source ID.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'src-crdddallhtgtr***', 'title' => ''],
+ 'ingressClass' => ['description' => 'The Ingress Class to listen on.', 'type' => 'string', 'required' => false, 'example' => 'mse', 'title' => ''],
+ 'watchNamespace' => ['description' => 'The namespace to listen on.', 'type' => 'string', 'required' => false, 'example' => 'default', 'title' => ''],
+ 'overrideIngressIp' => ['description' => 'Specifies whether to update the address in the Ingress Status.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
+ 'clusterId' => ['description' => 'The cluster ID.', 'type' => 'string', 'required' => false, 'example' => 'k7v5eobfzttudni2pw***', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'resourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-xxx', 'title' => ''],
+ 'aiProtocols' => [
+ 'description' => 'The AI API protocols. The following protocols are supported:'."\n"
+ .'- OpenAI/v1',
+ 'type' => 'array',
+ 'items' => ['description' => 'The AI API protocol.', 'type' => 'string', 'required' => false, 'example' => 'OpenAI/v1', 'title' => ''],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'agentProtocols' => [
+ 'description' => 'The list of protocols supported by the agent.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The list of protocols supported by the agent.', 'type' => 'string', 'required' => false, 'example' => 'http/https', 'title' => ''],
'required' => false,
- '$ref' => '#/components/schemas/HttpApiOperation',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'deployConfigs' => [
+ 'description' => 'The API deployment configurations. Currently, only AI APIs support deployment configurations, and only a single deployment configuration can be specified.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The API deployment configuration.', '$ref' => '#/components/schemas/HttpApiDeployConfig', 'required' => false, 'title' => '', 'example' => ''],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
+ 'enableAuth' => ['description' => 'Specifies whether to enable authentication.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ 'authConfig' => ['description' => 'The authentication configuration.', '$ref' => '#/components/schemas/AuthConfig', 'required' => false, 'title' => '', 'example' => ''],
+ 'modelCategory' => ['description' => 'The model category.', 'type' => 'string', 'required' => false, 'example' => 'llm/text-to-image', 'title' => ''],
+ 'removeBasePathOnForward' => ['description' => 'Specifies whether to remove the base path when forwarding requests.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ 'firstByteTimeout' => ['description' => 'The timeout period for waiting for the first byte from the backend.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30', 'title' => ''],
+ 'belongGatewayId' => ['description' => 'The ID of the gateway to which the API belongs.', 'type' => 'string', 'required' => false, 'example' => 'gw-abc123xyz789', 'title' => ''],
+ 'dryRun' => ['description' => 'Specifies whether to perform a dry run without executing the operation.', 'type' => 'boolean', 'deprecated' => true, 'required' => false, 'example' => 'true', 'title' => ''],
+ 'strategy' => ['description' => 'The conflict merge strategy for import.', 'type' => 'string', 'required' => false, 'example' => 'ExistFirst', 'title' => ''],
],
'required' => false,
+ 'example' => '{\'key\': \'value\'}',
+ 'title' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response parameters.'."\n",
+ 'title' => '',
+ 'description' => 'The response body.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '043360DA-ED3B-5386-9B7A-D94DECF99A30',
- ],
- 'code' => [
- 'title' => '响应状态码。',
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'title' => '响应消息。',
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'A1994B10-C6A8-58FA-8347-6A08B0D4EFDE'],
+ 'code' => ['description' => 'The status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The API information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'httpApiId' => ['description' => 'HTTP API ID。', 'type' => 'string', 'example' => 'api-xxx', 'title' => ''],
+ 'name' => ['description' => 'The API name.', 'type' => 'string', 'example' => 'test-api', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"A1994B10-C6A8-58FA-8347-6A08B0D4EFDE\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"name\\": \\"test-api\\"\\n }\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"043360DA-ED3B-5386-9B7A-D94DECF99A30\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'UpdateHttpApiOperation',
- 'translator' => 'machine',
- ],
- 'ListHttpApiOperations' => [
- 'summary' => 'List Operations',
- 'path' => '/v1/http-apis/{httpApiId}/operations',
- 'methods' => [
- 'get',
+ 'title' => 'Create an HTTP API',
+ 'changeSet' => [
+ ['createdAt' => '2026-02-12T06:43:34.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2026-02-11T08:30:13.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-08-19T12:32:17.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-07-17T13:23:54.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-06-26T12:05:01.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-04-24T16:41:36.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-01-02T05:55:00.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-11-20T04:02:26.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-11-18T08:56:08.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-09-06T06:02:55.000Z', 'description' => 'Request parameters changed'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateHttpApi'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'apig:CreateHttpApi',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'CreateHttpApiOperation' => [
+ 'summary' => 'Creates operations for an HTTP API.',
+ 'path' => '/v1/http-apis/{httpApiId}/operations',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'read',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'list',
+ 'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '219808',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway910B7T',
- ],
+ 'abilityTreeCode' => '219801',
+ 'abilityTreeNodes' => ['FEATUREapigateway910B7T'],
],
'parameters' => [
[
'name' => 'httpApiId',
'in' => 'path',
- 'schema' => [
- 'title' => 'API ID。',
- 'description' => 'Target HTTP API ID.',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'api-xxx',
- ],
+ 'schema' => ['title' => '', 'description' => 'The ID of the HTTP API for which to create operations.', 'type' => 'string', 'required' => true, 'example' => 'api-xxx'],
],
[
- 'name' => 'method',
- 'in' => 'query',
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'title' => '按Method列举接口。',
- 'description' => 'List interfaces by Method.',
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'TRACE' => 'TRACE',
- 'HEAD' => 'HEAD',
- 'DELETE' => 'DELETE',
- 'POST' => 'POST',
- 'GET' => 'GET',
- 'CONNECT' => 'CONNECT',
- 'OPTIONS' => 'OPTIONS',
- 'PUT' => 'PUT',
- 'PATCH' => 'PATCH',
+ 'description' => 'The request parameters.',
+ 'type' => 'object',
+ 'properties' => [
+ 'operations' => [
+ 'title' => '',
+ 'description' => 'The list of operation definitions.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The operation definition.', '$ref' => '#/components/schemas/HttpApiOperation', 'required' => false, 'title' => '', 'example' => ''],
+ 'required' => false,
+ 'example' => '',
+ ],
],
- 'example' => 'GET',
- ],
- ],
- [
- 'name' => 'pathLike',
- 'in' => 'query',
- 'schema' => [
- 'title' => '按路径前缀匹配搜索接口。',
- 'description' => 'Search operations by path prefix.',
- 'type' => 'string',
- 'required' => false,
- 'example' => '/v1',
- ],
- ],
- [
- 'name' => 'nameLike',
- 'in' => 'query',
- 'schema' => [
- 'title' => '按接口名称前缀搜索接口。',
- 'description' => 'Search operations by name prefix.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'GetUser',
- ],
- ],
- [
- 'name' => 'pageNumber',
- 'in' => 'query',
- 'schema' => [
- 'title' => '分页页码,从1开始,不填默认1。',
- 'description' => 'Page number, starting from 1, default is 1 if not specified.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
- ],
- [
- 'name' => 'pageSize',
- 'in' => 'query',
- 'schema' => [
- 'title' => '分页大小,有效范围[1, 100],不填默认10。',
- 'description' => 'Page size, valid range [1, 100], default is 10 if not specified.',
- 'type' => 'integer',
- 'format' => 'int32',
'required' => false,
- 'example' => '10',
- ],
- ],
- [
- 'name' => 'name',
- 'in' => 'query',
- 'schema' => [
- 'title' => '按照名称精确搜索。',
- 'description' => 'Search operations by exact name.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'getUserInfo',
- ],
- ],
- [
- 'name' => 'withConsumerInEnvironmentId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Each operation information in the response carries a list of authorization rules for the specified consumer under the specified environment ID. The withConsumerInEnvironmentId field needs to be additionally specified.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'env-xxx',
- ],
- ],
- [
- 'name' => 'withConsumerInfoById',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Each operation information in the response carries a list of authorization rules for the specified consumer under the specified environment ID. The withConsumerInEnvironmentId field needs to be additionally specified.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cs-xxx',
- ],
- ],
- [
- 'name' => 'consumerAuthorizationRuleId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Filter the operation list based on a specific consumer authorization rule ID, and the interface list in the response only contains authorized operations.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cas-xxx',
- ],
- ],
- [
- 'name' => 'withPluginAttachmentByPluginId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Plugin ID, use this plugin ID to retrieve the plugin release information.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'pl-xxx',
- ],
- ],
- [
- 'name' => 'forDeploy',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Whether to filter for deployment scenario',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
- ],
- [
- 'name' => 'gatewayId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The gateway ID',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-001',
- ],
- ],
- [
- 'name' => 'enableAuth',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Filter operations by authentication status',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The returned result.'."\n",
+ 'title' => '',
+ 'description' => 'The response.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Request ID.',
- 'type' => 'string',
- 'example' => '585657D2-1C20-5B8A-AF17-D727C6490BE4',
- ],
- 'code' => [
- 'title' => '响应状态码。',
- 'description' => 'Response status code.',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'title' => '响应消息,',
- 'description' => 'Response message.',
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '393E2630-DBE7-5221-AB35-9E740675491A'],
+ 'message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'success'],
+ 'code' => ['title' => '', 'description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok'],
'data' => [
- 'title' => '接口列表。',
- 'description' => 'The operations.'."\n",
+ 'title' => '',
+ 'description' => 'The operation information.',
'type' => 'object',
'properties' => [
- 'pageNumber' => [
- 'title' => '分页页码。',
- 'description' => 'Page number.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'pageSize' => [
- 'title' => '分页大小。',
- 'description' => 'Page size.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
- 'totalSize' => [
- 'title' => '总数量。',
- 'description' => 'Total count.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
- 'items' => [
- 'title' => '接口列表。',
- 'description' => 'The operations.'."\n",
+ 'operations' => [
+ 'title' => '',
+ 'description' => 'The operation information.',
'type' => 'array',
'items' => [
- 'title' => '接口信息。',
- 'description' => 'The operation information.'."\n",
- '$ref' => '#/components/schemas/HttpApiOperationInfo',
+ 'description' => 'The operation information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'operationId' => ['description' => 'The operation ID.', 'type' => 'string', 'example' => 'op-xxx', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'example' => '',
],
],
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C6490BE4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 10,\\n \\"items\\": [\\n {\\n \\"operationId\\": \\"op-xxx\\",\\n \\"method\\": \\"GET\\",\\n \\"name\\": \\"GetUserInfo\\",\\n \\"path\\": \\"/user/123\\",\\n \\"description\\": \\"获取用户信息\\",\\n \\"response\\": {\\n \\"contentType\\": \\"application/json\\",\\n \\"items\\": [\\n {\\n \\"code\\": 200,\\n \\"example\\": \\"{\\\\\\"result\\\\\\": \\\\\\"ok\\\\\\"}\\",\\n \\"description\\": \\"正常接口响应\\",\\n \\"jsonSchema\\": \\"\\"\\n }\\n ]\\n },\\n \\"request\\": {\\n \\"headerParameters\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"required\\": false,\\n \\"type\\": \\"string\\",\\n \\"defaultValue\\": \\"\\",\\n \\"exampleValue\\": \\"\\",\\n \\"description\\": \\"\\"\\n }\\n ],\\n \\"queryParameters\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"required\\": false,\\n \\"type\\": \\"string\\",\\n \\"defaultValue\\": \\"\\",\\n \\"exampleValue\\": \\"\\",\\n \\"description\\": \\"\\"\\n }\\n ],\\n \\"pathParameters\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"required\\": false,\\n \\"type\\": \\"string\\",\\n \\"defaultValue\\": \\"\\",\\n \\"exampleValue\\": \\"\\",\\n \\"description\\": \\"\\"\\n }\\n ],\\n \\"body\\": {\\n \\"description\\": \\"\\",\\n \\"example\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"contentType\\": \\"application/json\\",\\n \\"jsonSchema\\": \\"\\"\\n }\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"\\"\\n },\\n \\"createTimestamp\\": 1719386834548,\\n \\"enableAuth\\": true,\\n \\"authConfig\\": {\\n \\"authType\\": \\"\\",\\n \\"authMode\\": \\"\\"\\n },\\n \\"status\\": \\"Deployed\\",\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 0,\\n \\"protocol\\": \\"\\",\\n \\"gatewayServiceId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"version\\": \\"\\",\\n \\"multiServiceRouteStrategy\\": \\"\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"\\",\\n \\"rateLimit\\": 0,\\n \\"queueSize\\": 0\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {\\n \\"type\\": \\"AiFallback\\",\\n \\"enable\\": true,\\n \\"aiFallbackConfig\\": {\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"\\",\\n \\"targetModelName\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiSecurityGuardConfig\\": {\\n \\"serviceAddress\\": \\"\\",\\n \\"checkRequest\\": true,\\n \\"checkResponse\\": true,\\n \\"checkRequestImage\\": true,\\n \\"checkResponseImage\\": true,\\n \\"requestCheckService\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"riskAlertLevel\\": \\"\\",\\n \\"riskConfig\\": [\\n {\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\",\\n \\"consumerRules\\": {\\n \\"pattern\\": \\"\\",\\n \\"matchType\\": \\"\\"\\n }\\n }\\n ],\\n \\"bufferLimit\\": 0,\\n \\"consumerRequestCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"requestCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerResponseCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerRiskLevel\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiTokenRateLimitConfig\\": {\\n \\"rules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"globalRules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"enableGlobalRules\\": true\\n }\\n }\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"\\"\\n }\\n ]\\n }\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'ListHttpApiOperations',
- 'translator' => 'machine',
- ],
- 'DeleteHttpApiOperation' => [
- 'summary' => 'Deletes an operation from an HTTP API.',
- 'path' => '/v1/http-apis/{httpApiId}/operations/{operationId}',
- 'methods' => [
- 'delete',
- ],
- 'schemes' => [
- 'https',
- ],
- 'security' => [
- [
- 'AK' => [],
+ 'title' => 'Create operations',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateHttpApiOperation'],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'write',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'delete',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- ],
- 'parameters' => [
+ 'ramActions' => [
[
- 'name' => 'httpApiId',
- 'in' => 'path',
- 'schema' => [
- 'title' => 'API ID。',
- 'description' => 'The HTTP API ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'api-xxx',
- ],
- ],
- [
- 'name' => 'operationId',
- 'in' => 'path',
- 'schema' => [
- 'title' => '接口ID。',
- 'description' => 'The operation ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'op-xxx',
- ],
- ],
- ],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response parameters.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '585657D2-1C20-5B8A-AF17-D727C6490BE4',
- ],
- 'code' => [
- 'title' => '响应状态码。',
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'title' => '响应消息,',
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'apig:CreateHttpApiOperation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
],
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C6490BE4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'DeleteHttpApiOperation',
- 'translator' => 'machine',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"393E2630-DBE7-5221-AB35-9E740675491A\\",\\n \\"message\\": \\"success\\",\\n \\"code\\": \\"Ok\\",\\n \\"data\\": {\\n \\"operations\\": [\\n {\\n \\"operationId\\": \\"op-xxx\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
],
- 'CreateMcpServer' => [
- 'summary' => 'Creates an MCP server.',
- 'path' => '/v1/mcp-servers',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'CreateHttpApiRoute' => [
+ 'path' => '/v1/http-apis/{httpApiId}/routes',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '281123',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayMD7H1W',
- ],
+ 'abilityTreeCode' => '237765',
+ 'abilityTreeNodes' => ['FEATUREapigateway910B7T'],
],
'parameters' => [
[
+ 'name' => 'httpApiId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The ID of the HTTP API to which the route belongs.', 'type' => 'string', 'required' => false, 'example' => 'api-cqoob7llhtgq***', 'title' => ''],
+ ],
+ [
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
- 'description' => 'object',
+ 'description' => 'The request body.',
'type' => 'object',
'properties' => [
- 'gatewayId' => [
- 'description' => 'Gateway ID',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'gw-cq7l5s5lhtgi6qac0',
- ],
- 'name' => [
- 'description' => 'MCP server name',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'fetch-time',
- ],
- 'description' => [
- 'description' => 'MCP server description',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'mcp tool fetch time',
- ],
- 'type' => [
- 'description' => 'MCP server type',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'RealMCP',
- 'enum' => [
- 'RealMCP',
- 'AssemblyMCP',
- ],
- ],
+ 'environmentId' => ['description' => 'The environment ID.', 'type' => 'string', 'required' => false, 'example' => 'env-cpqnr6tlhtgubcv***', 'title' => ''],
+ 'name' => ['description' => 'The route name.', 'type' => 'string', 'required' => false, 'example' => 'login', 'title' => ''],
+ 'description' => ['description' => 'The route description.', 'type' => 'string', 'required' => false, 'example' => '用户登录路由。', 'title' => ''],
'domainIds' => [
- 'description' => 'List of domain IDs for the MCP server',
+ 'description' => 'The domain name IDs.',
'type' => 'array',
- 'items' => [
- 'description' => 'string',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'd-cr62ts5lhtglnu***',
- ],
- 'required' => false,
- ],
- 'match' => [
- 'description' => 'Route matching conditions',
+ 'items' => ['description' => 'The domain name IDs.', 'type' => 'string', 'required' => false, 'example' => 'd-cr62ts5lhtglnu***', 'title' => ''],
'required' => false,
- '$ref' => '#/components/schemas/HttpRouteMatch',
+ 'title' => '',
+ 'example' => '',
],
+ 'match' => ['description' => 'The route match rule.', '$ref' => '#/components/schemas/HttpRouteMatch', 'required' => false, 'title' => '', 'example' => ''],
'backendConfig' => [
- 'description' => 'Backend configuration',
+ 'description' => 'The backend service configuration of the route.',
'type' => 'object',
'properties' => [
'scene' => [
- 'description' => 'Backend scene type',
+ 'description' => 'The backend service scenario. Valid values:'."\n"
+ .'- SingleService: single service.'."\n"
+ .'- MultiServiceByRatio: multiple services with ratio-based canary release.'."\n"
+ .'- Mock: mock service.'."\n"
+ .'- Redirect: redirect service.',
+ 'enumValueTitles' => ['SingleService' => 'Single service.', 'MultiServiceByRatio' => 'Multiple services with ratio-based canary release.', 'Redirect' => 'Redirect', 'MultiServiceByTag' => 'Multiple services by tag.', 'Mock' => 'Mock'],
'type' => 'string',
'required' => false,
'example' => 'SingleService',
+ 'title' => '',
],
'services' => [
- 'description' => 'List of backend services',
+ 'description' => 'The list of backend services.',
'type' => 'array',
'items' => [
- 'description' => 'object',
+ 'description' => 'The backend service.',
'type' => 'object',
'properties' => [
+ 'serviceId' => ['description' => 'The service ID.', 'type' => 'string', 'required' => false, 'example' => 'svc-crbgq0dlhtgr***', 'title' => ''],
'protocol' => [
- 'description' => 'Service protocol',
+ 'description' => 'The service protocol. Valid values:'."\n"
+ .'- HTTP.'."\n"
+ .'- HTTPS.',
+ 'enumValueTitles' => ['HTTPS' => 'HTTPS', 'HTTP' => 'HTTP'],
'type' => 'string',
'required' => false,
'example' => 'HTTP',
+ 'title' => '',
],
- 'port' => [
- 'description' => 'Service port',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '8080',
- ],
- 'weight' => [
- 'description' => 'Service weight',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '49',
- ],
- 'serviceId' => [
- 'description' => 'Service ID',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'svc-crbgq0dlhtgr***',
- ],
- 'version' => [
- 'description' => 'Service version',
- 'type' => 'string',
- 'required' => false,
- 'example' => '2.1.6',
- ],
+ 'port' => ['description' => 'The service port. Do not specify this parameter for dynamic ports.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '8080', 'title' => ''],
+ 'weight' => ['description' => 'The percentage value of the traffic ratio.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '49', 'title' => ''],
+ 'version' => ['description' => 'The service version. This parameter is valid only in the tag-based scenario.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
- 'protocol' => [
- 'description' => 'MCP protocol',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'HTTP',
- ],
- 'exposedUriPath' => [
- 'description' => 'Exposed URI path for SSE/StreamableHTTP protocols',
- 'type' => 'string',
- 'required' => false,
- 'example' => '/sse',
- ],
- 'assembledSources' => [
- 'description' => 'Assembled MCP server sources',
+ 'deployConfigs' => [
+ 'description' => 'The API deployment configurations.',
'type' => 'array',
- 'items' => [
- 'description' => 'object',
- 'type' => 'object',
- 'properties' => [
- 'mcpServerName' => [
- 'description' => 'Source MCP server name',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test-mcp',
- ],
- 'mcpServerId' => [
- 'description' => 'MCP Server ID',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'mcp-sdfa3qgavz',
- ],
- 'tools' => [
- 'description' => 'List of tool names to include',
- 'type' => 'array',
- 'items' => [
- 'description' => 'string',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'tool1',
- ],
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- ],
- 'mcpStatisticsEnable' => [
- 'description' => 'Enable MCP statistics',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
- 'createFromType' => [
- 'description' => 'Creation source type',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'ApiGatewayMcpHosting',
- ],
- 'grayMcpServerConfigs' => [
- 'description' => 'Gray route configurations',
- 'type' => 'array',
- 'items' => [
- 'description' => 'object',
- 'type' => 'object',
- 'properties' => [
- 'routeId' => [
- 'description' => 'Route ID for update operations',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gray-route-123',
- ],
- 'match' => [
- 'description' => 'Route matching rules',
- 'required' => false,
- '$ref' => '#/components/schemas/HttpRouteMatch',
- ],
- 'backendConfig' => [
- 'description' => 'Backend configuration for gray route',
- 'type' => 'object',
- 'properties' => [
- 'scene' => [
- 'description' => 'Must be SingleService',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'SingleService',
- ],
- 'services' => [
- 'description' => 'Exactly one service',
- 'type' => 'array',
- 'items' => [
- 'description' => 'object',
- 'type' => 'object',
- 'properties' => [
- 'protocol' => [
- 'description' => 'Service protocol type',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'HTTP',
- ],
- 'port' => [
- 'description' => 'Service port number',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '8080',
- ],
- 'weight' => [
- 'description' => 'Service weight for load balancing',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '100',
- ],
- 'serviceId' => [
- 'description' => 'Service ID',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'svc-gray',
- ],
- 'version' => [
- 'description' => 'Service version',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'v2.0.0',
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
+ 'items' => ['description' => 'The API deployment configurations.', '$ref' => '#/components/schemas/HttpApiDeployConfig', 'required' => false, 'title' => '', 'example' => ''],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
- 'mcpServerConfig' => [
- 'description' => 'MCP server specification',
+ 'mcpRouteConfig' => [
+ 'description' => 'The MCP route configuration.',
'type' => 'object',
'properties' => [
- 'swaggerConfig' => [
- 'description' => 'Raw Swagger/OpenAPI document',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'swagger.yaml',
- ],
- 'mcpServerSpec' => [
- 'description' => 'Converted MCP server spec YAML',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'mcp-spec.yaml',
- ],
+ 'protocol' => ['description' => 'The service protocol. Valid values:'."\n"
+ .'- TCP.'."\n"
+ .'- HTTP.'."\n"
+ .'- DUBBO.', 'type' => 'string', 'required' => false, 'example' => 'HTTP,HTTPS', 'title' => ''],
+ 'exposedUriPath' => ['description' => 'The exposed URI path.', 'type' => 'string', 'required' => false, 'example' => '/v1/chat/completions', 'title' => ''],
+ 'mcpStatisticsEnable' => ['description' => 'Specifies whether to enable MCP observability. Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'policyConfigs' => [
+ 'description' => 'The policy type.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The policy type.', '$ref' => '#/components/schemas/HttpApiPolicyConfigs', 'required' => false, 'title' => '', 'example' => ''],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
+ 'title' => '',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request',
- 'type' => 'string',
- 'example' => '464F9EA0-1052-51BD-8187-D292AA2D8D24',
- ],
- 'code' => [
- 'description' => 'code',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'message' => [
- 'description' => 'message',
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '3ACFC7A7-45A9-58CF-B2D5-765B60254695'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'object',
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'mcpServerId' => [
- 'description' => 'MCP Server ID',
- 'type' => 'string',
- 'example' => 'mcp-afegaijoijaoji24a',
- ],
- 'name' => [
- 'description' => 'MCP server name',
- 'type' => 'string',
- 'example' => 'test-mcp',
- ],
+ 'routeId' => ['description' => 'The route ID.', 'type' => 'string', 'example' => 'hr-cr82undlhtgrlej***', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'title' => 'Create an HTTP API route',
+ 'summary' => 'Creates a route for an HTTP API.',
+ 'changeSet' => [
+ ['createdAt' => '2026-01-30T06:03:43.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-07-24T12:32:03.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-05-29T15:50:58.000Z', 'description' => 'Request parameters changed'],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"464F9EA0-1052-51BD-8187-D292AA2D8D24\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"mcpServerId\\": \\"mcp-afegaijoijaoji24a\\",\\n \\"name\\": \\"test-mcp\\"\\n }\\n}","type":"json"}]',
- 'title' => 'CreateMcpServer',
- ],
- 'UpdateMcpServer' => [
- 'summary' => 'Updates an MCP server.',
- 'path' => '/v1/mcp-servers/{mcpServerId}',
- 'methods' => [
- 'put',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateHttpApiRoute'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreateHttpApiRoute',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3ACFC7A7-45A9-58CF-B2D5-765B60254695\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"routeId\\": \\"hr-cr82undlhtgrlej***\\"\\n }\\n}","type":"json"}]',
+ ],
+ 'CreateMcpServer' => [
+ 'summary' => 'Creates a Model Context Protocol (MCP) server.',
+ 'path' => '/v1/mcp-servers',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '281124',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayMD7H1W',
- ],
+ 'abilityTreeCode' => '281123',
+ 'abilityTreeNodes' => ['FEATUREapigatewayMD7H1W'],
],
'parameters' => [
[
@@ -10919,1234 +6062,761 @@
'in' => 'body',
'style' => 'json',
'schema' => [
- 'description' => 'The request body.'."\n",
+ 'description' => 'The request parameters.',
'type' => 'object',
'properties' => [
- 'description' => [
- 'description' => 'The description.'."\n",
+ 'gatewayId' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => true, 'example' => 'gw-cq7l5s5lhtgi6qac0', 'title' => ''],
+ 'name' => ['description' => 'The MCP server name. The name must match the regular expression ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$ and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => true, 'example' => 'fetch-time', 'title' => ''],
+ 'description' => ['description' => 'The description of the MCP server.', 'type' => 'string', 'required' => false, 'example' => 'mcp tool fetch time', 'title' => ''],
+ 'type' => [
+ 'description' => 'The type. Valid values:'."\n"
+ ."\n"
+ .'- RealMCP: standard MCP service',
+ 'enumValueTitles' => ['AssemblyMCP' => 'Assembly MCP service. Assembles tools from multiple MCP servers into a single MCP server.', 'RealMCP' => 'Standard MCP service. Directly proxies an existing MCP server.'],
'type' => 'string',
- 'required' => false,
- 'example' => 'Updated MCP server description',
+ 'required' => true,
+ 'enum' => ['RealMCP', 'AssemblyMCP'],
+ 'example' => 'RealMCP',
+ 'title' => '',
],
'domainIds' => [
- 'description' => 'The domain IDs.',
+ 'description' => 'The domain name IDs.',
'type' => 'array',
- 'items' => [
- 'description' => 'The domain ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'd-cr62ts5lhtgln***',
- ],
+ 'items' => ['description' => 'The domain name IDs.', 'type' => 'string', 'required' => false, 'example' => 'd-cr62ts5lhtglnu***', 'title' => ''],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
- 'match' => [
- 'description' => 'The route match rule.'."\n",
- 'required' => false,
- '$ref' => '#/components/schemas/HttpRouteMatch',
- ],
+ 'match' => ['description' => 'The route match rule.', '$ref' => '#/components/schemas/HttpRouteMatch', 'required' => false, 'title' => '', 'example' => ''],
'backendConfig' => [
- 'description' => 'The backend service configurations for the route.'."\n",
+ 'description' => 'The backend service configuration of the route.',
'type' => 'object',
'properties' => [
- 'scene' => [
- 'description' => 'The backend service scenario.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'SingleService',
- ],
+ 'scene' => ['description' => 'The backend service scenario.', 'type' => 'string', 'required' => false, 'example' => 'SingleService', 'title' => ''],
'services' => [
'description' => 'The backend services.',
'type' => 'array',
'items' => [
- 'description' => 'The backend service.'."\n",
+ 'description' => 'The backend services.',
'type' => 'object',
'properties' => [
- 'protocol' => [
- 'description' => 'The service protocol. Valid values:'."\n"
- ."\n"
- .'* TCP'."\n"
- .'* HTTP'."\n"
- .'* DUBBO'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'HTTP',
- ],
- 'port' => [
- 'description' => 'The service port (omit for dynamic ports).'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '8080',
- ],
- 'weight' => [
- 'description' => 'The traffic weight percentage.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '49',
- ],
- 'serviceId' => [
- 'description' => 'The service ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'svc-cr6pk4tlhtgm58e***',
- ],
- 'version' => [
- 'description' => 'The service version.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'v1',
- ],
+ 'protocol' => ['description' => 'The service protocol. Valid values:'."\n"
+ .'- HTTP'."\n"
+ .'- HTTPS', 'type' => 'string', 'required' => false, 'example' => 'HTTP', 'title' => ''],
+ 'port' => ['description' => 'The backend node port of the service.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '8080', 'title' => ''],
+ 'weight' => ['description' => 'The weight.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '49', 'title' => ''],
+ 'serviceId' => ['description' => 'The service ID.', 'type' => 'string', 'required' => false, 'example' => 'svc-crbgq0dlhtgr***', 'title' => ''],
+ 'version' => ['description' => 'The service version.', 'type' => 'string', 'required' => false, 'example' => '2.1.6', 'title' => ''],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
- 'exposedUriPath' => [
- 'description' => 'The exposed URI path. This parameter is required when the protocol parameter is set to SSE or StreamableHTTP and the type parameter is set to RealMCP.'."\n",
+ 'protocol' => [
+ 'description' => 'The protocol type. Valid values: HTTP, HTTPS, SSE, and StreamableHTTP.',
+ 'enumValueTitles' => ['SSE' => 'Server-Sent Events (SSE), a server-push streaming protocol.', 'HTTPS' => 'HTTPS protocol.', 'StreamableHTTP' => 'Streamable HTTP protocol.', 'HTTP' => 'HTTP protocol.'],
'type' => 'string',
'required' => false,
- 'example' => '/sse',
+ 'example' => 'HTTP',
+ 'title' => '',
],
+ 'exposedUriPath' => ['description' => 'The exposed URI path. This parameter is required when protocol is set to SSE or StreamableHTTP and type is set to RealMCP.', 'type' => 'string', 'required' => false, 'example' => '/sse', 'title' => ''],
'assembledSources' => [
- 'description' => 'The list of assembly sources. This parameter is required when the type parameter is set to AssemblyMCP.'."\n",
+ 'description' => 'The list of assembly sources. This parameter is required when type is set to AssemblyMCP.',
'type' => 'array',
'items' => [
- 'description' => 'The assembly source. This parameter is required when the type parameter is set to AssemblyMCP.'."\n",
+ 'description' => 'The parameters.',
'type' => 'object',
'properties' => [
- 'mcpServerName' => [
- 'description' => 'The name of the MCP server.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test-mcp',
- ],
- 'mcpServerId' => [
- 'description' => 'The MCP server ID.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'mcp-afaefaefaf',
- ],
+ 'mcpServerName' => ['description' => 'The MCP server name.', 'type' => 'string', 'required' => false, 'example' => 'test-mcp', 'title' => ''],
+ 'mcpServerId' => ['description' => 'MCP Server ID', 'type' => 'string', 'required' => false, 'example' => 'mcp-sdfa3qgavz', 'title' => ''],
'tools' => [
- 'description' => 'The MCP tools.'."\n",
+ 'description' => 'The list of MCP tools.',
'type' => 'array',
- 'items' => [
- 'description' => 'The MCP tool.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'tool-1',
- ],
+ 'items' => ['description' => 'The MCP tool information.', 'type' => 'string', 'required' => false, 'example' => 'tool1', 'title' => ''],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
- 'mcpStatisticsEnable' => [
- 'description' => 'Specifies if MCP observability is enabled. Default value: false.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
- 'type' => [
- 'description' => 'The MCP server type. Valid values: RealMCP and AssemblyMCP.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'RealMCP',
- 'enum' => [
- 'RealMCP',
- 'AssemblyMCP',
- ],
- ],
- 'protocol' => [
- 'description' => 'The service protocol. Valid values: HTTP, HTTPS, SSE, and StreamableHTTP.',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'HTTP',
- 'enum' => [
- 'HTTP',
- 'HTTPS',
- 'SSE',
- 'StreamableHTTP',
- ],
- ],
+ 'mcpStatisticsEnable' => ['description' => 'Specifies whether to enable MCP observability. Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
'createFromType' => [
- 'description' => 'Specifies the type of source for MCP server creation.',
+ 'description' => 'The creation source type. Valid values:'."\n"
+ ."\n"
+ .'- ApiGatewayHttpToMCP: gateway-managed HTTP-to-MCP conversion'."\n"
+ .'- ApiGatewayProxyMcpHosting: gateway-managed direct MCP proxy'."\n"
+ .'- ApiGatewayAssembly: gateway MCP assembly'."\n"
+ .'- NacosHttpToMCP: gateway-managed Nacos-synced HTTP-to-MCP conversion'."\n"
+ .'- NacosMcpHosting: gateway-managed Nacos-synced direct MCP proxy',
+ 'enumValueTitles' => ['ApiGatewayHttpToMCP' => 'Gateway-managed HTTP-to-MCP conversion.', 'ApiGatewayProxyMcpHosting' => 'Gateway-managed direct MCP proxy.', 'ApiGatewayAssembly' => 'Gateway MCP assembly.', 'NacosHttpToMCP' => 'Gateway-managed Nacos-synced HTTP-to-MCP conversion.', 'NacosMcpHosting' => 'Gateway-managed Nacos-synced direct MCP proxy.'],
'type' => 'string',
'required' => false,
- 'enumValueTitles' => [
- 'ApiGatewayHttpToMCP' => 'ApiGatewayHttpToMCP',
- 'ApiGatewayMcpHosting' => 'ApiGatewayMcpHosting',
- 'ApiGatewayProxyMcpHosting' => 'ApiGatewayProxyMcpHosting',
- 'ApiGatewayAssembly' => 'ApiGatewayAssembly',
- 'NacosHttpToMCP' => 'NacosHttpToMCP',
- 'NacosMcpHosting' => 'NacosMcpHosting',
- ],
'example' => 'ApiGatewayMcpHosting',
+ 'title' => '',
],
'grayMcpServerConfigs' => [
- 'description' => 'The gray MCP server configurations',
+ 'description' => 'The canary release routing configurations.',
'type' => 'array',
'items' => [
- 'description' => 'object',
+ 'description' => 'The parameters.',
'type' => 'object',
'properties' => [
- 'routeId' => [
- 'description' => 'The route ID',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'route-123',
- ],
- 'match' => [
- 'description' => 'The route match rules',
- 'required' => false,
- '$ref' => '#/components/schemas/HttpRouteMatch',
- ],
+ 'routeId' => ['description' => 'The route ID.', 'type' => 'string', 'required' => false, 'example' => 'gray-route-123', 'title' => ''],
+ 'match' => ['description' => 'The route match rule.', '$ref' => '#/components/schemas/HttpRouteMatch', 'required' => false, 'title' => '', 'example' => ''],
'backendConfig' => [
- 'description' => 'The backend configuration',
+ 'description' => 'The backend configuration.',
'type' => 'object',
'properties' => [
'scene' => [
- 'description' => 'The backend scene',
+ 'description' => 'The backend scenario.',
+ 'enumValueTitles' => ['SingleService' => 'Single backend service.'],
'type' => 'string',
'required' => false,
'example' => 'SingleService',
+ 'title' => '',
],
'services' => [
- 'description' => 'The list of backend services',
+ 'description' => 'The backend services.',
'type' => 'array',
'items' => [
- 'description' => 'object',
+ 'description' => 'The parameters.',
'type' => 'object',
'properties' => [
- 'protocol' => [
- 'description' => 'The service protocol',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'HTTP',
- ],
- 'port' => [
- 'description' => 'The service port',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '8080',
- ],
- 'weight' => [
- 'description' => 'The service weight',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '100',
- ],
- 'serviceId' => [
- 'description' => 'The service ID',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gray-svc-123',
- ],
- 'version' => [
- 'description' => 'The service version',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'v1',
- ],
+ 'protocol' => ['description' => 'The service protocol.', 'type' => 'string', 'required' => false, 'example' => 'HTTP', 'title' => ''],
+ 'port' => ['description' => 'The service port.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '8080', 'title' => ''],
+ 'weight' => ['description' => 'The service weight.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100', 'title' => ''],
+ 'serviceId' => ['description' => 'The service ID.', 'type' => 'string', 'required' => false, 'example' => 'svc-gray', 'title' => ''],
+ 'version' => ['description' => 'The service version.', 'type' => 'string', 'required' => false, 'example' => 'v2.0.0', 'title' => ''],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
'mcpServerConfig' => [
- 'description' => 'The MCP server configuration',
+ 'description' => 'The HTTP-to-MCP configuration.',
'type' => 'object',
'properties' => [
- 'swaggerConfig' => [
- 'description' => 'The raw swagger/openapi document',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'swagger-content',
- ],
- 'mcpServerSpec' => [
- 'description' => 'The converted mcp server spec yaml',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'mcp-server-spec-yaml',
- ],
+ 'swaggerConfig' => ['description' => 'The Swagger document for HTTP-to-MCP conversion. The document must comply with the OpenAPI 3.0 specification.', 'type' => 'string', 'required' => false, 'example' => 'swagger.yaml', 'title' => ''],
+ 'mcpServerSpec' => ['description' => 'The MCP server spec configuration. This parameter is mutually exclusive with swaggerConfig.', 'type' => 'string', 'required' => false, 'example' => 'mcp-spec.yaml', 'title' => ''],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
'required' => false,
- ],
- ],
- [
- 'name' => 'mcpServerId',
- 'in' => 'path',
- 'schema' => [
- 'description' => 'The MCP server ID.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'mcp-adfefz24afg',
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => '3ACFC7A7-45A9-58CF-B2D5-765B60254695',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '464F9EA0-1052-51BD-8187-D292AA2D8D24'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'mcpServerId' => ['description' => 'MCP Server ID', 'type' => 'string', 'example' => 'mcp-afegaijoijaoji24a', 'title' => ''],
+ 'name' => ['description' => 'The MCP server name.', 'type' => 'string', 'example' => 'test-mcp', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"464F9EA0-1052-51BD-8187-D292AA2D8D24\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"mcpServerId\\": \\"mcp-afegaijoijaoji24a\\",\\n \\"name\\": \\"test-mcp\\"\\n }\\n}","type":"json"}]',
+ 'title' => 'Create MCP server',
+ 'changeSet' => [
+ ['createdAt' => '2026-01-22T15:19:56.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-12-05T07:15:33.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-11-06T12:37:07.000Z', 'description' => 'Request parameters changed'],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3ACFC7A7-45A9-58CF-B2D5-765B60254695\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'UpdateMcpServer',
- 'description' => 'You can only update the listening Ingress configuration for sources of the **ACK** type.'."\n",
- ],
- 'GetMcpServer' => [
- 'summary' => 'Queries the detailed information of an MCP server.',
- 'path' => '/v1/mcp-servers/{mcpServerId}',
- 'methods' => [
- 'get',
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreateMcpServer',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'CreatePluginAttachment' => [
+ 'path' => '/v1/plugin-attachments',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'read',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '281126',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayMD7H1W',
- ],
+ 'abilityTreeCode' => '231606',
+ 'abilityTreeNodes' => ['FEATUREapigatewayIRO3QE'],
],
'parameters' => [
[
- 'name' => 'mcpServerId',
- 'in' => 'path',
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'description' => 'The MCP server ID.',
- 'type' => 'string',
+ 'description' => 'The request body.',
+ 'type' => 'object',
+ 'properties' => [
+ 'pluginId' => ['description' => 'The plug-in ID.', 'type' => 'string', 'required' => false, 'example' => 'pl-cvo8udem1hkob1qd67i0', 'title' => ''],
+ 'pluginConfig' => ['description' => 'The Base64-encoded content of the original plug-in configuration.', 'type' => 'string', 'required' => false, 'example' => 'cHJlcGVuZDoKLSByb2xlOiBzeXN0ZW0KICBjb250ZW50OiDor7fkvb/nlKjoi7Hor63lm57nrZTpl67popgKYXBwZW5kOgotIHJvbGU6IHVzZXIKICBjb250ZW50OiDmr4/mrKHlm57nrZTlrozpl67popjvvIzlsJ3or5Xov5vooYzlj43pl64K', 'title' => ''],
+ 'attachResourceIds' => [
+ 'description' => 'The list of mount point IDs.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The mount point ID.', 'type' => 'string', 'required' => false, 'example' => 'api-xafjieoafpjb', 'title' => ''],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'attachResourceType' => ['description' => 'The resource type to which the plug-in is mounted. Valid values: GatewayRoute, Gateway, GatewayDomain, HttpApi, and Operation.', 'type' => 'string', 'required' => false, 'example' => 'HttpApi', 'title' => ''],
+ 'environmentId' => ['description' => 'The environment ID.', 'type' => 'string', 'required' => false, 'example' => 'env-xxx', 'title' => ''],
+ 'gatewayId' => ['description' => 'The gateway instance ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-cq7l5s5lhtg***', 'title' => ''],
+ 'enable' => ['description' => 'Specifies whether to enable the plug-in. Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
+ ],
'required' => false,
- 'example' => 'mcp-adfefz24afg',
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => '2A6E90D5-A711-54F4-A489-E33C2021EDDF',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.'."\n",
- 'type' => 'string',
- 'example' => 'Success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'EBCB8485-24F9-54CD-B258-CB15FDB27677'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'The response payload.'."\n",
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'mcpServerId' => [
- 'description' => 'The ID of the MCP server.',
- 'type' => 'string',
- 'example' => 'mcp-adfefz24afg',
- ],
- 'name' => [
- 'description' => 'The name of the MCP server.'."\n",
- 'type' => 'string',
- 'example' => 'test-mcp',
- ],
- 'type' => [
- 'description' => 'The type of the MCP server.'."\n",
- 'type' => 'string',
- 'example' => 'RealMCP',
- ],
- 'description' => [
- 'description' => 'The description.'."\n",
- 'type' => 'string',
- 'example' => 'A sample MCP server',
- ],
- 'gatewayId' => [
- 'description' => 'The gateway instance ID.'."\n",
- 'type' => 'string',
- 'example' => 'gw-cq2vundlhtg***',
- ],
- 'environmentId' => [
- 'description' => 'The environment ID.'."\n",
- 'type' => 'string',
- 'example' => 'env-cq7l5s5lhtgi6qasrdc0'."\n",
- ],
- 'routeId' => [
- 'description' => 'The route ID.'."\n",
- 'type' => 'string',
- 'example' => 'hr-cr82undlhtgrlej***',
- ],
- 'createFromType' => [
- 'description' => 'Indicates the type of source for MCP server creation. Valid values: '."\n"
- ."\n"
- .'ApiGatewayHttpToMCP '."\n"
- .'ApiGatewayMcpHosting '."\n"
- .'ApiGatewayAssembly '."\n"
- .'NacosHttpToMCP '."\n"
- .'NacosMcpHosting',
- 'type' => 'string',
- 'example' => 'ApiGatewayHttpToMCP',
- ],
- 'backend' => [
- 'description' => 'The backend service of the route.'."\n",
- '$ref' => '#/components/schemas/Backend',
- ],
- 'match' => [
- 'description' => 'The route match rule.'."\n",
- 'example' => '{\\"product_code\\":\\"apigw\\"}',
- '$ref' => '#/components/schemas/HttpRouteMatch',
- ],
- 'domainIds' => [
- 'description' => 'The domain name IDs.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The domain name ID.'."\n",
- 'type' => 'string',
- 'example' => 'd-aafefqefz',
- ],
- ],
- 'domainInfos' => [
- 'description' => 'The list of domain information.'."\n",
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'protocol' => [
- 'description' => 'The protocol. Valid values: HTTP and HTTPS.',
- 'type' => 'string',
- 'example' => 'HTTP',
- ],
- 'name' => [
- 'description' => 'The domain name.'."\n",
- 'type' => 'string',
- 'example' => 'verifyicket',
- ],
- 'domainId' => [
- 'description' => 'The domain name ID.'."\n",
- 'type' => 'string',
- 'example' => 'www.abc.com',
- ],
- ],
- 'description' => 'object',
- ],
- ],
- 'protocol' => [
- 'description' => 'The service protocol.'."\n",
- 'type' => 'string',
- 'example' => 'HTTP',
- ],
- 'mcpServerPath' => [
- 'description' => 'The MCP server access path provided by the gateway.'."\n",
- 'type' => 'string',
- 'example' => '/mcp-servers/test-mcp',
- ],
- 'exposedUriPath' => [
- 'description' => 'The exposed URI path. This parameter is required when the protocol parameter is set to SSE or StreamableHTTP, and the type parameter is set to RealMCP.'."\n",
- 'type' => 'string',
- 'example' => '/sse',
- ],
- 'nacosMcpSyncInfo' => [
- 'description' => 'The MCP information managed and synchronized by Nacos.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'importInstanceId' => [
- 'description' => 'The Nacos instance.'."\n",
- 'type' => 'string',
- 'example' => 'mse-xxxxx',
- ],
- 'importNamespace' => [
- 'description' => 'The Nacos namespace.'."\n",
- 'type' => 'string',
- 'example' => 'test-ns',
- ],
- 'importMcpServerId' => [
- 'description' => 'The synchronized MCP server ID.'."\n",
- 'type' => 'string',
- 'example' => 'test-mcp',
- ],
- ],
- ],
- 'assembledSources' => [
- 'description' => 'The list of assembly sources. This parameter is required when the type parameter is set to AssemblyMCP.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The assembly source. This parameter is required when the type parameter is set to AssemblyMCP.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'mcpServerName' => [
- 'description' => 'The name of the MCP server.'."\n",
- 'type' => 'string',
- 'example' => 'test-mcp',
- ],
- 'mcpServerId' => [
- 'description' => 'The ID of the MCP server.',
- 'type' => 'string',
- 'example' => 'mcp-xdafeafzz',
- ],
- 'tools' => [
- 'description' => 'The list of the MCP tools.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The MCP tool.'."\n",
- 'type' => 'string',
- 'example' => 'test-tool',
- ],
- ],
- ],
- ],
- ],
- 'mcpServerConfig' => [
- 'description' => 'The HTTP-to-MCP configurations.'."\n",
- 'type' => 'string',
- 'example' => 'config-yaml-content',
- ],
- 'mcpServerConfigPluginAttachmentId' => [
- 'description' => 'The attachment ID for the MCP server plug-in configuration.'."\n",
- 'type' => 'string',
- 'example' => 'pa-adfaefwaef',
- ],
- 'deployStatus' => [
- 'description' => 'The publishing status of the API in the current environment.'."\n",
- 'type' => 'string',
- 'example' => 'Deployed',
- ],
- 'mcpStatisticsEnable' => [
- 'description' => 'Indicates whether MCP observability is enabled. Default value: false.',
- 'type' => 'boolean',
- 'example' => 'false',
- ],
- 'grayMcpServerConfigs' => [
- 'description' => 'List of gray MCP server configurations',
- 'type' => 'array',
- 'items' => [
- 'description' => 'object',
- 'type' => 'object',
- 'properties' => [
- 'routeId' => [
- 'description' => 'The gray route ID',
- 'type' => 'string',
- 'example' => 'gray-route-xxx',
- ],
- 'match' => [
- 'description' => 'The gray route matching rules',
- '$ref' => '#/components/schemas/HttpRouteMatch',
- ],
- 'backendConfig' => [
- 'description' => 'The gray route backend configuration',
- 'type' => 'object',
- 'properties' => [
- 'scene' => [
- 'description' => 'The backend scene type',
- 'type' => 'string',
- 'example' => 'SingleService',
- ],
- 'services' => [
- 'description' => 'List of backend services',
- 'type' => 'array',
- 'items' => [
- 'description' => 'object',
- 'type' => 'object',
- 'properties' => [
- 'protocol' => [
- 'description' => 'The service protocol',
- 'type' => 'string',
- 'example' => 'HTTP',
- ],
- 'port' => [
- 'description' => 'The service port',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '8080',
- ],
- 'weight' => [
- 'description' => 'The service weight',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '100',
- ],
- 'serviceId' => [
- 'description' => 'The gray service ID',
- 'type' => 'string',
- 'example' => 'svc-xxx',
- ],
- 'version' => [
- 'description' => 'The service version',
- 'type' => 'string',
- 'example' => 'v2.0.0',
- ],
- ],
- ],
- ],
- ],
- ],
- ],
- ],
- ],
+ 'pluginAttachmentId' => ['description' => 'The plug-in mount ID.', 'type' => 'string', 'example' => 'pa-cvs7jpmm1hkgihaqv4a0', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"2A6E90D5-A711-54F4-A489-E33C2021EDDF\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"Success\\",\\n \\"data\\": {\\n \\"mcpServerId\\": \\"mcp-adfefz24afg\\",\\n \\"name\\": \\"test-mcp\\",\\n \\"type\\": \\"RealMCP\\",\\n \\"description\\": \\"测试专用MCP Server\\",\\n \\"gatewayId\\": \\"gw-cq2vundlhtg***\\",\\n \\"environmentId\\": \\"env-cq7l5s5lhtgi6qasrdc0\\\\n\\",\\n \\"routeId\\": \\"hr-cr82undlhtgrlej***\\",\\n \\"createFromType\\": \\"ApiGatewayHttpToMCP\\",\\n \\"backend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"match\\": {\\n \\"ignoreUriCase\\": true,\\n \\"path\\": {\\n \\"type\\": \\"Prefix\\",\\n \\"value\\": \\"/user\\"\\n },\\n \\"headers\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"dev\\",\\n \\"value\\": \\"true\\"\\n }\\n ],\\n \\"methods\\": [\\n \\"GET\\"\\n ],\\n \\"queryParams\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"age\\",\\n \\"value\\": \\"17\\"\\n }\\n ]\\n },\\n \\"domainIds\\": [\\n \\"d-aafefqefz\\"\\n ],\\n \\"domainInfos\\": [\\n {\\n \\"protocol\\": \\"HTTP,HTTPS\\",\\n \\"name\\": \\"verifyicket\\",\\n \\"domainId\\": \\"www.abc.com\\"\\n }\\n ],\\n \\"protocol\\": \\"HTTP\\",\\n \\"mcpServerPath\\": \\"/mcp-servers/test-mcp\\",\\n \\"exposedUriPath\\": \\"/sse\\",\\n \\"nacosMcpSyncInfo\\": {\\n \\"importInstanceId\\": \\"mse-xxxxx\\",\\n \\"importNamespace\\": \\"test-ns\\",\\n \\"importMcpServerId\\": \\"test-mcp\\"\\n },\\n \\"assembledSources\\": [\\n {\\n \\"mcpServerName\\": \\"test-mcp\\",\\n \\"mcpServerId\\": \\"mcp-xdafeafzz\\",\\n \\"tools\\": [\\n \\"test-tool\\"\\n ]\\n }\\n ],\\n \\"mcpServerConfig\\": \\"MCP Server配置 base64\\",\\n \\"mcpServerConfigPluginAttachmentId\\": \\"pa-adfaefwaef\\",\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"mcpStatisticsEnable\\": false,\\n \\"grayMcpServerConfigs\\": [\\n {\\n \\"routeId\\": \\"gray-route-xxx\\",\\n \\"match\\": {\\n \\"ignoreUriCase\\": true,\\n \\"path\\": {\\n \\"type\\": \\"Prefix\\",\\n \\"value\\": \\"/user\\"\\n },\\n \\"headers\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"dev\\",\\n \\"value\\": \\"true\\"\\n }\\n ],\\n \\"methods\\": [\\n \\"GET\\"\\n ],\\n \\"queryParams\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"age\\",\\n \\"value\\": \\"17\\"\\n }\\n ]\\n },\\n \\"backendConfig\\": {\\n \\"scene\\": \\"SingleService\\",\\n \\"services\\": [\\n {\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 8080,\\n \\"weight\\": 100,\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"version\\": \\"v2.0.0\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'GetMcpServer',
- 'description' => 'You can call this operation to create multiple services at a time.'."\n",
- ],
- 'ListMcpServers' => [
- 'summary' => 'Retrieves a list of MCP servers.',
- 'path' => '/v1/mcp-servers',
- 'methods' => [
- 'get',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Mount a plug-in',
+ 'summary' => 'Mounts a plug-in.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreatePluginAttachment'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreatePluginAttachment',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"EBCB8485-24F9-54CD-B258-CB15FDB27677\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pluginAttachmentId\\": \\"pa-cvs7jpmm1hkgihaqv4a0\\"\\n }\\n}","type":"json"}]',
+ ],
+ 'CreatePluginClass' => [
+ 'summary' => 'Creates a custom plugin class.',
+ 'path' => '/v1/plugin-classes',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'read',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '281128',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayMD7H1W',
- ],
+ 'abilityTreeNodes' => ['FEATUREapigateway2AMEZG'],
],
'parameters' => [
[
- 'name' => 'gatewayId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The gateway instance ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'gw-co370icmjeu****',
- ],
- ],
- [
- 'name' => 'nameLike',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The name to perform a fuzzy search on the MCP server.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test',
- ],
- ],
- [
- 'name' => 'type',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The type of the MCP server.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'RealMCP',
- ],
- ],
- [
- 'name' => 'pageNumber',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The page number to return. Pages start from 1. Default value: 1.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => true,
- 'example' => '1',
- ],
- ],
- [
- 'name' => 'pageSize',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries per page. Default value: 10.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => true,
- 'example' => '10',
- ],
- ],
- [
- 'name' => 'createFromTypes',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The type of source to create from.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'ApiGatewayHttpToMCP',
- ],
- ],
- [
- 'name' => 'deployStatuses',
- 'in' => 'query',
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'description' => 'The deployment status of the MCP server.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'Deployed',
+ 'description' => 'The request parameters.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The name of the plugin class.', 'type' => 'string', 'required' => true, 'example' => 'my-wasm-plugin', 'title' => ''],
+ 'alias' => ['description' => 'The alias of the plugin.', 'type' => 'string', 'required' => false, 'example' => 'My Wasm Plugin', 'title' => ''],
+ 'description' => ['description' => 'The description of the plugin.', 'type' => 'string', 'required' => true, 'example' => 'Custom authentication plugin for validating tokens in request headers', 'title' => ''],
+ 'version' => ['description' => 'The version number of the plugin.', 'type' => 'string', 'required' => true, 'example' => '1.0.0', 'title' => ''],
+ 'versionDescription' => ['description' => 'The description of the current version.', 'type' => 'string', 'required' => true, 'example' => 'Initial version with basic token validation', 'title' => ''],
+ 'executeStage' => ['description' => 'The execution stage of the plugin.', 'type' => 'string', 'required' => true, 'example' => 'AUTHN', 'title' => ''],
+ 'executePriority' => ['description' => 'The execution priority of the plugin.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100', 'title' => ''],
+ 'wasmLanguage' => ['description' => 'The programming language used to develop the WASM plugin.', 'type' => 'string', 'required' => true, 'example' => 'Rust', 'title' => ''],
+ 'wasmUrl' => ['description' => 'The download URL of the WASM plugin binary file.', 'type' => 'string', 'required' => true, 'example' => 'https://example.com/plugins/my-plugin.wasm', 'title' => ''],
+ 'supportedMinGatewayVersion' => ['description' => 'The minimum gateway version that the plugin is compatible with.', 'type' => 'string', 'required' => false, 'example' => '2.0.0', 'title' => ''],
+ ],
+ 'required' => false,
+ 'example' => '{\'key\': \'value\'}',
+ 'title' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => '585657D2-1C20-5B8A-AF17-D727C6490BE4',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '880F8DC9-1CD9-5A83-AA54-AD2D3B7D2466'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'The response payload.'."\n",
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'pageNumber' => [
- 'description' => 'The page number.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'pageSize' => [
- 'description' => 'The page size.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
- 'totalSize' => [
- 'description' => 'The total number of entries returned.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '25',
- ],
- 'items' => [
- 'description' => 'The list of MCP servers.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The MCP server information.',
- 'type' => 'object',
- 'properties' => [
- 'mcpServerPath' => [
- 'description' => 'The MCP server access path provided by the gateway.'."\n",
- 'type' => 'string',
- 'example' => '/mcp-servers/test-mcp',
- ],
- 'mcpServerConfig' => [
- 'description' => 'The HTTP-to-MCP configurations.'."\n",
- 'type' => 'string',
- 'example' => 'mcp spec content',
- ],
- 'match' => [
- 'description' => 'The route match rule.'."\n",
- '$ref' => '#/components/schemas/HttpRouteMatch',
- ],
- 'description' => [
- 'description' => 'The description.'."\n",
- 'type' => 'string',
- 'example' => 'My MCP Server',
- ],
- 'type' => [
- 'description' => 'The type of the MCP server. Valid values: RealMCP and AssemblyMCP.',
- 'type' => 'string',
- 'example' => 'RealMCP',
- ],
- 'createFromType' => [
- 'description' => 'The type of source for MCP server creation. Valid values: '."\n"
- ."\n"
- .'ApiGatewayHttpToMCP '."\n"
- .'ApiGatewayMcpHosting '."\n"
- .'ApiGatewayAssembly '."\n"
- .'NacosHttpToMCP '."\n"
- .'NacosMcpHosting',
- 'type' => 'string',
- 'example' => 'ApiGatewayHttpToMCP',
- ],
- 'domainIds' => [
- 'description' => 'The domain name IDs.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The domain name ID.'."\n",
- 'type' => 'string',
- 'example' => 'd-faefqfargz',
- ],
- ],
- 'protocol' => [
- 'description' => 'The service protocol.'."\n",
- 'type' => 'string',
- 'example' => 'HTTP',
- ],
- 'environmentId' => [
- 'description' => 'The environment ID.'."\n",
- 'type' => 'string',
- 'example' => 'env-cq7l5s5lhtgi6qasrdc0',
- ],
- 'routeId' => [
- 'description' => 'The ID of the MCP server associated route.'."\n",
- 'type' => 'string',
- 'example' => 'hr-d11cj86m1hkvop6mp42g',
- ],
- 'mcpStatisticsEnable' => [
- 'description' => 'Indicates whether MCP observability is enabled. Default value: false.',
- 'type' => 'boolean',
- 'example' => 'false',
- ],
- 'name' => [
- 'description' => 'The name of the MCP server.'."\n",
- 'type' => 'string',
- 'example' => 'itemcenter-dev-cluster',
- ],
- 'exposedUriPath' => [
- 'description' => 'The exposed URI path. This parameter is required when the protocol parameter is set to SSE or StreamableHTTP, and the type parameter is set to RealMCP.'."\n",
- 'type' => 'string',
- 'example' => '/sse',
- ],
- 'assembledSources' => [
- 'description' => 'The list of assembly sources. This parameter is required when the type parameter is set to AssemblyMCP.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The assembly source. This parameter is required when the type parameter is set to AssemblyMCP.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'mcpServerName' => [
- 'description' => 'The name of the MCP server.'."\n",
- 'type' => 'string',
- 'example' => 'test-mcp',
- ],
- 'mcpServerId' => [
- 'description' => 'The MCP server ID.',
- 'type' => 'string',
- 'example' => 'mcp-adfef2334fa',
- ],
- 'tools' => [
- 'description' => 'The list of MCP tools.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The MCP tool.'."\n",
- 'type' => 'string',
- 'example' => 'tool-1',
- ],
- ],
- ],
- ],
- ],
- 'backend' => [
- 'description' => 'The backend service of the route.'."\n",
- '$ref' => '#/components/schemas/Backend',
- ],
- 'mcpServerId' => [
- 'description' => 'The MCP server ID.',
- 'type' => 'string',
- 'example' => 'mcp-feaff34va',
- ],
- 'nacosMcpSyncInfo' => [
- 'description' => 'The MCP information synchronized and managed by Nacos.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'importMcpServerId' => [
- 'description' => 'The synchronized MCP server ID.'."\n",
- 'type' => 'string',
- 'example' => 'nacos-mcp-001',
- ],
- 'importNamespace' => [
- 'description' => 'The Nacos namespace.'."\n",
- 'type' => 'string',
- 'example' => 'test-ns',
- ],
- 'importInstanceId' => [
- 'description' => 'The Nacos instance.'."\n",
- 'type' => 'string',
- 'example' => 'mse-faefrefxz',
- ],
- ],
- ],
- 'gatewayId' => [
- 'description' => 'The gateway instance ID.'."\n",
- 'type' => 'string',
- 'example' => 'gw-cpv54p5***',
- ],
- 'domainInfos' => [
- 'description' => 'The list of domain information.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The domain information.'."\n",
- '$ref' => '#/components/schemas/HttpApiDomainInfo',
- ],
- ],
- 'deployStatus' => [
- 'description' => 'The publishing status of the API in the current environment.'."\n",
- 'type' => 'string',
- 'example' => 'Deployed',
- ],
- 'apiId' => [
- 'description' => 'The API ID.',
- 'type' => 'string',
- 'example' => 'api-xxx',
- ],
- ],
- ],
- ],
+ 'pluginClassId' => ['description' => 'The plugin class ID.', 'type' => 'string', 'example' => 'pls-csqmjxxxxxxx', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"880F8DC9-1CD9-5A83-AA54-AD2D3B7D2466\\",\\n \\"code\\": \\"200\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pluginClassId\\": \\"pls-csqmjxxxxxxx\\"\\n }\\n}","type":"json"}]',
+ 'title' => 'Create a custom plugin class',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C6490BE4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 25,\\n \\"items\\": [\\n {\\n \\"mcpServerPath\\": \\"/mcp-servers/test-mcp\\",\\n \\"mcpServerConfig\\": \\"HTTP转MCP Config base64值\\",\\n \\"match\\": {\\n \\"ignoreUriCase\\": true,\\n \\"path\\": {\\n \\"type\\": \\"Prefix\\",\\n \\"value\\": \\"/user\\"\\n },\\n \\"headers\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"dev\\",\\n \\"value\\": \\"true\\"\\n }\\n ],\\n \\"methods\\": [\\n \\"GET\\"\\n ],\\n \\"queryParams\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"age\\",\\n \\"value\\": \\"17\\"\\n }\\n ]\\n },\\n \\"description\\": \\"这是xxx的xx项目测试环境\\",\\n \\"type\\": \\"可选值:RealMCP、AssemblyMCP\\",\\n \\"createFromType\\": \\"ApiGatewayHttpToMCP\\",\\n \\"domainIds\\": [\\n \\"d-faefqfargz\\"\\n ],\\n \\"protocol\\": \\"HTTP\\",\\n \\"environmentId\\": \\"env-cq7l5s5lhtgi6qasrdc0\\",\\n \\"routeId\\": \\"hr-d11cj86m1hkvop6mp42g\\",\\n \\"mcpStatisticsEnable\\": false,\\n \\"name\\": \\"itemcenter-dev-cluster\\",\\n \\"exposedUriPath\\": \\"/sse\\",\\n \\"assembledSources\\": [\\n {\\n \\"mcpServerName\\": \\"test-mcp\\",\\n \\"mcpServerId\\": \\"mcp-adfef2334fa\\",\\n \\"tools\\": [\\n \\"tool-1\\"\\n ]\\n }\\n ],\\n \\"backend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"mcpServerId\\": \\"mcp-feaff34va\\",\\n \\"nacosMcpSyncInfo\\": {\\n \\"importMcpServerId\\": \\"同步的MCP Server ID\\\\n\\\\n\\",\\n \\"importNamespace\\": \\"test-ns\\",\\n \\"importInstanceId\\": \\"mse-faefrefxz\\"\\n },\\n \\"gatewayId\\": \\"gw-cpv54p5***\\",\\n \\"domainInfos\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"apiId\\": \\"api-xxx\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'ListMcpServers',
- 'description' => 'You can call this operation to create multiple services at a time.'."\n",
- ],
- 'DeleteMcpServer' => [
- 'summary' => 'Deletes an MCP server.',
- 'path' => '/v1/mcp-servers/{mcpServerId}',
- 'methods' => [
- 'delete',
- ],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreatePluginClass',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'CreatePolicy' => [
+ 'summary' => 'Creates a policy.',
+ 'path' => '/v2/policies',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'write',
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '281131',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayMD7H1W',
- ],
+ 'abilityTreeCode' => '262548',
+ 'abilityTreeNodes' => ['FEATUREapigatewayOZOKBY'],
+ 'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'mcpServerId',
- 'in' => 'path',
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'description' => 'Deletes an MCP server.',
- 'type' => 'string',
+ 'description' => 'The request body.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['title' => '', 'description' => 'The policy name.', 'type' => 'string', 'required' => true, 'example' => 'test-policy'],
+ 'className' => [
+ 'title' => '',
+ 'description' => 'The policy type. Valid values:'."\n"
+ ."\n"
+ .'- RateLimit: rate limiting. Limits the request rate.'."\n"
+ .'- ConcurrencyLimit: concurrency limiting. Limits the number of concurrent requests.'."\n"
+ .'- CircuitBreaker: circuit breaker. Automatically triggers circuit breaking when backend exceptions occur.'."\n"
+ .'- HttpRewrite: HTTP rewrite. Rewrites the request URL or path.'."\n"
+ .'- HeaderModify: header modification. Adds, removes, or modifies HTTP request headers.'."\n"
+ .'- Cors: Cross-Origin Resource Sharing (CORS). Controls cross-origin requests.'."\n"
+ .'- Authentication: general authentication. A general request authentication policy.'."\n"
+ .'- FlowCopy: traffic mirroring. Copies requests to an additional backend.'."\n"
+ .'- Timeout: timeout. Sets the request timeout period.'."\n"
+ .'- Retry: retry. Automatically retries failed requests.'."\n"
+ .'- IpAccessControl: IP access control. Filters requests based on IP whitelists and blacklists.'."\n"
+ .'- DirectResponse: direct response. Returns a fixed response directly.'."\n"
+ .'- Redirect: redirect. Redirects requests to another address.'."\n"
+ .'- Fallback: fallback. Returns a fallback response when the backend is unavailable.'."\n"
+ .'- ServiceTls: server-side TLS. Configures TLS for backend services.'."\n"
+ .'- ServiceLb: service load balancing. Configures load balancing for backend services.'."\n"
+ .'- ServicePortTls: service port TLS. Configures TLS for backend service ports.'."\n"
+ .'- Waf: Web Application Firewall (WAF). Provides request security protection.'."\n"
+ .'- JWTAuth: JWT authentication. Authenticates requests based on JSON Web Tokens (JWT).'."\n"
+ .'- OIDCAuth: OIDC authentication. Authenticates requests based on the OpenID Connect (OIDC) protocol.'."\n"
+ .'- ExternalZAuth: external authentication. Integrates with an external authentication service.'."\n"
+ .'- AiProxy: AI proxy.'."\n"
+ .'- ModelRouter: model router.'."\n"
+ .'- AiStatistics: AI statistics.'."\n"
+ .'- AiSecurityGuard: AI security guard. Detects the security of AI request and response content.'."\n"
+ .'- AiFallback: AI fallback. Falls back to an alternative model when the AI service is unavailable.'."\n"
+ .'- ModelMapper: model mapper.'."\n"
+ .'- AiTokenRateLimit: AI token rate limiting. Limits the rate based on token consumption.'."\n"
+ .'- AiCache: AI cache. Caches AI response results.'."\n"
+ .'- DynamicRoute: dynamic route.',
+ 'enumValueTitles' => [
+ 'ServicePortTls' => 'Service port TLS. Configures TLS for backend service ports.', 'CircuitBreaker' => 'Circuit breaker. Automatically triggers circuit breaking when backend exceptions occur.', 'IpAccessControl' => 'IP access control. Filters requests based on IP whitelists and blacklists.', 'HeaderModify' => 'Header modification. Adds, removes, or modifies HTTP request headers.', 'ExternalZAuth' => 'External authentication. Integrates with an external authentication service.', 'RateLimit' => 'Rate limiting. Limits the request rate.', 'AiTokenRateLimit' => 'AI token rate limiting. Limits the rate based on token consumption.', 'DirectResponse' => 'Direct response. Returns a fixed response directly.', 'OIDCAuth' => 'OIDC authentication. Authenticates requests based on the OIDC protocol.', 'AiSecurityGuard' => 'AI security guard. Detects the security of AI request and response content.',
+ 'ConcurrencyLimit' => 'Concurrency limiting. Limits the number of concurrent requests.', 'ServiceTls' => 'Server-side TLS. Configures TLS for backend services.', 'AiCache' => 'AI cache. Caches AI response results.', 'Timeout' => 'Timeout. Sets the request timeout period.', 'FlowCopy' => 'Traffic mirroring. Copies requests to an additional backend.', 'Redirect' => 'Redirect. Redirects requests to another address.', 'Cors' => 'Cross-Origin Resource Sharing (CORS). Controls cross-origin requests.', 'JWTAuth' => 'JWT authentication. Authenticates requests based on JSON Web Tokens (JWT).', 'ServiceLb' => 'Service load balancing. Configures load balancing for backend services.', 'Authentication' => 'General authentication. A general request authentication policy.',
+ 'Fallback' => 'Fallback. Returns a fallback response when the backend is unavailable.', 'Retry' => 'Retry. Automatically retries failed requests.', 'AiFallback' => 'AI fallback. Falls back to an alternative model when the AI service is unavailable.', 'Waf' => 'Web Application Firewall (WAF). Provides request security protection.', 'HttpRewrite' => 'HTTP rewrite. Rewrites the request URL or path.',
+ ],
+ 'type' => 'string',
+ 'required' => true,
+ 'enum' => [
+ 'ConcurrencyLimit', 'RateLimit', 'CircuitBreaker', 'IpAccessControl', 'Timeout', 'Retry', 'Cors', 'FlowCopy', 'HeaderModify', 'HttpRewrite', 'Fallback', 'DirectResponse', 'Redirect', 'ServiceTls', 'ServiceLb', 'ServicePortTls', 'JWTAuth', 'OIDCAuth', 'ExternalZAuth', 'Waf',
+ 'Authentication', 'AiFallback', 'AiSecurityGuard', 'AiCache', 'AiTokenRateLimit',
+ ],
+ 'example' => 'Timeout',
+ ],
+ 'config' => ['title' => '', 'description' => 'The policy configuration.', 'type' => 'string', 'required' => true, 'example' => '{"unitNum":1,"timeUnit":"s","enable":true}'],
+ 'description' => ['title' => '', 'description' => 'The description.', 'type' => 'string', 'required' => false, 'example' => '超时策略'],
+ ],
'required' => false,
- 'example' => 'mcp-adfefz24afg',
+ 'example' => '{\'key\': \'value\'}',
+ 'title' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The MCP server ID.',
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The MCP server ID.',
- 'type' => 'string',
- 'example' => '393E2630-DBE7-5221-AB35-9E740675491A',
- ],
- 'code' => [
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status code.',
- 'type' => 'string',
- 'example' => 'Success',
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '393E2630-DBE7-5221-AB35-9E7406754***'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'policyId' => ['title' => '', 'description' => 'The policy ID.', 'type' => 'string', 'example' => 'p-cq7l5s5lhtgi6qasr***'."\n"],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"393E2630-DBE7-5221-AB35-9E740675491A\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"Success\\"\\n}","type":"json"}]',
- 'title' => 'DeleteMcpServer',
- ],
- 'DeployMcpServer' => [
- 'summary' => 'Deploys an MCP server.',
- 'path' => '/v1/mcp-servers/{mcpServerId}/deploy',
- 'methods' => [
- 'post',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"393E2630-DBE7-5221-AB35-9E7406754***\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"policyId\\": \\"p-cq7l5s5lhtgi6qasr***\\\\n\\"\\n }\\n}","type":"json"}]',
+ 'title' => 'Create a policy',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreatePolicy',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'CreatePolicyAttachment' => [
+ 'summary' => 'Creates a policy attachment to a resource.',
+ 'path' => '/v1/policy-attachments',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'write',
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
- 'riskType' => 'none',
+ 'operationType' => 'create',
+ 'riskType' => 'high',
'chargeType' => 'free',
- 'abilityTreeCode' => '281132',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayMD7H1W',
- ],
+ 'abilityTreeCode' => '262555',
+ 'abilityTreeNodes' => ['FEATUREapigatewayOZOKBY'],
],
'parameters' => [
[
- 'name' => 'mcpServerId',
- 'in' => 'path',
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'description' => 'The MCP server ID.',
- 'type' => 'string',
+ 'description' => 'The request body.',
+ 'type' => 'object',
+ 'properties' => [
+ 'policyId' => ['title' => '', 'description' => 'The policy ID.', 'type' => 'string', 'required' => true, 'example' => 'p-cq787etlhtghrptjg***'],
+ 'gatewayId' => ['title' => '', 'description' => 'The gateway instance ID.', 'type' => 'string', 'required' => true, 'example' => 'gw-cq7l5s5lhtgi6qas***'],
+ 'environmentId' => ['title' => '', 'description' => 'The environment ID.', 'type' => 'string', 'required' => true, 'example' => 'env-cquqsollhtgid***'],
+ 'attachResourceId' => ['title' => '', 'description' => 'The ID of the resource to which the policy is attached.', 'type' => 'string', 'required' => true, 'example' => 'api-cu07jj6m1hkokaus***'],
+ 'attachResourceType' => [
+ 'title' => '',
+ 'description' => 'The type of the resource to which the policy is attached. Valid values: HttpApi, GatewayRoute, Operation, GatewayService, GatewayServicePort, Gateway, and Domain.',
+ 'enumValueTitles' => ['ServicePort' => 'Service port. Attaches the policy to a specified port of a service.', 'Gateway' => 'Gateway instance. Attaches the policy to the entire gateway.', 'Service' => 'Service. Attaches the policy to a specified service.', 'GatewayRoute' => 'Gateway route. Attaches the policy to a specified route.', 'HttpApi' => 'HTTP API. Attaches the policy to a specified HTTP API.', 'Operation' => 'Operation. Attaches the policy to a specified API operation.', 'Domain' => 'Domain name. Attaches the policy to a specified domain name.', 'Route' => 'Route. Attaches the policy to a specified route.', 'LLMApi' => 'LLM API. Attaches the policy to a specified large language model API.', 'GatewayService' => 'Gateway service. Attaches the policy to a specified service.'],
+ 'type' => 'string',
+ 'required' => true,
+ 'docRequired' => false,
+ 'enum' => ['Domain', 'Gateway', 'GatewayRoute', 'GatewayService', 'HttpApi', 'Operation', 'Route', 'Service', 'ServicePort', 'LLMApi'],
+ 'example' => 'HttpApi',
+ ],
+ ],
'required' => false,
- 'example' => 'mcp-adfefz24afg',
+ 'example' => '{\'key\': \'value\'}',
+ 'title' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => '393E2630-DBE7-5221-AB35-9E740675491A',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '585657D2-1C20-5B8A-AF17-D727C64***'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'policyAttachmentId' => ['title' => '', 'description' => 'The policy attachment ID.', 'type' => 'string', 'example' => 'pr-cqooju5lhtgquuj6***'],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C64***\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"policyAttachmentId\\": \\"pr-cqooju5lhtgquuj6***\\"\\n }\\n}","type":"json"}]',
+ 'title' => 'Create a policy attachment',
+ 'changeSet' => [
+ ['createdAt' => '2025-06-26T12:05:02.000Z', 'description' => 'Request parameters changed'],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"393E2630-DBE7-5221-AB35-9E740675491A\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'DeployMcpServer',
- ],
- 'UnDeployMcpServer' => [
- 'summary' => 'Undeploys an MCP server.',
- 'path' => '/v1/mcp-servers/{mcpServerId}/undeploy',
- 'methods' => [
- 'post',
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'apig:CreatePolicyAttachment',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'CreateSecret' => [
+ 'summary' => 'Generates a key.',
+ 'path' => '/v1/secrets',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'write',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
+ 'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '281133',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayMD7H1W',
- ],
+ 'abilityTreeCode' => '279325',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
+ 'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'mcpServerId',
- 'in' => 'path',
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'description' => 'The ID of the MCP server.',
- 'type' => 'string',
+ 'description' => 'The request body.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The key name. The name can contain letters, digits, and underscores (_) and can be up to 64 characters in length.', 'type' => 'string', 'required' => false, 'example' => 'my_secret', 'title' => ''],
+ 'description' => ['description' => 'The description of the key.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''],
+ 'kmsConfig' => ['description' => 'The KMS key configuration.', '$ref' => '#/components/schemas/KMSConfig', 'required' => false, 'title' => '', 'example' => ''],
+ 'gatewayType' => ['description' => 'The gateway type.', 'type' => 'string', 'required' => false, 'example' => 'API', 'title' => ''],
+ 'secretSource' => ['description' => 'The source of the key.', 'type' => 'string', 'required' => false, 'example' => 'KMS', 'title' => ''],
+ 'secretData' => ['description' => 'The KMS credential value.', 'type' => 'string', 'required' => false, 'example' => 'apikey-123456xxxxxxxx', 'title' => ''],
+ ],
'required' => false,
- 'example' => 'mcp-adfef2334fa',
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'The response schema.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => 'CE857A85-251D-5018-8103-A38957D71E20',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
+ 'requestId' => ['title' => '', 'description' => 'ID of the request.', 'type' => 'string', 'example' => 'CFF809D7-045D-502F-BF6C-947Exxxxxxxx'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The error details.', 'type' => 'string', 'example' => 'Failed to upload data. Please try again', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'secretId' => ['description' => 'The key ID.', 'type' => 'string', 'example' => 'sec-d5e6shmm1hkoxxxxxxxx', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Generate a key',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CE857A85-251D-5018-8103-A38957D71E20\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'UnDeployMcpServer',
- ],
- 'SyncMCPServers' => [
- 'summary' => 'Synchronizes Nacos Model Context Protocol (MCP) server configurations to Cloud-native API Gateway.',
- 'path' => '/v1/mcp-servers/sync-mcp-server',
- 'methods' => [
- 'post',
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'apig:CreateSecret',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'https',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CFF809D7-045D-502F-BF6C-947Exxxxxxxx\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"Failed to upload data. Please try again\\",\\n \\"data\\": {\\n \\"secretId\\": \\"sec-d5e6shmm1hkoxxxxxxxx\\"\\n }\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
+ ],
+ 'CreateService' => [
+ 'summary' => 'Creates services.',
+ 'path' => '/v1/services',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '281919',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayMD7H1W',
- ],
+ 'abilityTreeCode' => '237749',
+ 'abilityTreeNodes' => ['FEATUREapigatewayVWMWWM'],
],
'parameters' => [
[
@@ -12154,3151 +6824,1519 @@
'in' => 'body',
'style' => 'json',
'schema' => [
- 'description' => 'The request body.'."\n",
+ 'description' => 'The request body.',
'type' => 'object',
'properties' => [
- 'gatewayId' => [
- 'description' => 'The ID of the gateway.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cq7l5s5lhtg***',
- ],
- 'domainIds' => [
- 'description' => 'The domain ID.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The domain ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'd-cr62ts5lhtglnu***',
- ],
- 'required' => false,
- ],
- 'sourceId' => [
- 'description' => 'The source ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'src-d40mff6m1hkpt84vep60',
- ],
- 'namespace' => [
- 'description' => 'The Nacos namespace.'."\n",
+ 'gatewayId' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-cq7l5s5lhtg***', 'title' => ''],
+ 'sourceType' => [
+ 'description' => 'The service source. Valid values:'."\n"
+ .'- MSE_NACOS: a service in MSE Nacos.'."\n"
+ .'- K8S: a service in a Kubernetes cluster of Container Service.'."\n"
+ .'- VIP: a fixed address service.'."\n"
+ .'- DNS: a DNS domain name service.'."\n"
+ .'- FC3: a service in Function Compute.'."\n"
+ .'- SAE_K8S_SERVICE: an SAE Kubernetes service.'."\n"
+ .'- AI: an AI service.'."\n"
+ .'- AGENT: an Agent service.',
+ 'enumValueTitles' => ['AGENT' => 'Agent service.', 'SAE_K8S_SERVICE' => 'SAE_K8S_SERVICE', 'K8S' => 'Container Service.', 'FC3' => 'Function Compute service.', 'DNS' => 'DNS domain name.', 'AI' => 'AI service.', 'VIP' => 'Fixed address.', 'MSE_NACOS' => 'MSE Nacos'],
'type' => 'string',
'required' => false,
- 'example' => 'default',
+ 'example' => 'MSE_NACOS',
+ 'title' => '',
],
- 'nacosMcpServers' => [
- 'description' => 'The synchronized Nacos MCP server list. If the synchronized MCP server is included, add the mcpServerId parameter.'."\n",
+ 'serviceConfigs' => [
+ 'description' => 'The list of service configurations. At least one service configuration is required.',
'type' => 'array',
'items' => [
+ 'description' => 'The service configuration information.',
'type' => 'object',
'properties' => [
- 'instanceId' => [
- 'description' => 'The Nacos instance ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'mse-24afmoioxxx',
- ],
- 'exposedUriPath' => [
- 'description' => 'The exposed URI path. This parameter is required when the protocol parameter is set to SSE or StreamableHTTP and the type parameter is set to RealMCP.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '/sse',
- ],
- 'mcpServerName' => [
- 'description' => 'The name of the MCP server.'."\n",
- 'type' => 'string',
+ 'name' => ['description' => 'The service name.', 'type' => 'string', 'required' => false, 'example' => 'user-service', 'title' => ''],
+ 'namespace' => ['description' => 'The namespace of the service.'."\n"
+ ."\n"
+ .'- If sourceType is set to K8S, this parameter specifies the namespace of the Kubernetes service.'."\n"
+ .'- If sourceType is set to MSE_NACOS, this parameter specifies the namespace in Nacos.'."\n"
+ ."\n"
+ .'This parameter is required when sourceType is set to K8S or MSE_NACOS.', 'type' => 'string', 'required' => false, 'example' => 'PUBLIC', 'title' => ''],
+ 'groupName' => ['description' => 'The service group name. This parameter is required when sourceType is set to MSE_NACOS.', 'type' => 'string', 'required' => false, 'example' => 'DEFAULT_GROUP', 'title' => ''],
+ 'addresses' => [
+ 'description' => 'The list of domain names or fixed addresses.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The domain name or fixed address.', 'type' => 'string', 'required' => false, 'example' => 'dev.com:8080', 'title' => ''],
'required' => false,
- 'example' => 'test',
+ 'title' => '',
+ 'example' => '',
],
- 'protocols' => [
- 'description' => 'The protocol.'."\n",
+ 'qualifier' => ['description' => 'The function version or alias.', 'type' => 'string', 'required' => false, 'example' => 'LATEST', 'title' => ''],
+ 'aiServiceConfig' => ['description' => 'The AI service configuration.', '$ref' => '#/components/schemas/AiServiceConfig', 'required' => false, 'title' => '', 'example' => ''],
+ 'agentServiceConfig' => ['description' => 'The Agent service configuration. This parameter is required when sourceType is set to AGENT.', '$ref' => '#/components/schemas/AgentServiceConfig', 'required' => false, 'title' => '', 'example' => ''],
+ 'modelProviderId' => ['description' => 'The model provider ID.', 'type' => 'string', 'required' => false, 'example' => 'mp-xxx****', 'title' => ''],
+ 'dnsServers' => [
+ 'description' => 'The list of DNS server addresses.',
'type' => 'array',
- 'items' => [
- 'description' => 'The protocol.'."\n"
- ."\n"
- .'Valid values:'."\n"
- ."\n"
- .'* SSE'."\n"
- .'* HTTPS'."\n"
- .'* StreamableHTTP'."\n"
- .'* HTTP'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'SSE' => 'SSE',
- 'HTTPS' => 'HTTPS',
- 'StreamableHTTP' => 'StreamableHTTP',
- 'HTTP' => 'HTTP',
- ],
- 'example' => 'SSE',
- ],
+ 'items' => ['description' => 'The DNS server address.', 'type' => 'string', 'required' => false, 'example' => '100.100.1.156:53', 'title' => ''],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
- 'mcpServerId' => [
- 'description' => 'The MCP server ID.',
- 'type' => 'string',
+ 'sourceId' => ['description' => 'The service source ID. This parameter is required in multi-Nacos instance scenarios.', 'type' => 'string', 'required' => false, 'example' => 'nacos-instance-001', 'title' => ''],
+ 'validationOptions' => [
+ 'description' => 'The validation options. Configuration options related to service validation.',
+ 'type' => 'object',
+ 'properties' => [
+ 'skipVerifyAIChatCompletion' => ['description' => 'Specifies whether to skip AI chat completion verification.', 'type' => 'boolean', 'required' => false, 'title' => '', 'example' => ''],
+ ],
'required' => false,
- 'example' => 'mcp-d3s8qo6m1hknegofa3bg',
+ 'title' => '',
+ 'example' => '',
],
+ 'expressType' => ['description' => 'The service expression type. Identifies the special type or mode of the service.', 'type' => 'string', 'required' => false, 'example' => 'Standard', 'title' => ''],
],
'required' => false,
- 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
+ 'resourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-xxx', 'title' => ''],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
+ [
+ 'name' => 'clientToken',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The client token.', 'type' => 'string', 'required' => false, 'example' => 'xxx', 'title' => ''],
+ ],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response schema.',
+ 'title' => '',
+ 'description' => 'The response body.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => '2F46B9E7-67EF-5C8A-BA52-D38D5B32AF2C',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The response message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'C67DED2B-F19B-5BEC-88C1-D6EB854CD0D4'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'The response data.'."\n",
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'succeedMcpServers' => [
- 'description' => 'The list of MCP servers successfully synchronized.'."\n",
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'mcpServerName' => [
- 'description' => 'The name of the MCP server.'."\n",
- 'type' => 'string',
- 'example' => 'mcp-success',
- ],
- 'protocols' => [
- 'description' => 'The protocol.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The protocol.'."\n",
- 'type' => 'string',
- 'example' => 'SSE',
- ],
- ],
- ],
- 'description' => '',
- ],
- ],
- 'failedMcpServers' => [
- 'description' => 'The list of MCP servers that failed to synchronize.'."\n",
+ 'serviceIds' => [
+ 'description' => 'The list of service IDs.',
'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'mcpServerName' => [
- 'description' => 'The name of the MCP server.'."\n",
- 'type' => 'string',
- 'example' => 'mcp-fail',
- ],
- 'protocols' => [
- 'description' => 'The protocol.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The protocol.'."\n",
- 'type' => 'string',
- 'example' => 'SSE',
- ],
- ],
- ],
- 'description' => '',
- ],
+ 'items' => ['description' => 'The service ID.', 'type' => 'string', 'example' => 'svc-crbgq0dlhtgrdb***', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"C67DED2B-F19B-5BEC-88C1-D6EB854CD0D4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"serviceIds\\": [\\n \\"svc-crbgq0dlhtgrdb***\\"\\n ]\\n }\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"2F46B9E7-67EF-5C8A-BA52-D38D5B32AF2C\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"succeedMcpServers\\": [\\n {\\n \\"mcpServerName\\": \\"mcp-success\\",\\n \\"protocols\\": [\\n \\"SSE\\"\\n ]\\n }\\n ],\\n \\"failedMcpServers\\": [\\n {\\n \\"mcpServerName\\": \\"mcp-fail\\",\\n \\"protocols\\": [\\n \\"SSE\\"\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'SyncMCPServers',
- ],
- 'CreateHttpApiRoute' => [
- 'summary' => 'Creates a route for an HTTP API.',
- 'path' => '/v1/http-apis/{httpApiId}/routes',
- 'methods' => [
- 'post',
+ 'title' => 'Create services',
+ 'description' => 'This operation supports creating multiple services.',
+ 'changeSet' => [
+ ['createdAt' => '2026-01-30T08:25:31.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-12-25T08:39:50.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-06-26T12:05:02.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-02-27T07:54:24.000Z', 'description' => 'Request parameters changed'],
],
- 'schemes' => [
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateService'],
+ ],
],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreateService',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Service', 'arn' => 'acs:apig:{#regionId}:{#accountId}:service/*'],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'CreateServiceVersion' => [
+ 'summary' => 'Creates a service version.',
+ 'path' => '/v1/services/{serviceId}/versions',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
+ 'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '237765',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway910B7T',
- ],
+ 'abilityTreeCode' => '238203',
+ 'abilityTreeNodes' => ['FEATUREapigatewayNPQVBL'],
],
'parameters' => [
[
- 'name' => 'httpApiId',
+ 'name' => 'serviceId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The HTTP API ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'api-cqoob7llhtgq***',
- ],
+ 'schema' => ['description' => 'The service ID.', 'type' => 'string', 'required' => true, 'example' => 'gs-cpvj7dtlh******', 'title' => ''],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
- 'description' => 'The request body.'."\n",
+ 'description' => 'The request body.',
'type' => 'object',
'properties' => [
- 'environmentId' => [
- 'description' => 'The environment ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'env-cpqnr6tlhtgubcv***',
- ],
- 'name' => [
- 'description' => 'The route name.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'login',
- ],
- 'description' => [
- 'description' => 'The route description.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'User logon route'."\n",
- ],
- 'domainIds' => [
- 'description' => 'The list of domain IDs.'."\n",
+ 'name' => ['description' => 'The version name.', 'type' => 'string', 'required' => true, 'example' => 'v1', 'title' => ''],
+ 'labels' => [
+ 'description' => 'The service labels.',
'type' => 'array',
'items' => [
- 'description' => 'The domain ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'd-cr62ts5lhtglnu***',
- ],
- 'required' => false,
- ],
- 'match' => [
- 'description' => 'The route match rule.'."\n",
- 'required' => false,
- '$ref' => '#/components/schemas/HttpRouteMatch',
- ],
- 'backendConfig' => [
- 'description' => 'The backend service configurations for the route.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'scene' => [
- 'description' => 'The backend service scenario. Valid values:'."\n"
- ."\n"
- .'* SingleService'."\n"
- .'* MultiServiceByRatio'."\n"
- .'* Mock'."\n"
- .'* Redirect'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'SingleService' => '',
- 'MultiServiceByRatio' => '',
- 'Redirect' => 'Redirect',
- 'MultiServiceByTag' => '',
- 'Mock' => 'Mock',
- ],
- 'example' => 'SingleService',
- ],
- 'services' => [
- 'description' => 'The list of backend services.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The backend service.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'serviceId' => [
- 'description' => 'The service ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'svc-crbgq0dlhtgr***',
- ],
- 'protocol' => [
- 'description' => 'The service protocol. Valid values:'."\n"
- ."\n"
- .'* HTTP'."\n"
- .'* HTTPS'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'HTTPS' => 'HTTPS',
- 'HTTP' => 'HTTP',
- ],
- 'example' => 'HTTP',
- ],
- 'port' => [
- 'description' => 'The service port (omit for dynamic ports).'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '8080',
- ],
- 'weight' => [
- 'description' => 'The traffic weight percentage.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '49',
- ],
- 'version' => [
- 'description' => 'The service version (valid only in tag-based scenarios).'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'v1',
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
+ 'description' => 'The label information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'key' => ['description' => 'The label key.', 'type' => 'string', 'required' => true, 'example' => 'topology.kubernetes.io/zone', 'title' => ''],
+ 'value' => ['description' => 'The label value.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-j', 'title' => ''],
],
- ],
- 'required' => false,
- ],
- 'deployConfigs' => [
- 'description' => 'deployConfigs',
- 'type' => 'array',
- 'items' => [
- 'description' => 'HttpApiDeployConfig',
'required' => false,
- '$ref' => '#/components/schemas/HttpApiDeployConfig',
- ],
- 'required' => false,
- ],
- 'mcpRouteConfig' => [
- 'description' => 'The MCP route configuration',
- 'type' => 'object',
- 'properties' => [
- 'protocol' => [
- 'description' => 'The MCP protocol',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'HTTP,HTTPS',
- ],
- 'exposedUriPath' => [
- 'description' => 'The exposed URI path',
- 'type' => 'string',
- 'required' => false,
- 'example' => '/v1/chat/completions',
- ],
- 'mcpStatisticsEnable' => [
- 'description' => 'mcpStatisticsEnable',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
- ],
- 'required' => false,
- ],
- 'policyConfigs' => [
- 'description' => 'The route-level policy configurations',
- 'type' => 'array',
- 'items' => [
- 'description' => 'HttpApiPolicyConfigs',
- 'required' => false,
- '$ref' => '#/components/schemas/HttpApiPolicyConfigs',
+ 'title' => '',
+ 'example' => '',
],
- 'required' => false,
+ 'required' => true,
+ 'title' => '',
+ 'example' => '',
],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'The response.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '3ACFC7A7-45A9-58CF-B2D5-765B60254695',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'data' => [
- 'description' => 'The response data.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'routeId' => [
- 'description' => 'The route ID.'."\n",
- 'type' => 'string',
- 'example' => 'hr-cr82undlhtgrlej***',
- ],
- ],
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '0B373A13-9BB8-5068-9C94-AD6D39E6BBA2'],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3ACFC7A7-45A9-58CF-B2D5-765B60254695\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"routeId\\": \\"hr-cr82undlhtgrlej***\\"\\n }\\n}","type":"json"}]',
- 'title' => 'CreateHttpApiRoute',
- 'translator' => 'machine',
- ],
- 'UpdateHttpApiRoute' => [
- 'summary' => 'Updates the route of an HTTP API.',
- 'path' => '/v1/http-apis/{httpApiId}/routes/{routeId}',
- 'methods' => [
- 'put',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0B373A13-9BB8-5068-9C94-AD6D39E6BBA2\\",\\n \\"message\\": \\"Success\\",\\n \\"code\\": \\"Ok\\"\\n}","type":"json"}]',
+ 'title' => 'Create a service version',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateServiceVersion'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'apig:CreateServiceVersion',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'CreateSource' => [
+ 'summary' => 'Creates a source.',
+ 'path' => '/v1/sources',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '237777',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway910B7T',
- ],
+ 'abilityTreeCode' => '237746',
+ 'abilityTreeNodes' => ['FEATUREapigatewayNPQVBL'],
],
'parameters' => [
[
- 'name' => 'httpApiId',
- 'in' => 'path',
- 'schema' => [
- 'description' => 'The ID of the HTTP API for which you want to update the route.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'api-cqoub6tlhtgvof7***',
- ],
- ],
- [
- 'name' => 'routeId',
- 'in' => 'path',
- 'schema' => [
- 'description' => 'The route ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'hr-cr82undlhtgrl***',
- ],
- ],
- [
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
- 'description' => 'The request body.'."\n",
+ 'description' => 'The request body.',
'type' => 'object',
'properties' => [
- 'domainIds' => [
- 'description' => 'The list of domain IDs.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The domain ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'd-cr62ts5lhtgln***',
- ],
- 'required' => false,
- ],
- 'match' => [
- 'description' => 'The route match rule.'."\n",
+ 'gatewayId' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-cq7l5s5lhtgi6q***', 'title' => ''],
+ 'type' => [
+ 'description' => 'The source type. Valid values:'."\n"
+ .'- MSE_NACOS: Microservices Engine (MSE) Nacos.'."\n"
+ .'- K8S: Container Service.',
+ 'enumValueTitles' => ['K8S' => 'Container Service.', 'MSE_NACOS' => 'MSE Nacos'],
+ 'type' => 'string',
'required' => false,
- '$ref' => '#/components/schemas/HttpRouteMatch',
+ 'example' => 'MSE_NACOS',
+ 'title' => '',
],
- 'backendConfig' => [
- 'description' => 'The backend service configurations for the route.'."\n",
+ 'k8sSourceConfig' => [
+ 'description' => 'The Container Service source configuration.',
'type' => 'object',
'properties' => [
- 'scene' => [
- 'description' => 'The backend service scenario. Valid values:'."\n"
- ."\n"
- .'* SingleService'."\n"
- .'* MultiServiceByRatio'."\n"
- .'* Redirect'."\n"
- .'* Mock'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'SingleService' => '',
- 'MultiServiceByRatio' => '',
- 'Redirect' => 'Redirect',
- 'Mock' => 'Mock',
- ],
- 'example' => 'SingleService',
- ],
- 'services' => [
- 'description' => 'The list of backend services.'."\n",
+ 'clusterId' => ['description' => 'The Container Service cluster ID.', 'type' => 'string', 'required' => false, 'example' => 'c3fbe6caaaece4062b*****', 'title' => ''],
+ 'authorizeSecurityGroupRules' => [
+ 'description' => 'The list of gateway security group authorization rule configurations.',
'type' => 'array',
'items' => [
- 'description' => 'The backend service.'."\n",
+ 'description' => 'The gateway security group authorization rule configuration.',
'type' => 'object',
'properties' => [
- 'serviceId' => [
- 'description' => 'The service ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'svc-cr6pk4tlhtgm58e***',
- ],
- 'protocol' => [
- 'description' => 'The service protocol. Valid values:'."\n"
- ."\n"
- .'* HTTP'."\n"
- .'* HTTPS'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'HTTPS' => 'HTTPS',
- 'HTTP' => 'HTTP',
- ],
- 'example' => 'HTTP',
- ],
- 'version' => [
- 'description' => 'The service version.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'v1',
- ],
- 'weight' => [
- 'description' => 'The traffic weight percentage.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '49',
- ],
- 'port' => [
- 'description' => 'The service port (omit for dynamic ports).'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
+ 'securityGroupId' => ['description' => 'The security group ID.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp14w4fa4j***', 'title' => ''],
+ 'portRanges' => [
+ 'description' => 'The list of port ranges.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The port range.', 'type' => 'string', 'required' => false, 'example' => '8080/8082', 'title' => ''],
'required' => false,
- 'example' => '8080',
+ 'title' => '',
+ 'example' => '',
],
+ 'description' => ['description' => 'The rule description.', 'type' => 'string', 'required' => false, 'example' => '预发网关访问安全组', 'title' => ''],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
- 'environmentId' => [
- 'description' => 'The environment ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'env-cquqsollhtgid***',
- ],
- 'description' => [
- 'description' => 'The route description.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test route',
- ],
- 'deployConfigs' => [
- 'type' => 'array',
- 'items' => [
- 'required' => false,
- '$ref' => '#/components/schemas/HttpApiDeployConfig',
- ],
- 'required' => false,
- ],
- 'name' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'mcpRouteConfig' => [
+ 'nacosSourceConfig' => [
+ 'description' => 'The MSE Nacos source configuration.',
'type' => 'object',
'properties' => [
- 'protocol' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'exposedUriPath' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'mcpStatisticsEnable' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'policyConfigs' => [
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'type' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'enable' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- 'aiFallbackConfig' => [
- 'type' => 'object',
- 'properties' => [
- 'serviceConfigs' => [
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'serviceId' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'name' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'targetModelName' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'passThroughModelName' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- ],
- 'onlyRedirectUpstreamCode' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- 'routeEmbedded' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'aiSecurityGuardConfig' => [
- 'type' => 'object',
- 'properties' => [
- 'serviceAddress' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'checkRequest' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- 'checkResponse' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- 'checkRequestImage' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- 'checkResponseImage' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- 'requestCheckService' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'responseCheckService' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'requestImageCheckService' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'responseImageCheckService' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'riskAlertLevel' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'riskConfig' => [
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'type' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'level' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'consumerRules' => [
- 'type' => 'object',
- 'properties' => [
- 'pattern' => [
- 'title' => '循环规则。',
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- ],
- 'matchType' => [
- 'type' => 'string',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- ],
- 'bufferLimit' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- 'pluginStatus' => [
- 'type' => 'object',
- 'properties' => [
- 'errorLogs' => [
- 'type' => 'object',
- 'required' => false,
- 'additionalProperties' => [
- 'type' => 'string',
- ],
- ],
- 'serviceHealthy' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- 'pluginId' => [
- 'type' => 'string',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'consumerRequestCheckService' => [
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'name' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'requestCheckService' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'requestImageCheckService' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'matchType' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'modalityType' => [
- 'type' => 'string',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- ],
- 'consumerResponseCheckService' => [
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'name' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'responseCheckService' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'responseImageCheckService' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'matchType' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'modalityType' => [
- 'type' => 'string',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- ],
- 'consumerRiskLevel' => [
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'name' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'matchType' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'type' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'level' => [
- 'type' => 'string',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'aiTokenRateLimitConfig' => [
- 'type' => 'object',
- 'properties' => [
- 'rules' => [
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'limitType' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'matchKey' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'matchType' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'matchValue' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'limitMode' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'limitValue' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- ],
- 'enableGlobalRules' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- 'globalRules' => [
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'limitType' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'matchKey' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'matchType' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'matchValue' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'limitMode' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'limitValue' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- ],
- 'redisConfig' => [
- 'type' => 'object',
- 'properties' => [
- 'host' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'port' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- 'username' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'password' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'timeout' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- 'databaseNumber' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'pluginStatus' => [
- 'type' => 'object',
- 'properties' => [
- 'errorLogs' => [
- 'type' => 'object',
- 'required' => false,
- 'additionalProperties' => [
- 'type' => 'string',
- ],
- ],
- 'serviceHealthy' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- 'pluginId' => [
- 'type' => 'string',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'aiCacheConfig' => [
- 'type' => 'object',
- 'properties' => [
- 'cacheTTL' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- 'redisConfig' => [
- 'type' => 'object',
- 'properties' => [
- 'host' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'port' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- 'username' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'password' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'timeout' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- 'databaseNumber' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'vectorConfig' => [
- 'type' => 'object',
- 'properties' => [
- 'type' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'serviceHost' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'apiKey' => [
- 'title' => 'apiKey',
- 'description' => 'apiKey',
- 'type' => 'string',
- 'required' => false,
- ],
- 'timeout' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '6000',
- ],
- 'collectionId' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'threshold' => [
- 'type' => 'number',
- 'format' => 'float',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'embeddingConfig' => [
- 'type' => 'object',
- 'properties' => [
- 'type' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'serviceId' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'timeout' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- 'modelName' => [
- 'type' => 'string',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'cacheKeyStrategy' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'cacheMode' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'pluginStatus' => [
- 'type' => 'object',
- 'properties' => [
- 'errorLogs' => [
- 'type' => 'object',
- 'required' => false,
- 'additionalProperties' => [
- 'type' => 'string',
- ],
- ],
- 'serviceHealthy' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- 'pluginId' => [
- 'type' => 'string',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'aiNetworkSearchConfig' => [
- 'type' => 'object',
- 'properties' => [
- 'needReference' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- 'referenceFormat' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'referenceLocation' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'defaultLang' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'defaultEnable' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- 'searchFrom' => [
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'type' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'apiKey' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'count' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- 'start' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- 'timeoutMillisecond' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- 'optionArgs' => [
- 'type' => 'object',
- 'required' => false,
- 'additionalProperties' => [
- 'type' => 'string',
- ],
- ],
- 'endpoint' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'contentMode' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'industry' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'timeRange' => [
- 'type' => 'string',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- ],
- 'searchEngineConfig' => [
- 'title' => '搜索引擎配置',
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'type' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'apiKey' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'count' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- 'start' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- 'timeoutMillisecond' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- 'optionArgs' => [
- 'type' => 'object',
- 'required' => false,
- 'additionalProperties' => [
- 'type' => 'string',
- ],
- ],
- 'endpoint' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'contentMode' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'industry' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'timeRange' => [
- 'type' => 'string',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'searchRewrite' => [
- 'type' => 'object',
- 'properties' => [
- 'enable' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- 'serviceId' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'modelName' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'timeoutMillisecond' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- 'maxCount' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'pluginStatus' => [
- 'type' => 'object',
- 'properties' => [
- 'errorLogs' => [
- 'type' => 'object',
- 'required' => false,
- 'additionalProperties' => [
- 'type' => 'string',
- ],
- ],
- 'serviceHealthy' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- 'pluginId' => [
- 'type' => 'string',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'aiToolSelectionConfig' => [
- 'type' => 'object',
- 'properties' => [
- 'enableConditions' => [
- 'type' => 'object',
- 'properties' => [
- 'toolCountThreshold' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'toolReranking' => [
- 'type' => 'object',
- 'properties' => [
- 'modelService' => [
- 'type' => 'object',
- 'properties' => [
- 'serviceId' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'modelName' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'timeoutMillisecond' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'filteringMethod' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'topKPercent' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- 'topNCount' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- 'scoreThreshold' => [
- 'type' => 'number',
- 'format' => 'float',
- 'required' => false,
- ],
- 'fallbackStrategy' => [
- 'type' => 'string',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'queryRewriting' => [
- 'type' => 'object',
- 'properties' => [
- 'enabled' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- 'modelService' => [
- 'type' => 'object',
- 'properties' => [
- 'serviceId' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'modelName' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'timeoutMillisecond' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'promptConfig' => [
- 'type' => 'object',
- 'properties' => [
- 'type' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'customPrompt' => [
- 'type' => 'string',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'maxOutputTokens' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- 'triggerConditions' => [
- 'type' => 'object',
- 'properties' => [
- 'messageCountThreshold' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'contextSelection' => [
- 'type' => 'object',
- 'properties' => [
- 'type' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'value' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'fallbackStrategy' => [
- 'type' => 'string',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'pluginStatus' => [
- 'type' => 'object',
- 'properties' => [
- 'errorLogs' => [
- 'type' => 'object',
- 'required' => false,
- 'additionalProperties' => [
- 'type' => 'string',
- ],
- ],
- 'serviceHealthy' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- 'pluginId' => [
- 'type' => 'string',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'aiStatisticsConfig' => [
- 'type' => 'object',
- 'properties' => [
- 'logRequestContent' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- 'logResponseContent' => [
- 'type' => 'boolean',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'semanticRouterConfig' => [
- 'type' => 'object',
- 'properties' => [
- 'timeoutMillisecond' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- ],
- 'required' => false,
+ 'instanceId' => ['description' => 'The Nacos instance ID.', 'type' => 'string', 'required' => false, 'example' => 'mse-cn-0dw3w***', 'title' => ''],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
+ 'resourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-xxx', 'title' => ''],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'CBEEB8C1-108E-50F0-9BEA-DED79553C309',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '393E2630-DBE7-5221-AB35-9E740675491A'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'sourceId' => ['description' => 'The source ID.', 'type' => 'string', 'example' => 'src-crdddallhtgt***', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CBEEB8C1-108E-50F0-9BEA-DED79553C309\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'UpdateHttpApiRoute',
- 'translator' => 'machine',
- ],
- 'GetHttpApiRoute' => [
- 'summary' => 'Queries the details of a route of an HTTP API.',
- 'path' => '/v1/http-apis/{httpApiId}/routes/{routeId}',
- 'methods' => [
- 'get',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Create a source',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateSource'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreateSource',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"393E2630-DBE7-5221-AB35-9E740675491A\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"sourceId\\": \\"src-crdddallhtgt***\\"\\n }\\n}","type":"json"}]',
+ ],
+ 'DeleteConsumer' => [
+ 'path' => '/v1/consumers/{consumerId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'read',
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '237782',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway910B7T',
- ],
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '248086',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
],
'parameters' => [
[
- 'name' => 'httpApiId',
- 'in' => 'path',
- 'schema' => [
- 'description' => 'The HTTP API ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'api-cqu95allhtgii6***',
- ],
- ],
- [
- 'name' => 'routeId',
+ 'name' => 'consumerId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The route ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'hr-cr82undlhtgrl***',
- ],
+ 'schema' => ['description' => 'The API consumer ID.', 'type' => 'string', 'required' => false, 'example' => 'cs-cv8em6um1hku2shkv19g', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response body.'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '3ACFC7A7-45A9-58CF-B2D5-765B60254695',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'data' => [
- 'description' => 'The route details.'."\n",
- '$ref' => '#/components/schemas/HttpRoute',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '40C8A4FF-7AF1-5B52-A662-02EEE24C6908'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Delete an API consumer',
+ 'summary' => 'Deletes an API consumer.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3ACFC7A7-45A9-58CF-B2D5-765B60254695\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"routeId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"deployStatus\\": \\"\\",\\n \\"description\\": \\"\\",\\n \\"match\\": {\\n \\"ignoreUriCase\\": true,\\n \\"path\\": {\\n \\"type\\": \\"Prefix\\",\\n \\"value\\": \\"/user\\"\\n },\\n \\"headers\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"dev\\",\\n \\"value\\": \\"true\\"\\n }\\n ],\\n \\"methods\\": [\\n \\"GET\\"\\n ],\\n \\"queryParams\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"age\\",\\n \\"value\\": \\"17\\"\\n }\\n ]\\n },\\n \\"backend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"alias\\": \\"\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n },\\n \\"createTimestamp\\": 0,\\n \\"updateTimestamp\\": 0,\\n \\"mcpServerInfo\\": {\\n \\"importInstanceId\\": \\"\\",\\n \\"importNamespace\\": \\"\\",\\n \\"importMcpServerId\\": \\"\\",\\n \\"createFromType\\": \\"\\",\\n \\"mcpServerConfig\\": \\"\\",\\n \\"mcpRouteConfig\\": {\\n \\"protocol\\": \\"\\",\\n \\"exposedUriPath\\": \\"\\"\\n }\\n },\\n \\"domainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\"\\n }\\n ],\\n \\"gatewayStatus\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"builtin\\": \\"\\"\\n }\\n}","type":"json"}]',
- 'title' => 'GetHttpApiRoute',
- 'translator' => 'machine',
- ],
- 'DeleteHttpApiRoute' => [
- 'summary' => 'Deletes a route in an HTTP API.',
- 'path' => '/v1/http-apis/{httpApiId}/routes/{routeId}',
- 'methods' => [
- 'delete',
- ],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteConsumer',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/{#ConsumerId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"40C8A4FF-7AF1-5B52-A662-02EEE24C6908\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'DeleteConsumerAuthorizationRule' => [
+ 'path' => '/v1/consumers/{consumerId}/authorization-rules/{consumerAuthorizationRuleId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'write',
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'high',
'chargeType' => 'free',
- 'abilityTreeCode' => '237784',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway910B7T',
- ],
+ 'abilityTreeCode' => '248109',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
],
'parameters' => [
[
- 'name' => 'httpApiId',
+ 'name' => 'consumerAuthorizationRuleId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The HTTP API ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'api-cqoub6tlhtgv***',
- ],
+ 'schema' => ['description' => 'The ID of the API consumer authorization rule used to filter the API list. The API list in the response contains only authorized APIs.', 'type' => 'string', 'required' => false, 'example' => 'cas-xxx', 'title' => ''],
],
[
- 'name' => 'routeId',
+ 'name' => 'consumerId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The route ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'hr-cr82undlhtgr***',
- ],
+ 'schema' => ['description' => 'The consumer ID.', 'type' => 'string', 'required' => false, 'example' => 'cs-cukm3imm1hkh1e2m4rqg', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '0F138FFC-6E2B-56C1-9BAB-A67462E339D1',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '3C3B9A12-3868-5EB9-8BEA-F99E03DD125C'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'ok', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Delete an API consumer authorization rule',
+ 'summary' => 'Deletes an API consumer authorization rule.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0F138FFC-6E2B-56C1-9BAB-A67462E339D1\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'DeleteHttpApiRoute',
- 'translator' => 'machine',
- ],
- 'ListHttpApiRoutes' => [
- 'summary' => 'Queries the routes of an HTTP API.',
- 'path' => '/v1/http-apis/{httpApiId}/routes',
- 'methods' => [
- 'get',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteConsumerAuthorizationRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/{#ConsumerId}'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'https',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3C3B9A12-3868-5EB9-8BEA-F99E03DD125C\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"ok\\"\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
+ ],
+ 'DeleteDomain' => [
+ 'summary' => 'Deletes a domain name.',
+ 'path' => '/v1/domains/{domainId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'read',
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'list',
- 'abilityTreeCode' => '237771',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway910B7T',
- ],
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREapigatewayLPOSXV'],
],
'parameters' => [
[
- 'name' => 'httpApiId',
+ 'name' => 'domainId',
'in' => 'path',
+ 'schema' => ['description' => 'The domain name ID.', 'type' => 'string', 'required' => true, 'example' => 'd-cpqnfn5lhtgqbga95svg', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The HTTP API ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'api-cr68g1dlhtgm31f***',
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'The request ID, which is used to trace the API call chain.', 'type' => 'string', 'example' => 'A60EE5CA-1294-532A-9775-8D2FD1C6EFBF'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ ],
+ 'example' => '',
],
],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Delete a domain name',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteDomain'],
+ ],
+ ],
+ 'ramActions' => [
[
- 'name' => 'pageNumber',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The page number of the page to return. Pages start from page 1. Default value: 1.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteDomain',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:domain/{#DomainId}'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"A60EE5CA-1294-532A-9775-8D2FD1C6EFBF\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'DeleteEnvironment' => [
+ 'path' => '/v1/environments/{environmentId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'pageSize',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries per page. Valid values: 1 to 100. Default value: 10.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
+ 'AK' => [],
],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => true,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '219215',
+ 'abilityTreeNodes' => ['FEATUREapigatewayN14L0I'],
+ ],
+ 'parameters' => [
[
'name' => 'environmentId',
- 'in' => 'query',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The environment ID.', 'type' => 'string', 'required' => true, 'example' => 'env-cq7l5s5lhtgi6qasrdc0', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The environment ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'env-cpqnr6tlhtgubc***',
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'The request ID, which is used to trace the request.', 'type' => 'string', 'example' => 'C61E30D3-579A-5B43-994E-31E02EDC9129'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ ],
+ 'example' => '',
],
],
+ ],
+ 'staticInfo' => ['noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', 'returnType' => 'synchronous'],
+ 'title' => 'Delete an environment',
+ 'summary' => 'Deletes an environment.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteEnvironment'],
+ ],
+ ],
+ 'ramActions' => [
[
- 'name' => 'deployStatuses',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The deployment state of the route.'."\n"
- ."\n"
- .'Enumerated values:'."\n"
- ."\n"
- .'* Deploying: The route is being deployed.'."\n"
- .'* DeployedWithChanges: The route is deployed and modified.'."\n"
- .'* Undeploying: The route is being undeployed.'."\n"
- .'* NotDeployed: The route is not deployed.'."\n"
- .'* Deployed: The route is deployed.'."\n"
- .'* UndeployFailed: The route failed to be undeployed.'."\n"
- .'* DeployFailed: The route failed to be deployed.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'Deploying' => '',
- 'DeployedWithChanges' => '',
- 'Undeploying' => '',
- 'NotDeployed' => '',
- 'Deployed' => '',
- 'UndeployFailed' => '',
- 'DeployFailed' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteEnvironment',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Environment', 'arn' => 'acs:apig:{#regionId}:{#accountId}:environment/{#EnvironmentId}'],
],
- 'example' => 'NotDeployed',
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"C61E30D3-579A-5B43-994E-31E02EDC9129\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'DeleteGateway' => [
+ 'summary' => 'Deletes a gateway.',
+ 'path' => '/v1/gateways/{gatewayId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'name',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The route name.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'itemcenter-gateway',
- ],
+ 'AK' => [],
],
+ ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'paid',
+ 'abilityTreeNodes' => ['FEATUREapigatewayUWNKMC'],
+ ],
+ 'parameters' => [
[
- 'name' => 'nameLike',
- 'in' => 'query',
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The ID of the cloud-native API gateway.', 'type' => 'string', 'required' => false, 'example' => 'gw-cpv4sqdl*****', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The route name keyword for a fuzzy search.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'item',
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'DE97DFDB-7DF0-5AB9-941C-10D27D769E4B', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Delete a gateway',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteGateway'],
+ ],
+ ],
+ 'ramActions' => [
[
- 'name' => 'pathLike',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The route path keyword for a fuzzy search.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '/v1',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteGateway',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"DE97DFDB-7DF0-5AB9-941C-10D27D769E4B\\",\\n \\"message\\": \\"success\\",\\n \\"code\\": \\"Ok\\"\\n}","type":"json"}]',
+ ],
+ 'DeleteGatewayQuotaRule' => [
+ 'summary' => 'Deletes a quota throttling rule from a gateway.',
+ 'path' => '/v1/gateways/{gatewayId}/quota-rules/{ruleId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '222348',
+ 'abilityTreeNodes' => ['FEATUREapigatewayC93I4Z'],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
[
'name' => 'gatewayId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The ID of the Cloud-native API Gateway instance.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cpv4sqdl****',
- ],
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-123456'],
],
[
- 'name' => 'withConsumerInfoById',
- 'in' => 'query',
+ 'name' => 'ruleId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The rule ID.', 'type' => 'string', 'required' => false, 'example' => 'qr-d8j7fpmm1hks65kxxxxx'],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The authentication rules of the specified consumer in each route returned.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cs-xxx',
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'The unique request ID.', 'type' => 'string', 'example' => '1234567890'],
+ 'code' => ['title' => '', 'description' => 'The status code or error code.', 'type' => 'string', 'example' => '200, 404, 500'],
+ 'message' => ['title' => '', 'description' => 'The message content.', 'type' => 'string', 'example' => 'success'],
+ ],
+ 'example' => '',
],
],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Delete a consumer quota rule',
+ 'description' => 'Deletes a consumer-based quota rule from an AI gateway. This operation takes effect only for AI gateways of version 2.1.19 or later.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
[
- 'name' => 'consumerAuthorizationRuleId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The string that is used to filter routes based on consumer authentication rules. Only authorized APIs are returned.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cas-xxx',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteGatewayQuotaRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"1234567890\\",\\n \\"code\\": \\"200, 404, 500\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'DeleteGatewaySecurityGroupRule' => [
+ 'summary' => 'Deletes a security group rule from a gateway.',
+ 'path' => '/v1/gateways/{gatewayId}/security-group-rules/{securityGroupRuleId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'withAuthPolicyInfo',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The consumer authorization information in the response.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'AK' => [],
],
+ ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREapigateway9H5FFP'],
+ ],
+ 'parameters' => [
[
- 'name' => 'withPluginAttachmentByPluginId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The mounting information of the specified plug-in in each route returned.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'pl-xxx',
- ],
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The ID of the cloud-native API gateway.', 'type' => 'string', 'required' => false, 'example' => 'gw-cpv4sqdl*****', 'title' => ''],
],
[
- 'name' => 'domainId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Specifies to filter routes by domain ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'd-xxx',
- ],
+ 'name' => 'securityGroupRuleId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The ID of the cloud-native API gateway security rule.', 'type' => 'string', 'required' => false, 'example' => 'gsgr-cpqnj1llht***', 'title' => ''],
],
[
- 'name' => 'forDeploy',
+ 'name' => 'cascadingDelete',
'in' => 'query',
- 'schema' => [
- 'description' => 'Whether to filter for deployment scenario',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'schema' => ['description' => 'Specifies whether to cascade delete security group rules is enabled. Valid values:'."\n"
+ .'- true: Cascade delete security group rules.'."\n"
+ .'- false: Do not cascade delete security group rules.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'CBEEB8C1-108E-50F0-9BEA-DED79553C309',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'data' => [
- 'description' => 'The response payload.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'pageNumber' => [
- 'description' => 'The page number of the returned page.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'pageSize' => [
- 'description' => 'The number of entries per page.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '20',
- ],
- 'totalSize' => [
- 'description' => 'The total number of entries returned.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '9',
- ],
- 'items' => [
- 'description' => 'The routes.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The route information.'."\n",
- '$ref' => '#/components/schemas/HttpRoute',
- ],
- ],
- ],
- ],
+ 'requestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '8F94B3CC-F4BA-511E-8367-ECBBE486E595', 'title' => ''],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CBEEB8C1-108E-50F0-9BEA-DED79553C309\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 20,\\n \\"totalSize\\": 9,\\n \\"items\\": [\\n {\\n \\"routeId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"deployStatus\\": \\"\\",\\n \\"description\\": \\"\\",\\n \\"match\\": {\\n \\"ignoreUriCase\\": true,\\n \\"path\\": {\\n \\"type\\": \\"Prefix\\",\\n \\"value\\": \\"/user\\"\\n },\\n \\"headers\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"dev\\",\\n \\"value\\": \\"true\\"\\n }\\n ],\\n \\"methods\\": [\\n \\"GET\\"\\n ],\\n \\"queryParams\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"age\\",\\n \\"value\\": \\"17\\"\\n }\\n ]\\n },\\n \\"backend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"alias\\": \\"\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n },\\n \\"createTimestamp\\": 0,\\n \\"updateTimestamp\\": 0,\\n \\"mcpServerInfo\\": {\\n \\"importInstanceId\\": \\"\\",\\n \\"importNamespace\\": \\"\\",\\n \\"importMcpServerId\\": \\"\\",\\n \\"createFromType\\": \\"\\",\\n \\"mcpServerConfig\\": \\"\\",\\n \\"mcpRouteConfig\\": {\\n \\"protocol\\": \\"\\",\\n \\"exposedUriPath\\": \\"\\"\\n }\\n },\\n \\"domainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\"\\n }\\n ],\\n \\"gatewayStatus\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"builtin\\": \\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'ListHttpApiRoutes',
- 'translator' => 'machine',
- ],
- 'GetService' => [
- 'summary' => 'Queries a service.',
- 'path' => '/v1/services/{serviceId}',
- 'methods' => [
- 'get',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Delete gateway security group rules',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteGatewaySecurityGroupRule'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteGatewaySecurityGroupRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"8F94B3CC-F4BA-511E-8367-ECBBE486E595\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'DeleteHttpApi' => [
+ 'summary' => 'Deletes a specified HTTP API.',
+ 'path' => '/v1/http-apis/{httpApiId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'read',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
+ 'operationType' => 'delete',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '237762',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayNPQVBL',
- ],
+ 'abilityTreeCode' => '218999',
+ 'abilityTreeNodes' => ['FEATUREapigateway910B7T'],
],
'parameters' => [
[
- 'name' => 'serviceId',
+ 'name' => 'httpApiId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The service ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'svc-cr6pk4tlhtgm58e***',
- ],
+ 'schema' => ['title' => '', 'description' => 'The ID of the HTTP API to delete.', 'type' => 'string', 'required' => true, 'example' => 'api-xxx'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response parameters.'."\n",
+ 'title' => '',
+ 'description' => 'The response body.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '8FA9BB94-915B-5299-A694-49FCC7F5DD00',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'data' => [
- 'description' => 'The service details.'."\n",
- '$ref' => '#/components/schemas/Service',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '5B626361-070A-56A7-B127-ADAC8F3655DB'],
+ 'code' => ['title' => '', 'description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok'],
+ 'message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'success'],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Delete an HTTP API',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteHttpApi'],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"8FA9BB94-915B-5299-A694-49FCC7F5DD00\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"serviceId\\": \\"\\",\\n \\"sourceType\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"namespace\\": \\"\\",\\n \\"addresses\\": [\\n \\"\\"\\n ],\\n \\"ports\\": [\\n {\\n \\"port\\": 0,\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\"\\n }\\n ],\\n \\"unhealthyEndpoints\\": [\\n \\"\\"\\n ],\\n \\"outlierEndpoints\\": [\\n \\"\\"\\n ],\\n \\"healthCheck\\": {\\n \\"protocol\\": \\"TCP\\",\\n \\"timeout\\": 0,\\n \\"interval\\": 0,\\n \\"healthyThreshold\\": 0,\\n \\"unhealthyThreshold\\": 0,\\n \\"httpPath\\": \\"\\",\\n \\"httpHost\\": \\"\\",\\n \\"enable\\": true\\n },\\n \\"healthStatus\\": \\"\\",\\n \\"qualifier\\": \\"LATEST\\",\\n \\"createTimestamp\\": 0,\\n \\"updateTimestamp\\": 0,\\n \\"protocol\\": \\"HTTP\\",\\n \\"gatewayId\\": \\"gw-xxxx\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"groupName\\": \\"publich\\",\\n \\"aiServiceConfig\\": {\\n \\"provider\\": \\"qwen\\",\\n \\"address\\": \\"https://dashscope.aliyun.com\\",\\n \\"enableHealthCheck\\": true,\\n \\"paiEASServiceConfig\\": {\\n \\"workspaceId\\": \\"\\",\\n \\"serviceId\\": \\"\\",\\n \\"serviceName\\": \\"\\",\\n \\"endpointType\\": \\"\\"\\n },\\n \\"bedrockServiceConfig\\": {\\n \\"awsRegion\\": \\"\\",\\n \\"awsAccessKey\\": \\"\\",\\n \\"awsSecretKey\\": \\"\\"\\n },\\n \\"ApiKeyGenerateMode\\": \\"\\",\\n \\"defaultModelName\\": \\"\\",\\n \\"enableOutlierDetection\\": true,\\n \\"vertexServiceConfig\\": {\\n \\"vertexAuthKey\\": \\"\\",\\n \\"vertexRegion\\": \\"\\",\\n \\"vertexProjectId\\": \\"\\",\\n \\"vertexAuthServiceName\\": \\"\\",\\n \\"geminiSafetySetting\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"vertexTokenRefreshAhead\\": 0\\n },\\n \\"protocols\\": [\\n \\"OpenAI/v1\\"\\n ],\\n \\"apiKeys\\": [\\n \\"\\"\\n ],\\n \\"compatibleProtocols\\": [\\n \\"\\"\\n ]\\n },\\n \\"labelDetails\\": [\\n {\\n \\"key\\": \\"\\",\\n \\"values\\": [\\n \\"\\"\\n ]\\n }\\n ],\\n \\"agentServiceConfig\\": {\\n \\"address\\": \\"https://dashscope.aliyuncs.com/api/v1\\",\\n \\"dashScopeConfig\\": {\\n \\"appCredentials\\": [\\n {\\n \\"apiKey\\": \\"\\",\\n \\"appId\\": \\"\\"\\n }\\n ]\\n },\\n \\"enableHealthCheck\\": true,\\n \\"provider\\": \\"\\",\\n \\"difyConfig\\": {\\n \\"botType\\": \\"\\",\\n \\"apiKey\\": \\"\\"\\n },\\n \\"enableOutlierDetection\\": true,\\n \\"customConfig\\": {\\n \\"apiKey\\": \\"\\",\\n \\"apiKeyGenerateMode\\": \\"\\"\\n },\\n \\"protocols\\": [\\n \\"DashScope\\"\\n ]\\n },\\n \\"expressType\\": \\"StartExecution\\"\\n }\\n}","type":"json"}]',
- 'title' => 'GetService',
- 'translator' => 'machine',
- ],
- 'CreateService' => [
- 'summary' => 'Creates a service.',
- 'path' => '/v1/services',
- 'methods' => [
- 'post',
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteHttpApi',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'https',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"5B626361-070A-56A7-B127-ADAC8F3655DB\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
+ ],
+ 'DeleteHttpApiOperation' => [
+ 'path' => '/v1/http-apis/{httpApiId}/operations/{operationId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
+ 'operationType' => 'delete',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '237749',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayVWMWWM',
- ],
+ 'abilityTreeNodes' => ['FEATUREapigateway910B7T'],
],
'parameters' => [
[
- 'name' => 'body',
- 'in' => 'body',
- 'style' => 'json',
- 'schema' => [
- 'description' => 'The request body.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'gatewayId' => [
- 'description' => 'The gateway instance ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cq7l5s5lhtg***',
- ],
- 'sourceType' => [
- 'description' => 'The service source type. Valid values:'."\n"
- ."\n"
- .'* MSE_NACOS: MSE Nacos instance services'."\n"
- .'* K8S: Container Service for Kubernetes (ACK) cluster services'."\n"
- .'* VIP: fixed IP addresses'."\n"
- .'* DNS: Domain Name System (DNS) domains'."\n"
- .'* FC3: Function Compute services'."\n"
- .'* SAE_K8S_SERVICE: Serverless App Engine (SAE) Kubernetes services'."\n"
- ."\n"
- .'Valid values:'."\n"
- ."\n"
- .'* SAE_K8S_SERVICE'."\n"
- .'* K8S'."\n"
- .'* FC3'."\n"
- .'* DNS'."\n"
- .'* VIP'."\n"
- .'* MSE_NACOS'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'AGENT' => '',
- 'SAE_K8S_SERVICE' => 'SAE_K8S_SERVICE',
- 'K8S' => '',
- 'FC3' => '',
- 'DNS' => '',
- 'AI' => '',
- 'VIP' => '',
- 'MSE_NACOS' => 'MSE Nacos',
- ],
- 'example' => 'MSE_NACOS',
- ],
- 'serviceConfigs' => [
- 'description' => 'The list of service configurations.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'A service configuration.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'name' => [
- 'description' => 'The service name.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'user-service',
- ],
- 'namespace' => [
- 'description' => 'The service namespace. This parameter is required when sourceType is set to K8S or MSE_NACOS.'."\n"
- ."\n"
- .'* If sourceType is set to K8S, this parameter specifies the namespace where the K8s service resides.'."\n"
- .'* If sourceType is set to MSE_NACOS, this parameter specifies a namespace in Nacos.'."\n"
- ."\n"
- .'This parameter is required if sourceType is set to K8S or MSE_NACOS.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'PUBLIC',
- ],
- 'groupName' => [
- 'description' => 'The service group name. This parameter is required if sourceType is set to MSE_NACOS.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'DEFAULT_GROUP',
- ],
- 'addresses' => [
- 'description' => 'The list of domain names or fixed IP addresses.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'A domain name or fixed IP address.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'dev.com:8080',
- ],
- 'required' => false,
- ],
- 'qualifier' => [
- 'description' => 'The function version/alias.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'LATEST',
- ],
- 'aiServiceConfig' => [
- 'description' => 'The AI service configurations.'."\n",
- 'required' => false,
- '$ref' => '#/components/schemas/AiServiceConfig',
- ],
- 'agentServiceConfig' => [
- 'description' => 'Agent service configuration',
- 'required' => false,
- '$ref' => '#/components/schemas/AgentServiceConfig',
- ],
- 'dnsServers' => [
- 'description' => 'The list of DNS service addresses.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'A DNS service address.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '100.100.2.136:53',
- ],
- 'required' => false,
- ],
- 'sourceId' => [
- 'description' => 'Service source ID',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'nacos-instance-001',
- ],
- 'validationOptions' => [
- 'description' => 'Validation options',
- 'type' => 'object',
- 'properties' => [
- 'skipVerifyAIChatCompletion' => [
- 'description' => 'Skip AI chat completion verification',
- 'type' => 'boolean',
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'expressType' => [
- 'description' => 'Express type',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'Standard',
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- ],
- 'resourceGroupId' => [
- 'description' => 'The resource group ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rg-xxx',
- ],
- ],
- 'required' => false,
- ],
+ 'name' => 'httpApiId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The ID of the HTTP API to which the operation to be deleted belongs.', 'type' => 'string', 'required' => true, 'example' => 'api-xxx'],
],
[
- 'name' => 'clientToken',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'clientToken',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'xxx',
- ],
+ 'name' => 'operationId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The operation ID.', 'type' => 'string', 'required' => true, 'example' => 'op-xxx'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'The response.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'C67DED2B-F19B-5BEC-88C1-D6EB854CD0D4',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'data' => [
- 'description' => 'The response data.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'serviceIds' => [
- 'description' => 'The list of service IDs.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The service ID.'."\n",
- 'type' => 'string',
- 'example' => 'svc-crbgq0dlhtgrdb***',
- ],
- ],
- ],
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '585657D2-1C20-5B8A-AF17-D727C6490BE4'],
+ 'code' => ['title' => '', 'description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok'],
+ 'message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'success'],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"C67DED2B-F19B-5BEC-88C1-D6EB854CD0D4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"serviceIds\\": [\\n \\"svc-crbgq0dlhtgrdb***\\"\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'CreateService',
- 'description' => 'You can call this operation to create multiple services at a time.'."\n",
- 'translator' => 'machine',
- ],
- 'ListServices' => [
- 'summary' => 'Queries a list of services.',
- 'path' => '/v1/services',
- 'methods' => [
- 'get',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Delete an operation',
+ 'summary' => 'Deletes a specified operation.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteHttpApiOperation'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteHttpApiOperation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C6490BE4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'DeleteHttpApiRoute' => [
+ 'summary' => 'Deletes a route of an HTTP API.',
+ 'path' => '/v1/http-apis/{httpApiId}/routes/{routeId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'read',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '237750',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayNPQVBL',
- ],
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '237784',
+ 'abilityTreeNodes' => ['FEATUREapigateway910B7T'],
],
'parameters' => [
[
- 'name' => 'pageNumber',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The page number to return. Pages start from page 1. Default value: 1.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
+ 'name' => 'httpApiId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The ID of the HTTP API to which the route belongs.', 'type' => 'string', 'required' => false, 'example' => 'api-cqoub6tlhtgv***', 'title' => ''],
],
[
- 'name' => 'pageSize',
- 'in' => 'query',
+ 'name' => 'routeId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The route ID.', 'type' => 'string', 'required' => false, 'example' => 'hr-cr82undlhtgr***', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The number of entries per page. Valid values: 1 to 100. Default value: 10.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '0F138FFC-6E2B-56C1-9BAB-A67462E339D1'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ ],
+ 'example' => '',
],
],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Delete a route',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteHttpApiRoute'],
+ ],
+ ],
+ 'ramActions' => [
[
- 'name' => 'name',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The service name.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'user-service',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteHttpApiRoute',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0F138FFC-6E2B-56C1-9BAB-A67462E339D1\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'DeleteMcpServer' => [
+ 'path' => '/v1/mcp-servers/{mcpServerId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'sourceType',
- 'in' => 'query',
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '281131',
+ 'abilityTreeNodes' => ['FEATUREapigatewayMD7H1W'],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'mcpServerId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'MCP Server ID', 'type' => 'string', 'required' => false, 'example' => 'mcp-adfefz24afg', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The service source. Valid values:'."\n"
- ."\n"
- .'* MSE_NACOS: a service in an MSE Nacos instance'."\n"
- .'* K8S: a service in a Kubernetes (K8s) cluster in Container Service for Kubernetes (ACK)'."\n"
- .'* FC3: a service in Function Compute'."\n"
- .'* VIP: a fixed address'."\n"
- .'* DNS: a domain name'."\n"
- ."\n"
- .'Enumerated values:'."\n"
- ."\n"
- .'* K8S'."\n"
- .'* FC3'."\n"
- .'* DNS'."\n"
- .'* VIP'."\n"
- .'* MSE_NACOS'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'K8S' => '',
- 'FC3' => '',
- 'DNS' => '',
- 'VIP' => '',
- 'MSE_NACOS' => 'MSE Nacos',
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '393E2630-DBE7-5221-AB35-9E740675491A'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
],
- 'example' => 'MSE_NACOS',
+ 'example' => '',
],
],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Delete an MCP server',
+ 'summary' => 'Deletes an MCP server.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
[
- 'name' => 'sourceTypes',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'List of service source types',
- 'type' => 'string',
- 'required' => false,
- 'example' => '["K8S", "FC3"]',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteMcpServer',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"393E2630-DBE7-5221-AB35-9E740675491A\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"Success\\"\\n}","type":"json"}]',
+ ],
+ 'DeletePluginAttachment' => [
+ 'summary' => 'Deletes a plugin mount.',
+ 'path' => '/v1/plugin-attachments/{pluginAttachmentId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'gatewayId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The ID of the Cloud-native API Gateway instance.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cpv4sqdl*****',
- ],
+ 'AK' => [],
],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREapigateway216K2A'],
+ ],
+ 'parameters' => [
[
- 'name' => 'resourceGroupId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The resource group ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rg-acfmxxe5rc6cvla',
- ],
+ 'name' => 'pluginAttachmentId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The plugin mount ID.', 'type' => 'string', 'required' => false, 'example' => 'pa-cvlkefmm1hkkc90m8vq0', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response body.'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '585657D2-1C20-5B8A-AF17-D727C6490BE4',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'data' => [
- 'description' => 'The response payload.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'pageNumber' => [
- 'description' => 'The page number of the returned page.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'pageSize' => [
- 'description' => 'The number of entries per page.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
- 'totalSize' => [
- 'description' => 'The total number of entries returned.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '18',
- ],
- 'items' => [
- 'description' => 'The list of services.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The information about the service.'."\n",
- '$ref' => '#/components/schemas/Service',
- ],
- ],
- ],
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '76BDFFC7-0764-5168-B047-92EE0BC7FDDE'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C6490BE4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 18,\\n \\"items\\": [\\n {\\n \\"serviceId\\": \\"\\",\\n \\"sourceType\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"namespace\\": \\"\\",\\n \\"addresses\\": [\\n \\"\\"\\n ],\\n \\"ports\\": [\\n {\\n \\"port\\": 0,\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\"\\n }\\n ],\\n \\"unhealthyEndpoints\\": [\\n \\"\\"\\n ],\\n \\"outlierEndpoints\\": [\\n \\"\\"\\n ],\\n \\"healthCheck\\": {\\n \\"protocol\\": \\"TCP\\",\\n \\"timeout\\": 0,\\n \\"interval\\": 0,\\n \\"healthyThreshold\\": 0,\\n \\"unhealthyThreshold\\": 0,\\n \\"httpPath\\": \\"\\",\\n \\"httpHost\\": \\"\\",\\n \\"enable\\": true\\n },\\n \\"healthStatus\\": \\"\\",\\n \\"qualifier\\": \\"LATEST\\",\\n \\"createTimestamp\\": 0,\\n \\"updateTimestamp\\": 0,\\n \\"protocol\\": \\"HTTP\\",\\n \\"gatewayId\\": \\"gw-xxxx\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"groupName\\": \\"publich\\",\\n \\"aiServiceConfig\\": {\\n \\"provider\\": \\"qwen\\",\\n \\"address\\": \\"https://dashscope.aliyun.com\\",\\n \\"enableHealthCheck\\": true,\\n \\"paiEASServiceConfig\\": {\\n \\"workspaceId\\": \\"\\",\\n \\"serviceId\\": \\"\\",\\n \\"serviceName\\": \\"\\",\\n \\"endpointType\\": \\"\\"\\n },\\n \\"bedrockServiceConfig\\": {\\n \\"awsRegion\\": \\"\\",\\n \\"awsAccessKey\\": \\"\\",\\n \\"awsSecretKey\\": \\"\\"\\n },\\n \\"ApiKeyGenerateMode\\": \\"\\",\\n \\"defaultModelName\\": \\"\\",\\n \\"enableOutlierDetection\\": true,\\n \\"vertexServiceConfig\\": {\\n \\"vertexAuthKey\\": \\"\\",\\n \\"vertexRegion\\": \\"\\",\\n \\"vertexProjectId\\": \\"\\",\\n \\"vertexAuthServiceName\\": \\"\\",\\n \\"geminiSafetySetting\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"vertexTokenRefreshAhead\\": 0\\n },\\n \\"protocols\\": [\\n \\"OpenAI/v1\\"\\n ],\\n \\"apiKeys\\": [\\n \\"\\"\\n ],\\n \\"compatibleProtocols\\": [\\n \\"\\"\\n ]\\n },\\n \\"labelDetails\\": [\\n {\\n \\"key\\": \\"\\",\\n \\"values\\": [\\n \\"\\"\\n ]\\n }\\n ],\\n \\"agentServiceConfig\\": {\\n \\"address\\": \\"https://dashscope.aliyuncs.com/api/v1\\",\\n \\"dashScopeConfig\\": {\\n \\"appCredentials\\": [\\n {\\n \\"apiKey\\": \\"\\",\\n \\"appId\\": \\"\\"\\n }\\n ]\\n },\\n \\"enableHealthCheck\\": true,\\n \\"provider\\": \\"\\",\\n \\"difyConfig\\": {\\n \\"botType\\": \\"\\",\\n \\"apiKey\\": \\"\\"\\n },\\n \\"enableOutlierDetection\\": true,\\n \\"customConfig\\": {\\n \\"apiKey\\": \\"\\",\\n \\"apiKeyGenerateMode\\": \\"\\"\\n },\\n \\"protocols\\": [\\n \\"DashScope\\"\\n ]\\n },\\n \\"expressType\\": \\"StartExecution\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'ListServices',
- 'translator' => 'machine',
- ],
- 'UpdateService' => [
- 'summary' => 'Updates a service. You can call this operation to update the health check, DNS domain name, and fixed address configurations of a service.',
- 'path' => '/v1/services/{serviceId}',
- 'methods' => [
- 'put',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Delete a plugin mount',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeletePluginAttachment'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeletePluginAttachment',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"76BDFFC7-0764-5168-B047-92EE0BC7FDDE\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'DeletePluginClass' => [
+ 'summary' => 'DeletePluginClass',
+ 'path' => '/v1/plugin-classes/{pluginClassId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '237752',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayNPQVBL',
- ],
+ 'abilityTreeNodes' => ['FEATUREapigateway216K2A'],
],
'parameters' => [
[
- 'name' => 'serviceId',
+ 'name' => 'pluginClassId',
'in' => 'path',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'svc-cr6pk4tlhtgm58e***',
- ],
+ 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'example' => 'pls-a1b2c3d4e5f6', 'title' => ''],
],
- [
- 'name' => 'body',
- 'in' => 'body',
- 'style' => 'json',
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The request body.'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'addresses' => [
- 'description' => 'The list of domain names or fixed addresses.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The domain name or fixed address.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '127.0.0.1:8080',
- ],
- 'required' => false,
- ],
- 'healthCheckConfig' => [
- 'description' => 'The health check configurations.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'enable' => [
- 'description' => 'Specifies whether to enable health checks.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
- 'protocol' => [
- 'description' => 'The protocol over which the system performs health checks.'."\n"
- ."\n"
- .'Valid values:'."\n"
- ."\n"
- .'* TCP'."\n"
- .'* HTTP'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'TCP' => 'TCP',
- 'HTTP' => 'HTTP',
- ],
- 'example' => 'HTTP',
- ],
- 'timeout' => [
- 'description' => 'The timeout period for a health check response. Unit: seconds'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '2',
- ],
- 'interval' => [
- 'description' => 'The health check interval. Unit: seconds'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '2',
- ],
- 'healthyThreshold' => [
- 'description' => 'The healthy threshold.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '2',
- ],
- 'unhealthyThreshold' => [
- 'description' => 'The unhealthy threshold.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '22',
- ],
- 'httpPath' => [
- 'description' => 'The request path of health checks. This parameter is required if the health check protocol is HTTP.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '/healthz',
- ],
- 'httpHost' => [
- 'description' => 'The domain name that you want to use for health checks. Optional. This parameter is available if the health check protocol is HTTP.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'dev.itemcener.com',
- ],
- 'expectedStatuses' => [
- 'description' => 'The normal status codes to be returned. This parameter is required if the health check protocol is HTTP.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The normal status code to be returned.'."\n"
- ."\n"
- .'Valid values:'."\n"
- ."\n"
- .'* 200: http\\_2xx'."\n"
- .'* 300: http\\_3xx'."\n"
- .'* 400: http\\_4xx'."\n"
- .'* 500: http\\_5xx'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 200 => 'http_2xx',
- 300 => 'http_3xx',
- 400 => 'http_4xx',
- 500 => 'http_5xx',
- ],
- 'example' => '200',
- ],
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
- 'protocol' => [
- 'description' => 'The service protocol.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'HTTP',
- ],
- 'aiServiceConfig' => [
- 'description' => 'The AI service configurations.'."\n",
- 'required' => false,
- '$ref' => '#/components/schemas/AiServiceConfig',
- ],
- 'agentServiceConfig' => [
- 'description' => 'The agent service configurations.'."\n",
- 'required' => false,
- '$ref' => '#/components/schemas/AgentServiceConfig',
- ],
- 'dnsServers' => [
- 'description' => 'A DNS service address.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'A DNS service address.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '1.1.1.1',
- ],
- 'required' => false,
- ],
- 'ports' => [
- 'description' => 'The port information.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The port information.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'name' => [
- 'description' => 'The port name.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'catalog',
- ],
- 'port' => [
- 'description' => 'The port.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '80',
- ],
- 'protocol' => [
- 'description' => 'The protocol.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TCP|UDP',
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- ],
- 'healthyPanicThreshold' => [
- 'description' => 'The health check threshold.'."\n",
- 'type' => 'number',
- 'format' => 'float',
- 'required' => false,
- 'example' => '80',
- ],
- 'outlierDetectionConfig' => [
- 'description' => 'The passive health check configurations.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'enable' => [
- 'description' => 'enable'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
- 'baseEjectionTime' => [
- 'description' => 'The initial isolation duration after a node is isolated (e.g., 30 seconds). The isolation time is calculated as: k \\* base_ejection_time (with k initially set to 1). Each subsequent isolation increases the isolation time (k is incremented by 1), while consecutive healthy checks gradually decrease the isolation time (k is decremented by 1).'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '30',
- ],
- 'failurePercentageThreshold' => [
- 'description' => 'When the request failure rate of a node reaches this threshold, the system triggers the isolation mechanism of the node.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '80',
- ],
- 'failurePercentageMinimumHosts' => [
- 'description' => 'The panic threshold.'."\n"
- ."\n"
- .'When the proportion of healthy nodes in the service is greater than the panic threshold, health checks take effect normally, and requests are only sent to healthy nodes, not to ejected nodes. When the proportion of healthy nodes in the service is less than or equal to the panic threshold, health checks are effectively disabled, and requests are sent to all nodes, including those that have been ejected nodes.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
- 'interval' => [
- 'description' => 'The detection interval.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '30',
- ],
- ],
- 'required' => false,
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '3699C3E4-19D8-5475-A9B8-4524E6C3D855'],
+ 'code' => ['type' => 'string', 'description' => '', 'example' => '200', 'title' => ''],
+ 'message' => ['type' => 'string', 'description' => '', 'example' => 'success', 'title' => ''],
],
- 'required' => false,
+ 'example' => '',
],
],
],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3699C3E4-19D8-5475-A9B8-4524E6C3D855\\",\\n \\"code\\": \\"200\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ 'title' => 'DeletePluginClass',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [],
+ ],
+ 'DeletePolicy' => [
+ 'summary' => 'Deletes a policy.',
+ 'path' => '/v2/policies/{policyId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '262551',
+ 'abilityTreeNodes' => ['FEATUREapigatewayOZOKBY'],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'policyId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The policy ID.', 'type' => 'string', 'required' => true, 'example' => 'p-cq7l5s5bblhtgi6qas***'],
+ ],
+ ],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
+ 'title' => '',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'B725275B-50C6-5A49-A9FD-F0332FCB3351',
- ],
- 'code' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '393E2630-DBE7-5221-AB35-9E7406754***'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"B725275B-50C6-5A49-A9FD-F0332FCB3351\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'UpdateService',
- ],
- 'DeleteService' => [
- 'summary' => 'Deletes a service.',
- 'path' => '/v1/services/{serviceId}',
- 'methods' => [
- 'delete',
+ 'title' => 'Delete a policy',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'apig:DeletePolicy',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"393E2630-DBE7-5221-AB35-9E7406754***\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'DeletePolicyAttachment' => [
+ 'summary' => 'Deletes a policy attachment.',
+ 'path' => '/v1/policy-attachments/{policyAttachmentId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
- 'abilityTreeCode' => '237763',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayNPQVBL',
- ],
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '262556',
+ 'abilityTreeNodes' => ['FEATUREapigatewayOZOKBY'],
],
'parameters' => [
[
- 'name' => 'serviceId',
+ 'name' => 'policyAttachmentId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The service ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'svc-cr6pk4tlhtgm***',
- ],
+ 'schema' => ['title' => '', 'description' => 'The policy attachment ID.', 'type' => 'string', 'required' => true, 'example' => 'pr-ctd4j9mmahko5fb4***'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '3C3B9A12-3868-5EB9-8BEA-F99E03DD125C',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.',
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'CE857A85-251D-5018-8103-A38957D71***'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'title' => 'Delete a policy attachment',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3C3B9A12-3868-5EB9-8BEA-F99E03DD125C\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'DeleteService',
- ],
- 'CreateServiceVersion' => [
- 'summary' => 'Creates a service version.',
- 'path' => '/v1/services/{serviceId}/versions',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'apig:DeletePolicyAttachment',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CE857A85-251D-5018-8103-A38957D71***\\",\\n \\"code\\": \\"200\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'DeleteSecret' => [
+ 'path' => '/v1/secrets/{secretId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '238203',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayNPQVBL',
- ],
+ 'abilityTreeCode' => '280148',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
],
'parameters' => [
[
- 'name' => 'serviceId',
+ 'name' => 'secretId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The service ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'gs-cpvj7dtlh******',
- ],
- ],
- [
- 'name' => 'body',
- 'in' => 'body',
- 'style' => 'json',
- 'schema' => [
- 'description' => 'The request body.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'name' => [
- 'description' => 'The version name.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'v1',
- ],
- 'labels' => [
- 'description' => 'The service tags.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The details of the tag.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'key' => [
- 'description' => 'The tag key.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'topology.kubernetes.io/zone',
- ],
- 'value' => [
- 'description' => 'The tag value.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cn-hangzhou-j',
- ],
- ],
- 'required' => false,
- ],
- 'required' => true,
- ],
- ],
- 'required' => false,
- ],
+ 'schema' => ['description' => 'The key ID.', 'type' => 'string', 'required' => false, 'example' => 'sec-d5e6shmm1hkoxxxxxxxxx', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response parameters.'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '0B373A13-9BB8-5068-9C94-AD6D39E6BBA2',
- ],
- 'message' => [
- 'description' => 'The message returned.'."\n",
- 'type' => 'string',
- 'example' => 'Success',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'DD4F1D33-7267-5596-8F5D-C593xxxxxxxx'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Delete a key value',
+ 'summary' => 'Deletes a key value.',
+ 'description' => 'The operation supports creating multiple services.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0B373A13-9BB8-5068-9C94-AD6D39E6BBA2\\",\\n \\"message\\": \\"Success\\",\\n \\"code\\": \\"Ok\\"\\n}","type":"json"}]',
- 'title' => 'CreateServiceVersion',
- ],
- 'UpdateServiceVersion' => [
- 'summary' => 'Updates a service version.',
- 'path' => '/v1/services/{serviceId}/versions/{name}',
- 'methods' => [
- 'put',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteSecret',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:secret/{#SecretId}'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'https',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"DD4F1D33-7267-5596-8F5D-C593xxxxxxxx\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
+ ],
+ 'DeleteService' => [
+ 'summary' => 'Deletes a service.',
+ 'path' => '/v1/services/{serviceId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
- 'riskType' => 'none',
+ 'operationType' => 'none',
+ 'riskType' => 'high',
'chargeType' => 'free',
- 'abilityTreeCode' => '238219',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayNPQVBL',
- ],
+ 'abilityTreeCode' => '237763',
+ 'abilityTreeNodes' => ['FEATUREapigatewayNPQVBL'],
],
'parameters' => [
[
'name' => 'serviceId',
'in' => 'path',
- 'schema' => [
- 'title' => '服务ID。',
- 'description' => 'The service ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'svc-xxx',
- ],
- ],
- [
- 'name' => 'name',
- 'in' => 'path',
- 'schema' => [
- 'title' => '版本名称。',
- 'description' => 'The version name.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'v1',
- ],
- ],
- [
- 'name' => 'body',
- 'in' => 'body',
- 'style' => 'json',
- 'schema' => [
- 'description' => 'The request body.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'labels' => [
- 'title' => '标签列表。',
- 'description' => 'The list of tags.'."\n",
- 'type' => 'array',
- 'items' => [
- 'title' => '单个标签配置。',
- 'description' => 'The tag configurations.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'key' => [
- 'title' => '标签键。',
- 'description' => 'The tag key.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'topology.kubernetes.io/zone',
- ],
- 'value' => [
- 'title' => '标签值。',
- 'description' => 'The tag value.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cn-hangzhou-k',
- ],
- ],
- 'required' => false,
- ],
- 'required' => true,
- ],
- ],
- 'required' => false,
- ],
+ 'schema' => ['description' => 'The service ID.', 'type' => 'string', 'required' => false, 'example' => 'svc-cr6pk4tlhtgm***', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response parameters.'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'A60EE5CA-1294-532A-9775-8D2FD1C6EFBF',
- ],
- 'message' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'code' => [
- 'description' => 'The status code returned.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '3C3B9A12-3868-5EB9-8BEA-F99E03DD125C'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Delete a service',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"A60EE5CA-1294-532A-9775-8D2FD1C6EFBF\\",\\n \\"message\\": \\"success\\",\\n \\"code\\": \\"Ok\\"\\n}","type":"json"}]',
- 'title' => 'UpdateServiceVersion',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteService',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Service', 'arn' => 'acs:apig:{#regionId}:{#accountId}:service/{#ServiceId}'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3C3B9A12-3868-5EB9-8BEA-F99E03DD125C\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
],
'DeleteServiceVersion' => [
'summary' => 'Deletes a service version.',
'path' => '/v1/services/{serviceId}/versions/{name}',
- 'methods' => [
- 'delete',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
@@ -15306,995 +8344,1231 @@
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '238221',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayNPQVBL',
- ],
+ 'abilityTreeNodes' => ['FEATUREapigatewayNPQVBL'],
],
'parameters' => [
[
'name' => 'serviceId',
'in' => 'path',
- 'schema' => [
- 'title' => '服务ID。',
- 'description' => 'The service ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'svc-xxx',
- ],
+ 'schema' => ['title' => '', 'description' => 'The service ID.', 'type' => 'string', 'required' => true, 'example' => 'svc-xxx'],
],
[
'name' => 'name',
'in' => 'path',
- 'schema' => [
- 'title' => '版本名称。',
- 'description' => 'The version name.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'v1',
- ],
+ 'schema' => ['title' => '', 'description' => 'The version name.', 'type' => 'string', 'required' => true, 'example' => 'v1'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response parameters.'."\n",
+ 'title' => '',
+ 'description' => 'The response.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'A1994B10-C6A8-58FA-8347-6A08B0D4EFDE',
- ],
- 'message' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'code' => [
- 'description' => 'The status code returned.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'A1994B10-C6A8-58FA-8347-6A08B0D4EFDE'],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Delete a service version',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteServiceVersion'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteServiceVersion',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Service', 'arn' => 'acs:apig:{#regionId}:{#accountId}:service/{#ServiceId}'],
+ ],
+ ],
+ ],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"A1994B10-C6A8-58FA-8347-6A08B0D4EFDE\\",\\n \\"message\\": \\"success\\",\\n \\"code\\": \\"Ok\\"\\n}","type":"json"}]',
- 'title' => 'DeleteServiceVersion',
],
- 'CreateSource' => [
- 'summary' => 'Creates a service source.',
- 'path' => '/v1/sources',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'DeleteSource' => [
+ 'summary' => 'Deletes a service source.',
+ 'path' => '/v1/sources/{sourceId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '237746',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayNPQVBL',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '237748',
+ 'abilityTreeNodes' => ['FEATUREapigatewayVWMWWM', 'FEATUREapigatewayAGWW5S'],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'sourceId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The source ID.', 'type' => 'string', 'required' => false, 'example' => 'src-crdddallhtgtriah***', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => '',
+ 'description' => 'Response schema',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'C67DED2B-F19B-5BEC-88C1-D6EB854CD0D4'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ ],
+ 'example' => '',
+ ],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Delete a service source',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteSource'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteSource',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Source', 'arn' => 'acs:apig:{#regionId}:{#accountId}:source/{#SourceId}'],
+ ],
+ ],
],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"C67DED2B-F19B-5BEC-88C1-D6EB854CD0D4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'DeployHttpApi' => [
+ 'summary' => 'Publishes an HTTP API. This includes REST APIs and routes within HTTP APIs.',
+ 'path' => '/v1/http-apis/{httpApiId}/deploy',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'high',
+ 'chargeType' => 'paid',
+ 'abilityTreeCode' => '237786',
+ 'abilityTreeNodes' => ['FEATUREapigatewayTZMIOF'],
+ ],
'parameters' => [
[
+ 'name' => 'httpApiId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'HTTP API ID。', 'type' => 'string', 'example' => 'api-cr68g1dlhtgm31fb***', 'required' => false],
+ ],
+ [
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
- 'description' => 'The request body.'."\n",
+ 'title' => '',
+ 'description' => 'The request body.',
'type' => 'object',
'properties' => [
- 'gatewayId' => [
- 'description' => 'The gateway instance ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cq7l5s5lhtgi6q***',
- ],
- 'type' => [
- 'description' => 'The source type. Valid values:'."\n"
- ."\n"
- .'* MSE_NACOS: MSE Nacos'."\n"
- .'* K8S: Container Service for Kubernetes (ACK)'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'K8S' => '',
- 'MSE_NACOS' => 'MSE Nacos',
- ],
- 'example' => 'MSE_NACOS',
- ],
- 'k8sSourceConfig' => [
- 'description' => 'The source configuration when the source type is K8S.'."\n",
+ 'routeId' => ['title' => '', 'description' => 'The route ID. Required when publishing a route of an HTTP API.', 'type' => 'string', 'example' => 'hr-cr82undlhtgrl***', 'required' => false],
+ 'restApiConfig' => [
+ 'title' => '',
+ 'description' => 'The REST API deployment configuration. Required when the HTTP API being published is a REST API.',
'type' => 'object',
'properties' => [
- 'clusterId' => [
- 'description' => 'The ID of the ACK cluster.'."\n",
- 'type' => 'string',
+ 'revisionId' => ['title' => '', 'description' => 'The historical version number. If this field is specified, the publish information is based on the historical version.', 'type' => 'string', 'example' => 'apr-xxx'."\n", 'required' => false],
+ 'description' => ['title' => '', 'description' => 'The publish description.', 'type' => 'string', 'example' => '用户服务API发布。', 'required' => false],
+ 'environment' => [
+ 'title' => '',
+ 'description' => 'The publish environment configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'environmentId' => ['title' => '', 'description' => 'The environment ID.', 'type' => 'string', 'deprecated' => true, 'example' => 'env-cpqnr6tlhtgubc***', 'required' => false],
+ 'customDomainIds' => [
+ 'title' => '',
+ 'description' => 'The list of custom domain names.',
+ 'type' => 'array',
+ 'items' => ['title' => '', 'description' => 'The domain name ID.', 'type' => 'string', 'example' => 'd-cr62ts5lhtgln***', 'required' => false],
+ 'required' => false,
+ 'example' => '',
+ ],
+ 'backendScene' => [
+ 'title' => '',
+ 'description' => 'The API publish scenario.',
+ 'enumValueTitles' => ['SingleService' => 'single service.', 'MultiServiceByRatio' => 'canary release by ratio.', 'MultiServiceByContent' => 'by content.', 'Mock' => 'Mock'],
+ 'type' => 'string',
+ 'deprecated' => true,
+ 'example' => 'SingleService',
+ 'required' => false,
+ ],
+ 'serviceConfigs' => [
+ 'title' => '',
+ 'description' => 'The existing service configurations. In the single-service scenario, only one entry is allowed. In scenarios such as by-ratio or by-content, multiple entries are allowed.',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '',
+ 'description' => 'The existing service configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'serviceId' => ['title' => '', 'description' => 'The service ID.', 'type' => 'string', 'example' => 'svc-cr6pk4tlhtgm58e***', 'required' => false],
+ 'protocol' => [
+ 'title' => '',
+ 'description' => 'The service protocol. Valid values:'."\n"
+ .'- HTTP'."\n"
+ .'- HTTPS',
+ 'enumValueTitles' => ['HTTPS' => 'HTTPS protocol.', 'HTTP' => 'HTTP protocol.'],
+ 'type' => 'string',
+ 'example' => 'HTTP',
+ 'required' => false,
+ ],
+ 'port' => ['title' => '', 'description' => 'The service port. Do not specify this parameter for dynamic ports.', 'type' => 'integer', 'format' => 'int32', 'example' => '8080', 'required' => false],
+ 'weight' => ['title' => '', 'description' => 'The weight. Valid values: 1 to 100. This parameter takes effect only in the by-ratio scenario.', 'type' => 'integer', 'format' => 'int32', 'example' => '49', 'required' => false],
+ 'version' => ['title' => '', 'description' => 'The service version.', 'type' => 'string', 'example' => 'v1', 'required' => false],
+ 'match' => ['title' => '', 'description' => 'The match condition configuration related to API publishing.', 'example' => '{\\"change_order_revision\\":\\"3.657.33_fc-hz-yunqi.1662568293908382_faas-eerouter\\"}', '$ref' => '#/components/schemas/HttpApiBackendMatchConditions', 'required' => false],
+ ],
+ 'required' => false,
+ 'example' => '',
+ ],
+ 'deprecated' => true,
+ 'required' => false,
+ 'example' => '',
+ ],
+ ],
'required' => false,
- 'example' => 'c3fbe6caaaece4062b*****',
+ 'example' => '',
],
- 'authorizeSecurityGroupRules' => [
- 'description' => 'The security group rules.'."\n",
+ 'operationIds' => [
+ 'description' => 'The operation IDs.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The parameter.', 'type' => 'string', 'required' => false, 'example' => 'xxxxxx', 'title' => ''],
+ 'deprecated' => true,
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'gatewayId' => ['title' => '', 'description' => 'The gateway ID.', 'type' => 'string', 'example' => 'gw-cvn2u46m1hkun04oll8g', 'required' => false],
+ 'operationDeployments' => [
+ 'title' => '',
+ 'description' => 'The operation-level deployment control list.',
'type' => 'array',
'items' => [
- 'description' => 'The security group rule configurations.'."\n",
+ 'title' => '',
+ 'description' => 'The parameter.',
'type' => 'object',
'properties' => [
- 'securityGroupId' => [
- 'description' => 'The ID of a security group.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'sg-bp14w4fa4j***',
- ],
- 'portRanges' => [
- 'description' => 'The list of port ranges.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The port range.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '8080/8082',
- ],
- 'required' => false,
- ],
- 'description' => [
- 'description' => 'The rule description.'."\n",
+ 'operationId' => ['title' => '', 'description' => 'The unique identifier of the operation.', 'type' => 'string', 'example' => 'op-xxx', 'required' => false],
+ 'action' => [
+ 'title' => '',
+ 'description' => 'The action type.',
+ 'enumValueTitles' => ['Unpublish' => 'Unpublishes the operation and removes it from the environment.', 'Publish' => 'Publishes the operation and deploys it to the specified environment.'],
'type' => 'string',
+ 'example' => 'Publish',
+ 'enum' => ['Publish', 'Unpublish'],
'required' => false,
- 'example' => '',
],
],
'required' => false,
+ 'example' => '',
],
'required' => false,
+ 'example' => '',
],
],
'required' => false,
+ 'example' => '',
],
- 'nacosSourceConfig' => [
- 'description' => 'The source configuration when the source type is MSE_NACOS.'."\n",
+ 'httpApiConfig' => [
+ 'description' => 'The HTTP API deployment configuration.',
'type' => 'object',
'properties' => [
- 'instanceId' => [
- 'description' => 'The Nacos instance ID.'."\n",
- 'type' => 'string',
+ 'gatewayId' => ['title' => '', 'description' => 'The gateway ID.', 'type' => 'string', 'example' => 'gw-csrhgfmm1hknf0hu6o3g', 'required' => false],
+ 'routeIds' => [
+ 'description' => 'The route IDs.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The parameter.', 'type' => 'string', 'required' => false, 'example' => 'xxxxxx', 'title' => ''],
'required' => false,
- 'example' => 'mse-cn-0dw3w***',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'deprecated' => true,
'required' => false,
- ],
- 'resourceGroupId' => [
- 'description' => 'The resource group ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rg-xxx',
+ 'title' => '',
+ 'example' => '',
],
],
'required' => false,
+ 'example' => '{\'key\': \'value\'}',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
+ 'title' => '',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => '',
- 'type' => 'string',
- 'example' => '393E2630-DBE7-5221-AB35-9E740675491A',
- ],
- 'code' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '0C2D1C68-0D93-5561-8EE6-FDB7BF067A30'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => '',
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'sourceId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'src-crdddallhtgt***',
- ],
+ 'httpApiId' => ['description' => 'HTTP API ID。', 'type' => 'string', 'example' => 'api-xxx', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0C2D1C68-0D93-5561-8EE6-FDB7BF067A30\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"httpApiId\\": \\"api-xxx\\"\\n }\\n}","type":"json"}]',
+ 'title' => 'Publish an API',
+ 'changeSet' => [
+ ['createdAt' => '2026-04-21T08:47:34.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2026-02-09T13:46:05.000Z', 'description' => 'Request parameters changed'],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"393E2630-DBE7-5221-AB35-9E740675491A\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"sourceId\\": \\"src-crdddallhtgt***\\"\\n }\\n}","type":"json"}]',
- 'title' => 'CreateSource',
- ],
- 'GetSource' => [
- 'summary' => 'Obtains the details of a service source.',
- 'path' => '/v1/sources/{sourceId}',
- 'methods' => [
- 'get',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeployHttpApi'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeployHttpApi',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
],
+ ],
+ 'DeployMcpServer' => [
+ 'summary' => 'Publishes an MCP server.',
+ 'path' => '/v1/mcp-servers/{mcpServerId}/deploy',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'get',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '247800',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayNPQVBL',
- ],
+ 'abilityTreeCode' => '281132',
+ 'abilityTreeNodes' => ['FEATUREapigatewayMD7H1W'],
],
'parameters' => [
[
- 'name' => 'sourceId',
+ 'name' => 'mcpServerId',
'in' => 'path',
- 'schema' => [
- 'title' => '资源一级ID',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'src-d1596kem1hkv3o72qkdg',
- ],
+ 'schema' => ['description' => 'MCP Server ID', 'type' => 'string', 'required' => false, 'example' => 'mcp-adfefz24afg', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request'."\n",
- 'type' => 'string',
- 'example' => 'DE10E3C0-A676-5169-812D-6610AACBFAFF',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The response message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'data' => [
- 'description' => 'The response data.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'sourceId' => [
- 'description' => 'The source ID.'."\n",
- 'type' => 'string',
- 'example' => 'src-crdddallhtgt***',
- ],
- 'name' => [
- 'description' => 'The name.'."\n",
- 'type' => 'string',
- 'example' => 'import-test',
- ],
- 'k8SSourceInfo' => [
- 'description' => 'Kubernetes source information.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'clusterId' => [
- 'description' => 'The ID of the Container Service for Kubernetes (ACK) cluster.'."\n",
- 'type' => 'string',
- 'example' => 'c2d290b2d8b5d4935864cace5f0173f31',
- ],
- ],
- ],
- 'nacosSourceInfo' => [
- 'description' => 'The source information when the source type is MSE_NACOS.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'instanceId' => [
- 'description' => 'The Nacos instance ID.'."\n",
- 'type' => 'string',
- 'example' => 'hgprecn-cn-cfn47q7oh001',
- ],
- 'clusterId' => [
- 'description' => 'The cluster ID.'."\n",
- 'type' => 'string',
- 'example' => 'fluss-cn-w7k4hann601',
- ],
- 'address' => [
- 'description' => 'The endpoint of the Nacos instance.'."\n",
- 'type' => 'string',
- 'example' => 'mse',
- ],
- ],
- ],
- 'createTimestamp' => [
- 'description' => 'The creation timestamp.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- ],
- 'updateTimestamp' => [
- 'description' => 'The update timestamp.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- ],
- 'gatewayId' => [
- 'description' => 'The gateway ID.'."\n",
- 'type' => 'string',
- 'example' => 'gw-cq2vundlhtg***',
- ],
- 'type' => [
- 'description' => 'The type.'."\n",
- 'type' => 'string',
- 'example' => 'K8S',
- ],
- 'resourceGroupId' => [
- 'description' => 'The resource group ID.'."\n",
- 'type' => 'string',
- 'example' => 'rg-aekz4us4iruleja',
- ],
- ],
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '393E2630-DBE7-5221-AB35-9E740675491A'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Publish an MCP server',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"DE10E3C0-A676-5169-812D-6610AACBFAFF\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"sourceId\\": \\"src-crdddallhtgt***\\",\\n \\"name\\": \\"import-test\\",\\n \\"k8SSourceInfo\\": {\\n \\"clusterId\\": \\"c2d290b2d8b5d4935864cace5f0173f31\\"\\n },\\n \\"nacosSourceInfo\\": {\\n \\"instanceId\\": \\"hgprecn-cn-cfn47q7oh001\\",\\n \\"clusterId\\": \\"fluss-cn-w7k4hann601\\",\\n \\"address\\": \\"mse\\"\\n },\\n \\"createTimestamp\\": 1719386834548,\\n \\"updateTimestamp\\": 1719386834548,\\n \\"gatewayId\\": \\"gw-cq2vundlhtg***\\",\\n \\"type\\": \\"K8S\\",\\n \\"resourceGroupId\\": \\"rg-aekz4us4iruleja\\"\\n }\\n}","type":"json"}]',
- 'title' => 'GetSource',
- ],
- 'DeleteSource' => [
- 'summary' => 'Deletes a service source.',
- 'path' => '/v1/sources/{sourceId}',
- 'methods' => [
- 'delete',
- ],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeployMcpServer',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"393E2630-DBE7-5221-AB35-9E740675491A\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'DescribeRegions' => [
+ 'summary' => 'Queries the regions where the cloud-native API gateway is available for the current account.',
+ 'path' => '/v1/regions',
+ 'methods' => ['get', 'post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'write',
+ 'consumes' => ['application/x-www-form-urlencoded', 'application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '237748',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayVWMWWM',
- 'FEATUREapigatewayAGWW5S',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREapigatewayUWNKMC'],
+ 'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'sourceId',
- 'in' => 'path',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'src-crdddallhtgtriah***',
- ],
+ 'name' => 'language',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The language of the response. Valid values: zh, en.', 'type' => 'string', 'required' => false, 'example' => 'zh'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Response schema'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'C67DED2B-F19B-5BEC-88C1-D6EB854CD0D4',
- ],
- 'code' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'success',
+ 'requestId' => ['title' => '', 'description' => 'The unique ID of the request.', 'type' => 'string', 'example' => 'E6BD6C79-32B1-5D7E-A89A-93C5A6B7xxxx'],
+ 'code' => ['title' => '', 'description' => 'The response status code.', 'type' => 'string', 'example' => '200'],
+ 'message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'success'],
+ 'data' => [
+ 'title' => '',
+ 'description' => 'The list of regions.',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '',
+ 'description' => 'The region details.',
+ 'type' => 'object',
+ 'properties' => [
+ 'regionId' => ['title' => '', 'description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou'],
+ 'localName' => ['title' => '', 'description' => 'The display name of the region.', 'type' => 'string', 'example' => 'China (Beijing)'],
+ ],
+ 'example' => '',
+ ],
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Query APIG region list',
+ 'changeSet' => [
+ ['createdAt' => '2026-06-15T11:25:26.000Z', 'description' => 'Response parameters changed'],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"C67DED2B-F19B-5BEC-88C1-D6EB854CD0D4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'DeleteSource',
- ],
- 'CreateGateway' => [
- 'summary' => 'Creates a cloud-native gateway.',
- 'path' => '/v1/gateways',
- 'methods' => [
- 'post',
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DescribeRegions',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"E6BD6C79-32B1-5D7E-A89A-93C5A6B7xxxx\\",\\n \\"code\\": \\"200\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": [\\n {\\n \\"regionId\\": \\"cn-hangzhou\\",\\n \\"localName\\": \\"China (Beijing)\\"\\n }\\n ]\\n}","type":"json"}]',
+ ],
+ 'ExportHttpApi' => [
+ 'summary' => 'Exports a specified HTTP API.',
+ 'path' => '/v1/http-apis/{httpApiId}/export',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'write',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
- 'riskType' => 'none',
+ 'operationType' => 'none',
+ 'riskType' => 'high',
'chargeType' => 'paid',
- 'abilityTreeCode' => '220852',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayUWNKMC',
- ],
+ 'abilityTreeNodes' => ['FEATUREapigateway9WMX21'],
],
'parameters' => [
[
+ 'name' => 'httpApiId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'HTTP API ID。', 'type' => 'string', 'required' => true, 'example' => 'api-xxx'],
+ ],
+ [
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
- 'description' => 'The zone ID.'."\n",
+ 'title' => '',
+ 'description' => 'The export configuration.',
'type' => 'object',
'properties' => [
- 'name' => [
- 'description' => 'The ID of the vSwitch.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test-ceshi',
- ],
- 'chargeType' => [
- 'description' => 'The logging configurations.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'POSTPAY' => 'The Simple Log Service configurations.'."\n",
- 'PREPAY' => 'Indicates if enabled.'."\n",
- ],
- 'example' => 'POSTPAY',
- ],
- 'gatewayType' => [
- 'description' => 'The ID of the resource group.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'AI' => 'The tags.'."\n",
- 'API' => 'The tag value.'."\n",
- ],
- 'example' => 'API',
- ],
- 'spec' => [
- 'description' => 'The tag key.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'apigw.dev.x2',
- ],
- 'vpcId' => [
- 'description' => 'The tag value.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'vpc-zm0x16tomfiat1mk9f6rs',
- ],
- 'networkAccessConfig' => [
- 'description' => 'The gateway edition.',
- 'type' => 'object',
- 'properties' => [
- 'type' => [
- 'description' => '-',
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'InternetAndIntranet' => 'Schema of Response'."\n",
- 'Intranet' => 'The ID of the request.',
- 'Internet' => 'The status code.'."\n",
- ],
- 'example' => 'Internet',
- ],
- ],
+ 'gatewayId' => ['title' => '', 'description' => 'The gateway instance ID. This parameter is required when you export gateway extension information.', 'type' => 'string', 'example' => 'gw-xxx', 'required' => false],
+ 'operationIds' => [
+ 'title' => '',
+ 'description' => 'The IDs of specific operations to export when exporting a REST API.',
+ 'type' => 'array',
+ 'items' => ['title' => '', 'description' => 'The gateway extension information configuration.', 'type' => 'string', 'example' => 'op-xxxx', 'required' => false],
'required' => false,
+ 'example' => '',
],
- 'zoneConfig' => [
- 'description' => 'The status message.'."\n",
+ 'extensionConfig' => [
+ 'title' => '',
+ 'description' => 'Specifies whether to export the plug-in configuration.',
'type' => 'object',
'properties' => [
- 'selectOption' => [
- 'description' => 'The response payload.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'Auto' => 'The instance ID.'."\n",
- 'Manual' => '',
- ],
- 'example' => 'Manual',
- ],
- 'vSwitchId' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'vsw-xxx',
- ],
- 'zones' => [
- 'description' => '',
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'zoneId' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cn-wulanchabu-a',
- ],
- 'vSwitchId' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'vsw-xx',
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- ],
+ 'withPlugin' => ['title' => '', 'description' => 'Specifies whether to export the plug-in configuration.', 'type' => 'boolean', 'required' => false, 'example' => ''],
+ 'withPolicy' => ['title' => '', 'description' => 'Specifies whether to export the policy configuration.', 'type' => 'boolean', 'required' => false, 'example' => ''],
+ 'withService' => ['title' => '', 'description' => 'Specifies whether to export the backend service.', 'type' => 'boolean', 'required' => false, 'example' => ''],
+ 'withAuthConfig' => ['title' => '', 'description' => 'Specifies whether to export the consumer authorization configuration for operations or routes.', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => ''],
+ 'withAuthConsumer' => ['title' => '', 'description' => 'Specifies whether to export the authorized consumers.', 'type' => 'boolean', 'required' => false, 'example' => ''],
],
'required' => false,
+ 'example' => '',
],
- 'logConfig' => [
- 'description' => '',
+ ],
+ 'required' => false,
+ 'example' => '',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => '',
+ 'description' => 'The response.',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '4BACB05C-3FE2-588F-9148-700C5C026B74'],
+ 'code' => ['title' => '', 'description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok'],
+ 'message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'success'],
+ 'data' => [
+ 'title' => '',
+ 'description' => 'The API definition information.',
'type' => 'object',
'properties' => [
- 'sls' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'enable' => [
- 'description' => '',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
- ],
- 'required' => false,
- ],
+ 'specContentBase64' => ['title' => '', 'description' => 'The Base64-encoded API definition.', 'type' => 'string', 'example' => 'b3BlbmFwaTogMy4wLjAKaW5mbzoKICAgIHRpdGxlOiBkZW1vCiAgICBkZXNjcmlwdGlvbjogdGhpc2lzZGVtbwogICAgdmVyc2lvbjogIiIKcGF0aHM6CiAgICAvdXNlci97dXNlcklkfToKICAgICAgICBnZXQ6CiAgICAgICAgICAgIHN1bW1hcnk6IOiOt+WPlueUqOaIt+S/oeaBrwogICAgICAgICAgICBkZXNjcmlwdGlvbjog6I635Y+W55So5oi35L+h5oGvCiAgICAgICAgICAgIG9wZXJhdGlvbklkOiBHZXRVc2VySW5mbwogICAgICAgICAgICByZXNwb25zZXM6CiAgICAgICAgICAgICAgICAiMjAwIjoKICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjog5oiQ5YqfCiAgICAgICAgICAgICAgICAgICAgY29udGVudDoKICAgICAgICAgICAgICAgICAgICAgICAgYXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04OgogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NoZW1hOiBudWxsCnNlcnZlcnM6CiAgICAtIHVybDogaHR0cDovL2FwaS5leGFtcGxlLmNvbS92MQo='],
],
- 'required' => false,
- ],
- 'resourceGroupId' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rg-ahr5uil8raz0rq3b',
- ],
- 'tag' => [
- 'description' => '',
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'key' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'key',
- ],
- 'value' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'value',
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- ],
- 'gatewayEdition' => [
- 'title' => '网关实例版本:'."\n"
- ."\n"
- .'- 普通实例:Professional'."\n"
- ."\n"
- .'- Serverless:Serverless(当前只支持AI网关)',
- 'type' => 'string',
- 'required' => false,
- 'default' => 'Professional',
- 'example' => 'Professional',
+ 'example' => '',
],
],
- 'required' => false,
+ 'example' => '',
],
],
],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"4BACB05C-3FE2-588F-9148-700C5C026B74\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"specContentBase64\\": \\"b3BlbmFwaTogMy4wLjAKaW5mbzoKICAgIHRpdGxlOiBkZW1vCiAgICBkZXNjcmlwdGlvbjogdGhpc2lzZGVtbwogICAgdmVyc2lvbjogIiIKcGF0aHM6CiAgICAvdXNlci97dXNlcklkfToKICAgICAgICBnZXQ6CiAgICAgICAgICAgIHN1bW1hcnk6IOiOt+WPlueUqOaIt+S/oeaBrwogICAgICAgICAgICBkZXNjcmlwdGlvbjog6I635Y+W55So5oi35L+h5oGvCiAgICAgICAgICAgIG9wZXJhdGlvbklkOiBHZXRVc2VySW5mbwogICAgICAgICAgICByZXNwb25zZXM6CiAgICAgICAgICAgICAgICAiMjAwIjoKICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjog5oiQ5YqfCiAgICAgICAgICAgICAgICAgICAgY29udGVudDoKICAgICAgICAgICAgICAgICAgICAgICAgYXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04OgogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NoZW1hOiBudWxsCnNlcnZlcnM6CiAgICAtIHVybDogaHR0cDovL2FwaS5leGFtcGxlLmNvbS92MQo=\\"\\n }\\n}","type":"json"}]',
+ 'title' => 'Export an HTTP API',
+ 'changeSet' => [
+ ['createdAt' => '2026-04-02T09:33:06.000Z', 'description' => 'Request parameters changed'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ExportHttpApi'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ExportHttpApi',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'GetConsumer' => [
+ 'summary' => 'Retrieves an API consumer.',
+ 'path' => '/v1/consumers/{consumerId}',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '248090',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'consumerId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The API consumer ID.', 'type' => 'string', 'required' => false, 'example' => 'cs-ctb92p6m1hkqu85iph8g', 'title' => ''],
+ ],
+ ],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
+ 'title' => '',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request',
- 'type' => 'string',
- 'example' => '9CDE3E69-69C2-5402-83AD-ACA80B1AF35B',
- ],
- 'code' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '880C61B3-7B90-5570-A3F7-D6D92C0E2D36'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => '',
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'gatewayId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'gw-cq2vundlhtg***',
+ 'consumerId' => ['description' => 'The API consumer ID.', 'type' => 'string', 'example' => 'cs-cvgbtk6m1hkji5sb8dr0', 'title' => ''],
+ 'name' => ['description' => 'The API consumer name.', 'type' => 'string', 'example' => 'consumer-1', 'title' => ''],
+ 'description' => ['description' => 'The description.', 'type' => 'string', 'example' => '测试专用消费者', 'title' => ''],
+ 'jwtIdentityConfig' => ['description' => 'The JWT identity authentication configuration.', '$ref' => '#/components/schemas/JwtIdentityConfig', 'title' => '', 'example' => ''],
+ 'apiKeyIdentityConfig' => ['description' => 'The API key identity authentication configuration.', '$ref' => '#/components/schemas/ApiKeyIdentityConfig', 'title' => '', 'example' => ''],
+ 'enable' => ['description' => 'Indicates whether the API consumer is enabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'deployStatus' => ['description' => 'The deployment status of the API in the current environment.', 'type' => 'string', 'example' => '""', 'title' => ''],
+ 'createTimestamp' => ['description' => 'The creation timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548', 'title' => ''],
+ 'updateTimestamp' => ['description' => 'The update timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548', 'title' => ''],
+ 'akSkIdentityConfigs' => [
+ 'description' => 'The AccessKey identity authentication configurations.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The parameter.', '$ref' => '#/components/schemas/AkSkIdentityConfig', 'title' => '', 'example' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'consumerGroups' => [
+ 'title' => '',
+ 'description' => 'The list of consumer groups to which the API consumer belongs.',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '',
+ 'description' => 'The consumer group item to which the API consumer belongs.',
+ 'type' => 'object',
+ 'properties' => [
+ 'consumerGroupId' => ['title' => '', 'description' => 'The consumer group ID.', 'type' => 'string', 'example' => 'csg-8c13d2b4f8a1'],
+ 'name' => ['title' => '', 'description' => 'The consumer group name.', 'type' => 'string', 'example' => 'api-consumer-group'],
+ 'description' => ['title' => '', 'description' => 'The consumer group description.', 'type' => 'string', 'example' => '用于线上 API 调用方分组'],
+ 'joinTimestamp' => ['title' => '', 'description' => 'The time when the API consumer joined the consumer group. The value is a UNIX timestamp in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1715769600000'],
+ ],
+ 'example' => '',
+ ],
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"880C61B3-7B90-5570-A3F7-D6D92C0E2D36\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"consumerId\\": \\"cs-cvgbtk6m1hkji5sb8dr0\\",\\n \\"name\\": \\"consumer-1\\",\\n \\"description\\": \\"测试专用消费者\\",\\n \\"jwtIdentityConfig\\": {\\n \\"type\\": \\"Jwt\\",\\n \\"secretType\\": \\"Symmetry\\",\\n \\"remoteJwks\\": \\"{\\\\\\"uri\\\\\\":\\\\\\"https://example.com/.well-known/jwks.json\\\\\\"}\\",\\n \\"jwks\\": \\"xxxx\\",\\n \\"jwtTokenConfig\\": {\\n \\"position\\": \\"HEADER\\",\\n \\"key\\": \\"Authorization\\",\\n \\"prefix\\": \\"test\\",\\n \\"pass\\": true\\n },\\n \\"jwtPayloadConfig\\": {\\n \\"payloadKeyName\\": \\"uid\\",\\n \\"payloadKeyValue\\": \\"2222\\"\\n },\\n \\"claimsToHeadersConfigs\\": [\\n {\\n \\"claim\\": \\"sub\\",\\n \\"header\\": \\"X-Consumer-Id\\",\\n \\"override\\": true\\n }\\n ]\\n },\\n \\"apiKeyIdentityConfig\\": {\\n \\"type\\": \\"Apikey\\",\\n \\"apikeySource\\": {\\n \\"source\\": \\"Default\\",\\n \\"value\\": \\"xxxx\\"\\n },\\n \\"credentials\\": [\\n {\\n \\"generateMode\\": \\"System\\",\\n \\"apikey\\": \\"xxxxx\\"\\n }\\n ]\\n },\\n \\"enable\\": true,\\n \\"deployStatus\\": \\"\\\\\\"\\\\\\"\\",\\n \\"createTimestamp\\": 1719386834548,\\n \\"updateTimestamp\\": 1719386834548,\\n \\"akSkIdentityConfigs\\": [\\n {\\n \\"type\\": \\"Jwt\\",\\n \\"generateMode\\": \\"System\\",\\n \\"ak\\": \\"xxxx\\",\\n \\"sk\\": \\"xxxx\\"\\n }\\n ],\\n \\"consumerGroups\\": [\\n {\\n \\"consumerGroupId\\": \\"csg-8c13d2b4f8a1\\",\\n \\"name\\": \\"api-consumer-group\\",\\n \\"description\\": \\"用于线上 API 调用方分组\\",\\n \\"joinTimestamp\\": 1715769600000\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"9CDE3E69-69C2-5402-83AD-ACA80B1AF35B\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"gatewayId\\": \\"gw-cq2vundlhtg***\\"\\n }\\n}","type":"json"}]',
- 'title' => 'CreateGateway',
- ],
- 'UpdateGatewayName' => [
- 'summary' => 'Changes the name of a Cloud-native API Gateway instance.',
- 'path' => '/v1/gateways/{gatewayId}/name',
- 'methods' => [
- 'put',
+ 'title' => 'Retrieve an API consumer',
+ 'changeSet' => [
+ ['createdAt' => '2026-01-23T09:12:29.000Z', 'description' => 'Response parameters changed'],
],
- 'schemes' => [
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetConsumer',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/{#ConsumerId}'],
+ ],
+ ],
+ ],
],
+ ],
+ 'GetConsumerAuthorizationRule' => [
+ 'summary' => 'Retrieves a consumer authorization rule.',
+ 'path' => '/v1/consumers/{consumerId}/authorization-rules/{consumerAuthorizationRuleId}',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'write',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayUWNKMC',
- ],
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '248110',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
],
'parameters' => [
[
- 'name' => 'gatewayId',
+ 'name' => 'consumerAuthorizationRuleId',
'in' => 'path',
- 'schema' => [
- 'description' => 'Modify Gateway Name',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cpv4sqdl****',
- ],
+ 'schema' => ['description' => 'The consumer authorization rule ID used to filter the API list. The API list in the response contains only authorized APIs.', 'type' => 'string', 'required' => false, 'example' => 'car-ctgdn8em1hko5krqq03g', 'title' => ''],
],
[
- 'name' => 'name',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'dev-itemcenter-router',
- ],
+ 'name' => 'consumerId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The consumer ID.', 'type' => 'string', 'required' => false, 'example' => 'cs-ctgdn2um1hkossul8gvg', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '585657D2-1C20-5B8A-AF17-D727C6490BE4',
- ],
- 'code' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '53102737-1E4E-5A8B-8E0A-4184B0959B84'],
+ 'consumerId' => ['description' => 'The consumer ID.', 'type' => 'string', 'example' => 'cs-ctgdn2um1hkossul8gvg', 'title' => ''],
+ 'consumerAuthorizationRuleId' => ['description' => 'The consumer authorization rule ID used to filter the API list. The API list in the response contains only authorized APIs.', 'type' => 'string', 'example' => 'car-ctgdn8em1hko5krqq03g', 'title' => ''],
+ 'apiInfo' => ['description' => 'The API information.', '$ref' => '#/components/schemas/HttpApiApiInfo', 'title' => '', 'example' => ''],
+ 'environmentInfo' => ['description' => 'The environment context.', '$ref' => '#/components/schemas/EnvironmentInfo', 'title' => '', 'example' => ''],
+ 'gatewayInfo' => ['description' => 'The gateway information.', '$ref' => '#/components/schemas/GatewayInfo', 'title' => '', 'example' => ''],
+ 'resourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'API', 'title' => ''],
+ 'expireStatus' => ['description' => 'The expiration status.', 'type' => 'string', 'example' => 'true', 'title' => ''],
+ 'expireMode' => ['description' => 'The expiration mode. Valid values:'."\n"
+ .'- LongTerm'."\n"
+ .'- ShortTerm', 'type' => 'string', 'example' => 'LongTerm', 'title' => ''],
+ 'expireTimestamp' => ['description' => 'The expiration time.', 'type' => 'integer', 'format' => 'int64', 'example' => '1750852089975', 'title' => ''],
+ 'createTimestamp' => ['description' => 'The creation timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1750852089975', 'title' => ''],
+ 'updateTimestamp' => ['description' => 'The update timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1750852089975', 'title' => ''],
+ 'deployStatus' => ['description' => 'The publish status of the API in the current environment.', 'type' => 'string', 'example' => '""', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Retrieve a consumer authorization rule',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetConsumerAuthorizationRule'],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C6490BE4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'UpdateGatewayName',
- 'translator' => 'machine',
- ],
- 'UpdateGatewayFeature' => [
- 'summary' => 'Updates the configuration of an instance feature parameter.',
- 'path' => '/v1/gateways/{gatewayId}/gateway-features/{name}',
- 'methods' => [
- 'put',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetConsumerAuthorizationRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/{#ConsumerId}'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'https',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"53102737-1E4E-5A8B-8E0A-4184B0959B84\\",\\n \\"consumerId\\": \\"cs-ctgdn2um1hkossul8gvg\\",\\n \\"consumerAuthorizationRuleId\\": \\"car-ctgdn8em1hko5krqq03g\\",\\n \\"apiInfo\\": {\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"basePath\\": \\"/v1\\",\\n \\"description\\": \\"测试专用API\\",\\n \\"versionInfo\\": {\\n \\"enable\\": true,\\n \\"scheme\\": \\"Query\\",\\n \\"headerName\\": \\"my-version\\",\\n \\"queryName\\": \\"myVersion\\",\\n \\"version\\": \\"v1\\"\\n },\\n \\"ingressInfo\\": {\\n \\"sourceId\\": \\"src-xxx\\",\\n \\"ingressClass\\": \\"mse\\",\\n \\"watchNamespace\\": \\"default\\",\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"env-xxx\\"\\n },\\n \\"k8sClusterInfo\\": {\\n \\"clusterId\\": \\"ca435c77cba1547cca9311957bcxxxxxx\\"\\n },\\n \\"overrideIngressIp\\": true\\n },\\n \\"type\\": \\"Rest\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"enableAuth\\": false,\\n \\"authConfig\\": {\\n \\"authType\\": \\"Jwt\\",\\n \\"authMode\\": \\"NoAuth\\"\\n },\\n \\"gatewayId\\": \\"gw-cpv4sqdl****\\",\\n \\"modelCategory\\": \\"Text\\",\\n \\"protocols\\": [\\n \\"HTTP\\"\\n ],\\n \\"environments\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"backendType\\": \\"Service\\",\\n \\"serviceConfigs\\": [\\n {\\n \\"gatewayServiceId\\": \\"gs-xxx\\",\\n \\"name\\": \\"demo-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": \\"8080\\",\\n \\"weight\\": 100,\\n \\"version\\": \\"v1\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"serviceId\\": \\"svc-xxx\\"\\n }\\n ],\\n \\"customDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"test\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n }\\n ],\\n \\"aiProtocols\\": [\\n \\"OpenAI/v1\\"\\n ],\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"Mock测试\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"envDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"INQUIRY\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 80,\\n \\"protocol\\": \\"HTTP\\",\\n \\"gatewayServiceId\\": \\"gw-svc-abc123\\",\\n \\"name\\": \\"Qwen-Max-Service\\",\\n \\"version\\": \\"V2\\",\\n \\"multiServiceRouteStrategy\\": \\"ByWeight\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"LeastBusy\\",\\n \\"rateLimit\\": 0.8,\\n \\"queueSize\\": 100\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {}\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cshee6dlhtgk******\\",\\n \\"name\\": \\"hello-server.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"envDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-env-xxx\\",\\n \\"name\\": \\"api.example.com\\",\\n \\"protocol\\": \\"HTTPS\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-csmn42um******\\",\\n \\"name\\": \\"test\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Intranet\\"\\n }\\n ],\\n \\"builtinRouteNames\\": [\\n \\"[\\\\\\"chat\\\\\\",\\\\\\"completions\\\\\\"]\\"\\n ]\\n }\\n ],\\n \\"deployCntMap\\": {\\n \\"key\\": {\\n \\"deployedCnt\\": 3,\\n \\"cnt\\": 0\\n }\\n },\\n \\"agentProtocols\\": [\\n \\"DashScope\\"\\n ]\\n },\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"env-cq7l5s5lhtgi6qasrdc0\\",\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"测试环境\\",\\n \\"description\\": \\"这是xxx的xx项目测试环境\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"subDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cpudb0llhtgl2djvq2sg\\",\\n \\"name\\": \\"abc.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Intranet\\"\\n }\\n ],\\n \\"default\\": false,\\n \\"createTimestamp\\": 1721116090326,\\n \\"updateTimestamp\\": 1721116090326,\\n \\"resourceGroupId\\": \\"rg-xxxx\\"\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"resourceType\\": \\"API\\",\\n \\"expireStatus\\": \\"true\\",\\n \\"expireMode\\": \\"LongTerm\\",\\n \\"expireTimestamp\\": 1750852089975,\\n \\"createTimestamp\\": 1750852089975,\\n \\"updateTimestamp\\": 1750852089975,\\n \\"deployStatus\\": \\"\\\\\\"\\\\\\"\\"\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
+ ],
+ 'GetDashboard' => [
+ 'summary' => 'Retrieves the monitoring log dashboard.',
+ 'path' => '/v1/gateways/{gatewayId}/dashboards',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'write',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
- 'abilityTreeCode' => '220139',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayUWNKMC',
- ],
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '224658',
+ 'abilityTreeNodes' => ['FEATUREapigatewayVA59LH'],
],
'parameters' => [
[
'name' => 'gatewayId',
'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The unique identifier of the gateway.', 'type' => 'string', 'required' => false, 'example' => 'gw-co370icmjeu****'],
+ ],
+ [
+ 'name' => 'pluginClassId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The plug-in type ID.', 'type' => 'string', 'required' => false, 'example' => 'pls-dn82a9djd8z****', 'title' => ''],
+ ],
+ [
+ 'name' => 'apiId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The unique ID of the API.', 'type' => 'string', 'required' => false, 'example' => 'api-ctl7no6m1h****', 'title' => ''],
+ ],
+ [
+ 'name' => 'routeId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The route ID.', 'type' => 'string', 'required' => false, 'example' => 'route-xxx', 'title' => ''],
+ ],
+ [
+ 'name' => 'source',
+ 'in' => 'query',
'schema' => [
- 'description' => 'The instance ID.'."\n",
+ 'title' => '',
+ 'description' => 'The dashboard source. Valid values:'."\n"
+ .'- SLS: log dashboard',
+ 'enumValueTitles' => ['CMS' => 'CMS', 'ARMS' => 'ARMS', 'SLS' => 'SLS'],
'type' => 'string',
'required' => false,
- 'example' => 'gw-cq2avtllh****',
+ 'example' => 'SLS',
],
],
[
'name' => 'name',
- 'in' => 'path',
- 'schema' => [
- 'description' => 'The feature parameter name.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'enable-gzip',
- ],
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The dashboard name. Valid values:'."\n"
+ .'- LOG: access log'."\n"
+ .'- PLUGIN: plug-in log', 'type' => 'string', 'required' => false, 'example' => 'PLUGIN'],
],
[
- 'name' => 'body',
- 'in' => 'body',
+ 'name' => 'filter',
+ 'in' => 'query',
'style' => 'json',
'schema' => [
- 'description' => 'The request body.'."\n",
+ 'title' => '',
+ 'description' => 'The filter configuration.',
'type' => 'object',
'properties' => [
- 'value' => [
- 'description' => 'The parameter value.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '"true"',
- ],
+ 'routeName' => ['title' => '', 'description' => 'The route name.', 'type' => 'string', 'required' => false, 'example' => 'test-route'],
],
'required' => false,
+ 'example' => '',
],
],
+ [
+ 'name' => 'acceptLanguage',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The language. Valid values:'."\n"
+ .'- zh: Chinese'."\n"
+ .'- en: English', 'type' => 'string', 'required' => false, 'example' => 'zh', 'title' => ''],
+ ],
+ [
+ 'name' => 'upstreamCluster',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The AI service identifier.', 'type' => 'string', 'required' => false, 'example' => 'outbound|443||ds.ai', 'title' => ''],
+ ],
+ [
+ 'name' => 'pluginId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The plug-in ID.', 'type' => 'string', 'required' => false, 'example' => 'inner-ai-search-cvd3mcum1hks660icn10', 'title' => ''],
+ ],
],
'responses' => [
200 => [
'schema' => [
+ 'title' => '',
+ 'description' => 'The response body.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '043360DA-ED3B-5386-9B7A-D94DECF99A30',
- ],
- 'message' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '2F46B9E7-67EF-5C8A-BA52-D38D5B32AF2C'],
+ 'code' => ['title' => '', 'description' => 'The response code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200'],
+ 'success' => ['title' => '', 'description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'true'],
+ 'errorCode' => ['title' => '', 'description' => 'The backend error code.', 'type' => 'string', 'example' => 'Ok'],
+ 'message' => ['title' => '', 'description' => 'The error message.', 'type' => 'string', 'example' => 'success'],
+ 'data' => [
+ 'title' => '',
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['title' => '', 'description' => 'The dashboard name.', 'type' => 'string', 'example' => 'PLUGIN'],
+ 'title' => ['title' => '', 'description' => 'The dashboard title.', 'type' => 'string', 'example' => 'APIG Plugin'],
+ 'url' => ['title' => '', 'description' => 'The dashboard URL.', 'type' => 'string', 'example' => 'https://sls.console.aliyun.com/lognext/project/xxxxx'],
+ 'gatewayId' => ['title' => '', 'description' => 'The unique identifier of the gateway.', 'type' => 'string', 'example' => 'gw-co370icmjeu****'],
+ ],
+ 'example' => '',
],
],
- 'description' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Retrieve monitoring dashboard',
+ 'changeSet' => [
+ ['createdAt' => '2025-07-24T12:32:04.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-03-31T08:14:19.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-12-24T03:18:06.000Z', 'description' => 'Request parameters changed'],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"043360DA-ED3B-5386-9B7A-D94DECF99A30\\",\\n \\"message\\": \\"success\\",\\n \\"code\\": \\"Ok\\"\\n}","type":"json"}]',
- 'title' => 'UpdateGatewayFeature',
- 'translator' => 'machine',
- ],
- 'UpgradeGateway' => [
- 'summary' => 'Updates the version of a Cloud-native API Gateway instance.',
- 'path' => '/v1/gateways/{gatewayId}/upgrade',
- 'methods' => [
- 'post',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetDashboard'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetDashboard',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"2F46B9E7-67EF-5C8A-BA52-D38D5B32AF2C\\",\\n \\"code\\": 200,\\n \\"success\\": true,\\n \\"errorCode\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"name\\": \\"PLUGIN\\",\\n \\"title\\": \\"APIG Plugin\\",\\n \\"url\\": \\"https://sls.console.aliyun.com/lognext/project/xxxxx\\",\\n \\"gatewayId\\": \\"gw-co370icmjeu****\\"\\n }\\n}","type":"json"}]',
+ ],
+ 'GetDomain' => [
+ 'summary' => 'Queries a domain name.',
+ 'path' => '/v1/domains/{domainId}',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'write',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '219001',
+ 'abilityTreeNodes' => ['FEATUREapigatewayLPOSXV'],
],
'parameters' => [
[
- 'name' => 'gatewayId',
+ 'name' => 'domainId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cq2avtllh****',
- ],
+ 'schema' => ['description' => 'The domain name ID.', 'type' => 'string', 'required' => true, 'example' => 'd-cpqnfn5lhtgqbga95sv1', 'title' => ''],
],
[
- 'name' => 'version',
+ 'name' => 'withStatistics',
'in' => 'query',
+ 'schema' => ['description' => 'Specifies whether to return online resource information.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The destination instance version.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '2.0.2',
+ 'title' => '',
+ 'description' => 'The response struct.',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'The request ID, which is used to trace the API call chain.', 'type' => 'string', 'example' => '3ACFC7A7-45A9-58CF-B2D5-765B60254695'],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'domainId' => ['description' => 'The domain name ID.', 'type' => 'string', 'example' => 'd-cq1m3utlhtgvgkv7sitg', 'title' => ''],
+ 'name' => ['description' => 'The domain name.', 'type' => 'string', 'example' => 'abc.com', 'title' => ''],
+ 'protocol' => ['description' => 'The protocol type supported by the domain name. Valid values:'."\n"
+ ."\n"
+ .'- HTTP: only HTTP is supported.'."\n"
+ .'- HTTPS: only HTTPS is supported.', 'type' => 'string', 'example' => 'HTTP', 'title' => ''],
+ 'domainScope' => ['title' => '', 'description' => 'The domain name scope.', 'type' => 'string', 'example' => 'Serverless'],
+ 'createFrom' => [
+ 'description' => 'The source from which the domain name was created.',
+ 'enumValueTitles' => ['Console' => 'Console', 'Ingress' => 'Ingress'],
+ 'type' => 'string',
+ 'example' => 'Console',
+ 'title' => '',
+ ],
+ 'forceHttps' => ['description' => 'Specifies whether to enable forced HTTPS redirect when the protocol type is set to HTTPS.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'certIdentifier' => ['description' => 'The certificate identifier.', 'type' => 'string', 'example' => '2382***-cn-hangzhou', 'title' => ''],
+ 'certDetailStatus' => ['description' => 'The certificate detail status.', 'type' => 'string', 'example' => '-', 'title' => ''],
+ 'certDetailErrorCode' => ['description' => 'The certificate detail error code.', 'type' => 'string', 'example' => '-', 'title' => ''],
+ 'certDetailErrorMessage' => ['description' => 'The certificate detail error message.', 'type' => 'string', 'example' => '-', 'title' => ''],
+ 'caCertIdentifier' => ['description' => 'The CA certificate identifier.', 'type' => 'string', 'example' => '8237***-cn-hangzhou', 'title' => ''],
+ 'default' => ['description' => 'Indicates whether this is the default domain name.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'http2Option' => [
+ 'description' => 'The HTTP/2 setting.',
+ 'enumValueTitles' => ['GlobalConfig' => 'GlobalConfig', 'Close' => 'Close', 'Open' => 'Open'],
+ 'type' => 'string',
+ 'example' => 'Open',
+ 'title' => '',
+ ],
+ 'tlsMax' => ['description' => 'The maximum TLS protocol version. TLS 1.3 is the maximum supported version.', 'type' => 'string', 'example' => 'TLS 1.3', 'title' => ''],
+ 'tlsMin' => ['description' => 'The minimum TLS protocol version. TLS 1.0 is the minimum supported version.', 'type' => 'string', 'example' => 'TLS 1.0'."\n", 'title' => ''],
+ 'createTimestamp' => ['description' => 'The creation timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548', 'title' => ''],
+ 'updatetimestamp' => ['description' => 'The update timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548', 'title' => ''],
+ 'certName' => ['description' => 'The certificate name.', 'type' => 'string', 'example' => 'test-cert', 'title' => ''],
+ 'sans' => ['description' => 'All domain names bound to the certificate.', 'type' => 'string', 'example' => 'aliyun.com', 'title' => ''],
+ 'notAfterTimstamp' => ['description' => 'The certificate expiration time.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548', 'title' => ''],
+ 'notBeforeTimestamp' => ['description' => 'The certificate effective period.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548', 'title' => ''],
+ 'algorithm' => ['description' => 'The encryption algorithm name.', 'type' => 'string', 'example' => 'RSA', 'title' => ''],
+ 'issuer' => ['description' => 'The certificate issue authority.', 'type' => 'string', 'example' => 'Alibaba', 'title' => ''],
+ 'resourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-aekztduhoagat4y', 'title' => ''],
+ 'statisticsInfo' => [
+ 'description' => 'The online resource information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'totalCount' => ['description' => 'The total count.', 'type' => 'string', 'example' => '30', 'title' => ''],
+ 'resourceStatistics' => [
+ 'description' => 'The resource statistics.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The resource statistics.', '$ref' => '#/components/schemas/ResourceStatistic', 'title' => '', 'example' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'tlsCipherSuitesConfig' => ['description' => 'The cipher suite configuration.', '$ref' => '#/components/schemas/TlsCipherSuitesConfig', 'title' => '', 'example' => ''],
+ 'mTLSEnabled' => [
+ 'description' => 'Indicates whether mutual TLS (mTLS) authentication is enabled.',
+ 'enumValueTitles' => ['false' => 'false', 'true' => 'true'],
+ 'type' => 'boolean',
+ 'example' => 'false',
+ 'title' => '',
+ ],
+ 'clientCACert' => ['description' => 'The client CA certificate.', 'type' => 'string', 'example' => '-----BEGIN CERTIFICATE-----'."\n"
+ .'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/mpTQwDQYJKoZIhvcNAQEL'."\n"
+ .'BxSbrGeJ8i0576Gn7Qezyho9abZOUhGaPeoB'."\n"
+ .'AIHWWl428uUSG/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'."\n"
+ .'yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy+ZMJ8r4swA4swHwYDVR0jBBgwFoAU'."\n"
+ .'qroVyYKk7ylhcSn+ZMJ8r4swA4swDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0B'."\n"
+ .'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx='."\n"
+ .'-----END CERTIFICATE-----', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ ],
+ 'example' => '',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3ACFC7A7-45A9-58CF-B2D5-765B60254695\\",\\n \\"data\\": {\\n \\"domainId\\": \\"d-cq1m3utlhtgvgkv7sitg\\",\\n \\"name\\": \\"abc.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"domainScope\\": \\"Serverless\\",\\n \\"createFrom\\": \\"Console\\",\\n \\"forceHttps\\": false,\\n \\"certIdentifier\\": \\"2382***-cn-hangzhou\\",\\n \\"certDetailStatus\\": \\"-\\",\\n \\"certDetailErrorCode\\": \\"-\\",\\n \\"certDetailErrorMessage\\": \\"-\\",\\n \\"caCertIdentifier\\": \\"8237***-cn-hangzhou\\",\\n \\"default\\": false,\\n \\"http2Option\\": \\"Open\\",\\n \\"tlsMax\\": \\"TLS 1.3\\",\\n \\"tlsMin\\": \\"TLS 1.0\\\\n\\",\\n \\"createTimestamp\\": 1719386834548,\\n \\"updatetimestamp\\": 1719386834548,\\n \\"certName\\": \\"test-cert\\",\\n \\"sans\\": \\"aliyun.com\\",\\n \\"notAfterTimstamp\\": 1719386834548,\\n \\"notBeforeTimestamp\\": 1719386834548,\\n \\"algorithm\\": \\"RSA\\",\\n \\"issuer\\": \\"Alibaba\\",\\n \\"resourceGroupId\\": \\"rg-aekztduhoagat4y\\",\\n \\"statisticsInfo\\": {\\n \\"totalCount\\": \\"30\\",\\n \\"resourceStatistics\\": [\\n {\\n \\"resourceType\\": \\"HttpApi\\",\\n \\"resourceCount\\": 10\\n }\\n ]\\n },\\n \\"tlsCipherSuitesConfig\\": {\\n \\"configType\\": \\"Default\\",\\n \\"tlsCipherSuite\\": [\\n {\\n \\"name\\": \\"ECDHE-ECDSA-AES256-GCM-SHA384\\",\\n \\"supportVersions\\": [\\n \\"TLS 1.2\\"\\n ]\\n }\\n ]\\n },\\n \\"mTLSEnabled\\": false,\\n \\"clientCACert\\": \\"-----BEGIN CERTIFICATE-----\\\\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/mpTQwDQYJKoZIhvcNAQEL\\\\nBxSbrGeJ8i0576Gn7Qezyho9abZOUhGaPeoB\\\\nAIHWWl428uUSG/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\\\\nyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy+ZMJ8r4swA4swHwYDVR0jBBgwFoAU\\\\nqroVyYKk7ylhcSn+ZMJ8r4swA4swDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0B\\\\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=\\\\n-----END CERTIFICATE-----\\"\\n },\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ 'title' => 'Query a domain name',
+ 'changeSet' => [
+ ['createdAt' => '2026-06-17T12:19:57.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2025-02-27T07:54:23.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2025-01-13T02:40:31.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2024-11-28T10:53:18.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2024-11-20T09:31:24.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2024-11-01T11:55:08.000Z', 'description' => 'Request parameters changed, Response parameters changed'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetDomain'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetDomain',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:domain/{#DomainId}'],
+ ],
],
],
],
+ ],
+ 'GetEnvironment' => [
+ 'summary' => 'Queries an environment.',
+ 'path' => '/v1/environments/{environmentId}',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => true,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '219213',
+ 'abilityTreeNodes' => ['FEATUREapigatewayN14L0I'],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'environmentId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The environment ID.', 'type' => 'string', 'required' => true, 'example' => 'env-cq7l5s5lhtgi6qasrdc0', 'title' => ''],
+ ],
+ [
+ 'name' => 'withVpcInfo',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Specifies whether to include VPC information.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ [
+ 'name' => 'withStatistics',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Specifies whether to return online resource information.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ ],
'responses' => [
200 => [
'schema' => [
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '043360DA-ED3B-5386-9B7A-D94DECF99A30',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
+ 'requestId' => ['title' => '', 'description' => 'The request ID, which is used to trace the API call chain.', 'type' => 'string', 'example' => '3F8EE674-BB08-5E92-BE6F-E4756A748B0F'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'environmentId' => ['description' => 'The environment ID.', 'type' => 'string', 'example' => 'env-cq7l5s5lhtgi6qasrdc0'."\n", 'title' => ''],
+ 'name' => ['description' => 'The environment name.', 'type' => 'string', 'example' => 'test', 'title' => ''],
+ 'alias' => ['description' => 'The environment alias.', 'type' => 'string', 'example' => '测试环境', 'title' => ''],
+ 'description' => ['description' => 'The environment description.', 'type' => 'string', 'example' => '这是xxx的xx项目测试环境', 'title' => ''],
+ 'gatewayInfo' => ['description' => 'The gateway information.', '$ref' => '#/components/schemas/GatewayInfo', 'title' => '', 'example' => ''],
+ 'subDomainInfos' => [
+ 'description' => 'The list of subdomains.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The subdomain information.', '$ref' => '#/components/schemas/SubDomainInfo', 'title' => '', 'example' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'default' => ['description' => 'Indicates whether this is the default environment.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'createTimestamp' => ['description' => 'The creation timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548', 'title' => ''],
+ 'updateTimestamp' => ['description' => 'The update timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548', 'title' => ''],
+ 'resourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-aekz4us4iruleja', 'title' => ''],
+ 'statisticsInfo' => [
+ 'description' => 'The online resource information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'totalCount' => ['description' => 'The total count.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'resourceStatistics' => [
+ 'description' => 'The online resource count.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The resource statistics.', '$ref' => '#/components/schemas/ResourceStatistic', 'title' => '', 'example' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
- 'description' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', 'returnType' => 'synchronous'],
+ 'title' => 'Query an environment',
+ 'changeSet' => [
+ ['createdAt' => '2024-11-20T09:31:24.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2024-11-01T11:55:07.000Z', 'description' => 'Request parameters changed, Response parameters changed'],
+ ['createdAt' => '2024-09-06T06:02:52.000Z', 'description' => 'Request parameters changed'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEnvironment'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetEnvironment',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Environment', 'arn' => 'acs:apig:{#regionId}:{#accountId}:environment/{#EnvironmentId}'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3F8EE674-BB08-5E92-BE6F-E4756A748B0F\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"environmentId\\": \\"env-cq7l5s5lhtgi6qasrdc0\\\\n\\",\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"测试环境\\",\\n \\"description\\": \\"这是xxx的xx项目测试环境\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"subDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cpudb0llhtgl2djvq2sg\\",\\n \\"name\\": \\"abc.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Intranet\\"\\n }\\n ],\\n \\"default\\": true,\\n \\"createTimestamp\\": 1719386834548,\\n \\"updateTimestamp\\": 1719386834548,\\n \\"resourceGroupId\\": \\"rg-aekz4us4iruleja\\",\\n \\"statisticsInfo\\": {\\n \\"totalCount\\": 1,\\n \\"resourceStatistics\\": [\\n {\\n \\"resourceType\\": \\"HttpApi\\",\\n \\"resourceCount\\": 10\\n }\\n ]\\n }\\n }\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"043360DA-ED3B-5386-9B7A-D94DECF99A30\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'UpgradeGateway',
- 'translator' => 'machine',
],
'GetGateway' => [
- 'summary' => 'Queries the basic information about an instance, such as the virtual private cloud (VPC) and vSwitch to which the instance belongs and its ingress.',
+ 'summary' => 'Retrieves basic information about a gateway, including the associated VPC, vSwitch, and gateway ingress.',
'path' => '/v1/gateways/{gatewayId}',
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
@@ -16302,2601 +9576,1902 @@
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '219658',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayUWNKMC',
- ],
+ 'abilityTreeNodes' => ['FEATUREapigatewayUWNKMC'],
],
'parameters' => [
[
'name' => 'gatewayId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The environment information.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cpv4sqdl*****',
- ],
+ 'schema' => ['description' => 'The ID of the cloud-native API gateway.', 'type' => 'string', 'required' => false, 'example' => 'gw-cpv4sqdl*****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The environment ID.'."\n",
+ 'title' => '',
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The environment name.'."\n",
- 'type' => 'string',
- 'example' => '0F138FFC-6E2B-56C1-9BAB-A67462E339D1',
- ],
- 'code' => [
- 'description' => 'The environment alias.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'Default environment'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '0F138FFC-6E2B-56C1-9BAB-A67462E339D1'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'The security group of the instance.'."\n",
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'gatewayId' => [
- 'description' => 'The security group ID.'."\n",
- 'type' => 'string',
- 'example' => 'gw-cq2vundlhtg***',
- ],
- 'name' => [
- 'description' => 'The security group name.'."\n",
- 'type' => 'string',
- 'example' => 'itemcenter-gateway',
- ],
+ 'gatewayId' => ['description' => 'The gateway ID.', 'type' => 'string', 'example' => 'gw-cq2vundlhtg***', 'title' => ''],
+ 'name' => ['description' => 'The gateway name.', 'type' => 'string', 'example' => 'itemcenter-gateway', 'title' => ''],
'chargeType' => [
- 'description' => 'The vSwitch associated with the instance.'."\n",
+ 'description' => 'The billing type. Valid values:'."\n"
+ .'- POSTPAY: pay-as-you-go'."\n"
+ .'- PREPAY: subscription',
+ 'enumValueTitles' => ['POSTPAY' => 'Pay-as-you-go.', 'PREPAY' => 'Subscription.'],
'type' => 'string',
- 'enumValueTitles' => [
- 'POSTPAY' => 'The vSwitch name.'."\n",
- 'PREPAY' => 'HangzhouVPCvSwitch'."\n",
- ],
'example' => 'POSTPAY',
+ 'title' => '',
],
'gatewayType' => [
- 'description' => 'The vSwitch ID.'."\n",
+ 'description' => 'The gateway type. Valid values:'."\n"
+ .'- API: API gateway.'."\n"
+ .'- AI: AI gateway.',
+ 'enumValueTitles' => ['AI' => 'AI gateway.', 'API' => 'API gateway.'],
'type' => 'string',
- 'enumValueTitles' => [
- 'AI' => 'AI',
- 'API' => 'API',
- ],
'example' => 'API',
+ 'title' => '',
],
'status' => [
- 'description' => 'The VPC associated with the instance.'."\n",
+ 'description' => 'The gateway status. Valid values:'."\n"
+ .'- Running: The gateway is running.'."\n"
+ .'- Creating: The gateway is being created.'."\n"
+ .'- CreateFailed: The gateway failed to be created.'."\n"
+ .'- Upgrading: The gateway is being upgraded.'."\n"
+ .'- UpgradeFailed: The gateway failed to be upgraded.'."\n"
+ .'- Restarting: The gateway is being restarted.'."\n"
+ .'- RestartFailed: The gateway failed to be restarted.'."\n"
+ .'- Deleting: The gateway is being released.'."\n"
+ .'- DeleteFailed: The gateway failed to be released.',
+ 'enumValueTitles' => ['Restarting' => 'Restarting.', 'Creating' => 'Creating.', 'Upgrading' => 'Upgrading.', 'DeleteFailed' => 'Release failed.', 'Running' => 'Running.', 'RestartFailed' => 'Restart failed.', 'Deleting' => 'Releasing.', 'CreateFailed' => 'Creation failed.', 'UpgradeFailed' => 'Upgrade failed.'],
'type' => 'string',
- 'enumValueTitles' => [
- 'Restarting' => 'The VPC name.'."\n",
- 'Creating' => 'HangzhouVPC'."\n",
- 'Upgrading' => 'The VPC ID.'."\n",
- 'DeleteFailed' => 'The list of zones associated with the instance.'."\n",
- 'Running' => 'The zone information.'."\n",
- 'RestartFailed' => 'The vSwitch information.'."\n",
- 'Deleting' => 'The vSwitch ID.'."\n",
- 'CreateFailed' => 'The vSwitch name.'."\n",
- 'UpgradeFailed' => 'HangzhouVPCvSwitch'."\n",
- ],
'example' => 'Running',
+ 'title' => '',
],
'spec' => [
- 'description' => 'The zone name.'."\n",
+ 'description' => 'The gateway specification. Valid values:'."\n"
+ .'- apigw.small.x1: Small specification.',
+ 'enumValueTitles' => ['apigw.small.x1' => 'Small specification.'],
'type' => 'string',
- 'enumValueTitles' => [
- 'apigw.small.x1' => 'apigw.small.x1',
- ],
'example' => 'apigw.small.x1',
+ 'title' => '',
],
- 'replicas' => [
- 'description' => 'HangzhouZoneE'."\n",
- 'type' => 'string',
- 'example' => '2',
- ],
- 'createTimestamp' => [
- 'description' => 'The zone ID.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- ],
- 'updateTimestamp' => [
- 'description' => 'The ingress addresses of the instance.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- ],
- 'expireTimestamp' => [
- 'description' => 'The ingress information.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- ],
+ 'replicas' => ['description' => 'The number of gateway instance nodes.', 'type' => 'string', 'example' => '2', 'title' => ''],
+ 'createTimestamp' => ['description' => 'The creation timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548', 'title' => ''],
+ 'updateTimestamp' => ['description' => 'The update timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548', 'title' => ''],
+ 'expireTimestamp' => ['description' => 'The subscription expiration timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548', 'title' => ''],
'createFrom' => [
- 'description' => 'The mode in which the load balancer is provided. Valid values:'."\n"
- ."\n"
- .'* Managed: Cloud-native API Gateway manages and provides the load balancer.'."\n",
+ 'description' => 'The source from which the gateway was created. Valid values:'."\n"
+ .'- Console: The gateway was created from the console.',
+ 'enumValueTitles' => ['Console' => 'Console.'],
'type' => 'string',
- 'enumValueTitles' => [
- 'Console' => 'The load balancer ID.'."\n",
- ],
'example' => 'Console',
+ 'title' => '',
],
- 'version' => [
- 'description' => 'The load balancer IP address.'."\n",
- 'type' => 'string',
- 'example' => '2.0.2',
- ],
- 'targetVersion' => [
- 'description' => 'The load balancer address type. Valid values:'."\n"
- ."\n"
- .'* Internet'."\n"
- .'* Intranet'."\n",
- 'type' => 'string',
- 'example' => '2.0.2',
- ],
+ 'version' => ['description' => 'The gateway version.', 'type' => 'string', 'example' => '2.0.2', 'title' => ''],
+ 'targetVersion' => ['description' => 'The target version of the gateway. If this value differs from version, a version upgrade can be performed.', 'type' => 'string', 'example' => '2.0.2', 'title' => ''],
'environments' => [
- 'description' => 'The IP version of the address. Valid values:'."\n"
- ."\n"
- .'* ipv4'."\n"
- .'* ipv6'."\n",
+ 'description' => 'The list of environments associated with the gateway.',
'type' => 'array',
'items' => [
- 'description' => 'Indicates whether the address is the default ingress address of the instance.'."\n",
+ 'description' => 'The environment context.',
'type' => 'object',
'properties' => [
- 'environmentId' => [
- 'description' => 'The load balancer type. Valid values:'."\n"
- ."\n"
- .'* NLB: Network Load Balancer'."\n"
- .'* CLB: Classic Load Balancer'."\n",
- 'type' => 'string',
- 'example' => 'env-cp9uhudlht***',
- ],
- 'name' => [
- 'description' => 'The list of listened ports.'."\n",
- 'type' => 'string',
- 'example' => 'default-gw-cp9ugg5***',
- ],
- 'alias' => [
- 'description' => 'The port information.'."\n",
- 'type' => 'string',
- 'example' => 'The protocol. Valid values:'."\n"
- ."\n"
- .'* TCP'."\n"
- .'* UDP'."\n",
- ],
+ 'environmentId' => ['description' => 'The environment ID.', 'type' => 'string', 'example' => 'env-cp9uhudlht***', 'title' => ''],
+ 'name' => ['description' => 'The environment name.', 'type' => 'string', 'example' => 'default-gw-cp9ugg5***', 'title' => ''],
+ 'alias' => ['description' => 'The environment alias.', 'type' => 'string', 'example' => '默认环境', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
'securityGroup' => [
- 'description' => 'The port number.'."\n",
+ 'description' => 'The security group of the gateway.',
'type' => 'object',
'properties' => [
- 'securityGroupId' => [
- 'description' => 'The load balancer status. Valid values:'."\n"
- ."\n"
- .'* Ready: The load balancer is available.'."\n"
- .'* NotCreate: The load balancer is not associated with the instance.'."\n",
- 'type' => 'string',
- 'example' => 'sg-bp16tafq9***',
- ],
- 'name' => [
- 'description' => 'The resource group ID.'."\n",
- 'type' => 'string',
- 'example' => 'APIG-sg-gw-cq7ke5ll***',
- ],
+ 'securityGroupId' => ['description' => 'The security group ID.', 'type' => 'string', 'example' => 'sg-bp16tafq9***', 'title' => ''],
+ 'name' => ['description' => 'The security group name.', 'type' => 'string', 'example' => 'APIG-sg-gw-cq7ke5ll***', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
'vSwitch' => [
- 'description' => 'rg-aek2s3cvc4jzfxi',
+ 'description' => 'The vSwitch associated with the gateway.',
'type' => 'object',
'properties' => [
- 'name' => [
- 'description' => 'The resource tags.'."\n",
- 'type' => 'string',
- 'example' => 'The resource tag.'."\n",
- ],
- 'vSwitchId' => [
- 'description' => 'The tag value.'."\n",
- 'type' => 'string',
- 'example' => 'vsw-bp1c7ggkj***',
- ],
+ 'name' => ['description' => 'The vSwitch name.', 'type' => 'string', 'example' => '杭州VPC虚拟交换机', 'title' => ''],
+ 'vSwitchId' => ['description' => 'The vSwitch ID.', 'type' => 'string', 'example' => 'vsw-bp1c7ggkj***', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
'vpc' => [
- 'description' => 'The tag key.'."\n",
+ 'description' => 'The VPC associated with the gateway.',
'type' => 'object',
'properties' => [
- 'name' => [
- 'description' => '=',
- 'type' => 'string',
- 'example' => '$.errorCode',
- ],
- 'vpcId' => [
- 'description' => 'Query Gateway Details',
- 'type' => 'string',
- 'example' => 'vpc-bp1llj52lvj6xc***',
- ],
+ 'name' => ['description' => 'The VPC name.', 'type' => 'string', 'example' => '杭州VPC', 'title' => ''],
+ 'vpcId' => ['description' => 'The VPC ID.', 'type' => 'string', 'example' => 'vpc-bp1llj52lvj6xc***', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
'zones' => [
- 'description' => 'List of zone information',
+ 'description' => 'The list of zones associated with the gateway.',
'type' => 'array',
'items' => [
- 'description' => 'object',
+ 'description' => 'The zone information.',
'type' => 'object',
'properties' => [
'vSwitch' => [
- 'description' => 'The VSwitch information in the zone',
+ 'description' => 'The vSwitch.',
'type' => 'object',
'properties' => [
- 'vSwitchId' => [
- 'description' => 'The VSwitch ID',
- 'type' => 'string',
- 'example' => 'vsw-bp1c7ggkj***',
- ],
- 'name' => [
- 'description' => 'The VSwitch name',
- 'type' => 'string',
- 'example' => 'vswitch-name',
- ],
+ 'vSwitchId' => ['description' => 'The vSwitch ID.', 'type' => 'string', 'example' => 'vsw-bp1c7ggkj***', 'title' => ''],
+ 'name' => ['description' => 'The vSwitch name.', 'type' => 'string', 'example' => '杭州VPC虚拟交换机'."\n", 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- 'name' => [
- 'description' => 'The zone name',
- 'type' => 'string',
- 'example' => 'Hangzhou Zone I',
- ],
- 'zoneId' => [
- 'description' => 'The zone ID',
- 'type' => 'string',
- 'example' => 'cn-hangzhou-e',
- ],
+ 'name' => ['description' => 'The zone name.', 'type' => 'string', 'example' => '杭州可用区E', 'title' => ''],
+ 'zoneId' => ['description' => 'The zone ID.', 'type' => 'string', 'example' => 'cn-hangzhou-e', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
'loadBalancers' => [
- 'description' => 'loadBalancers',
+ 'description' => 'The list of ingress addresses of the gateway.',
'type' => 'array',
'items' => [
- 'description' => 'object',
+ 'description' => 'The ingress address information.',
'type' => 'object',
'properties' => [
'mode' => [
- 'description' => 'The mode of the load balancer',
+ 'description' => 'The load balancing provisioning mode of the gateway. Valid values:'."\n"
+ .'- Managed: Managed by the cloud-native API gateway.',
+ 'enumValueTitles' => ['Managed' => 'Load balancing managed by the cloud-native API gateway.'],
'type' => 'string',
- 'enumValueTitles' => [
- 'Managed' => 'Managed',
- ],
'example' => 'Managed',
+ 'title' => '',
],
- 'loadBalancerId' => [
- 'description' => 'The unique identifier of the load balancer',
- 'type' => 'string',
- 'example' => 'nlb-xoh3pghru7c***',
- ],
- 'address' => [
- 'description' => 'The IP address of the load balancer',
- 'type' => 'string',
- 'example' => 'nlb-xoh3pghr***.cn-hangzhou.nlb.aliyuncs.com',
- ],
+ 'loadBalancerId' => ['description' => 'The load balancing instance ID.', 'type' => 'string', 'example' => 'nlb-xoh3pghru7c***', 'title' => ''],
+ 'address' => ['description' => 'The load balancing address.', 'type' => 'string', 'example' => 'nlb-xoh3pghr***.cn-hangzhou.nlb.aliyuncs.com', 'title' => ''],
'addressType' => [
- 'description' => 'The address type of the load balancer',
+ 'description' => 'The load balancing address type. Valid values:'."\n"
+ .'- Internet: public network.'."\n"
+ .'- Intranet: private network.',
+ 'enumValueTitles' => ['Intranet' => 'Private network.', 'Internet' => 'Public network.'],
'type' => 'string',
- 'enumValueTitles' => [
- 'Intranet' => '',
- 'Internet' => '',
- ],
'example' => 'Internet',
+ 'title' => '',
],
'addressIpVersion' => [
- 'description' => 'The IP version of the load balancer address',
+ 'description' => 'The protocol version. Valid values:'."\n"
+ .'- ipv4: IPv4.'."\n"
+ .'- ipv6: IPv6.',
+ 'enumValueTitles' => ['ipv4' => 'IPv4', 'ipv6' => 'IPv6'],
'type' => 'string',
- 'enumValueTitles' => [
- 'ipv4' => 'ipv4',
- 'ipv6' => 'ipv6',
- ],
'example' => 'ipv4',
+ 'title' => '',
],
- 'gatewayDefault' => [
- 'description' => 'Whether this is the default gateway ingress',
- 'type' => 'boolean',
- 'example' => 'true',
- ],
+ 'gatewayDefault' => ['description' => 'Indicates whether this is the default ingress address of the gateway.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
'type' => [
- 'description' => 'The type of load balancer',
+ 'description' => 'The load balancing type. Valid values:'."\n"
+ .'- NLB: Network Load Balancer (NLB).'."\n"
+ .'- CLB: Classic Load Balancer (CLB).',
+ 'enumValueTitles' => ['NLB' => 'Network load balancing.', 'CLB' => 'Classic load balancing.'],
'type' => 'string',
- 'enumValueTitles' => [
- 'NLB' => '',
- 'CLB' => '',
- ],
'example' => 'NLB',
+ 'title' => '',
],
'ports' => [
- 'description' => 'List of port configurations for the load balancer',
+ 'description' => 'The list of listening ports.',
'type' => 'array',
'items' => [
- 'description' => 'object',
+ 'description' => 'The port information.',
'type' => 'object',
'properties' => [
'protocol' => [
- 'description' => 'The protocol of the port',
+ 'description' => 'The protocol. Valid values:'."\n"
+ .'- TCP'."\n"
+ .'- UDP',
+ 'enumValueTitles' => ['TCP' => 'TCP protocol.', 'UDP' => 'UDP protocol.'],
'type' => 'string',
- 'enumValueTitles' => [
- 'TCP' => 'TCP',
- 'UDP' => 'UDP',
- ],
'example' => 'TCP',
+ 'title' => '',
],
- 'port' => [
- 'description' => 'The listening port number',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '443',
- ],
+ 'port' => ['description' => 'The port number.', 'type' => 'integer', 'format' => 'int32', 'example' => '443', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
'status' => [
- 'description' => 'The current status of the load balancer',
+ 'description' => 'The load balancing status. Valid values:'."\n"
+ .'- Ready: Active.'."\n"
+ .'- NotCreate: No associated instance.',
+ 'enumValueTitles' => ['Ready' => 'Available.', 'NotCreate' => 'No associated instance.'],
'type' => 'string',
- 'enumValueTitles' => [
- 'Ready' => 'Ready',
- ],
'example' => 'Ready',
+ 'title' => '',
],
'ipv4Addresses' => [
- 'description' => 'List of IPv4 addresses',
+ 'description' => 'The list of IPv4 addresses.',
'type' => 'array',
- 'items' => [
- 'description' => 'string',
- 'type' => 'string',
- 'example' => '["172.16.0.10", "172.16.0.11"] ',
- ],
+ 'items' => ['description' => 'The parameter.', 'type' => 'string', 'example' => '["47.xx.xx.xx", "47.xx.xx.yy"]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
'ipv6Addresses' => [
- 'description' => 'List of IPv6 addresses',
+ 'description' => 'The list of IPv6 addresses.',
'type' => 'array',
- 'items' => [
- 'description' => 'string',
- 'type' => 'string',
- 'example' => '["2001:db8::1", "2001:db8::2"]',
- ],
+ 'items' => ['description' => 'The parameter.', 'type' => 'string', 'example' => '["2408:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx"]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
- 'resourceGroupId' => [
- 'description' => 'The resource group ID',
- 'type' => 'string',
- 'example' => 'rg-acfm2ij6pwxsvua',
- ],
+ 'resourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-acfm2ij6pwxsvua', 'title' => ''],
'tags' => [
- 'description' => 'List of tags associated with the gateway',
+ 'description' => 'The resource tags.',
'type' => 'array',
'items' => [
- 'description' => 'object',
+ 'description' => 'The resource tags.',
'type' => 'object',
'properties' => [
- 'value' => [
- 'description' => 'The tag value',
- 'type' => 'string',
- 'example' => 'zhangsan',
- ],
- 'key' => [
- 'description' => 'The tag key',
- 'type' => 'string',
- 'example' => 'owner',
- ],
+ 'value' => ['description' => 'The value of the resource tag.', 'type' => 'string', 'example' => 'zhangsan', 'title' => ''],
+ 'key' => ['description' => 'The key of the resource tag.', 'type' => 'string', 'example' => 'owner', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
- 'isp' => [
- 'description' => 'The ISP type for traffic routing',
- 'type' => 'string',
- 'example' => 'BGP',
- ],
+ 'isp' => ['description' => 'The network ISP type.', 'type' => 'string', 'example' => 'BGP', 'title' => ''],
'gatewayEdition' => [
- 'title' => '网关实例版本:'."\n"
+ 'title' => '',
+ 'description' => 'The gateway instance edition. Valid values:'."\n"
."\n"
- .'- 普通实例:Professional'."\n"
+ .'- Professional: Standard instance.'."\n"
."\n"
- .'- Serverless:Serverless',
- 'description' => 'gatewayEdition',
+ .'- Serverless: Serverless instance.',
+ 'enumValueTitles' => ['Professional' => 'Standard instance.', 'Serverless' => 'Serverless instance.'],
'type' => 'string',
'example' => 'Serverless',
],
'maintenancePeriod' => [
- 'title' => '运维窗口',
- 'description' => 'The maintenance period configuration',
+ 'title' => '',
+ 'description' => 'The O&M window.',
'type' => 'object',
'properties' => [
- 'startTime' => [
- 'title' => '运维开始时间',
- 'description' => 'The maintenance start time',
- 'type' => 'string',
- 'example' => '02:00',
- ],
- 'endTime' => [
- 'title' => '运维结束时间',
- 'description' => 'The maintenance end time',
- 'type' => 'string',
- 'example' => '06:00',
- ],
+ 'startTime' => ['title' => '', 'description' => 'The O&M start time (HH:mm).', 'type' => 'string', 'example' => '02:00'],
+ 'endTime' => ['title' => '', 'description' => 'The O&M end time (HH:mm).', 'type' => 'string', 'example' => '06:00'],
],
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0F138FFC-6E2B-56C1-9BAB-A67462E339D1\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"gatewayId\\": \\"gw-cq2vundlhtg***\\",\\n \\"name\\": \\"itemcenter-gateway\\",\\n \\"chargeType\\": \\"POSTPAY\\",\\n \\"gatewayType\\": \\"API\\",\\n \\"status\\": \\"Running\\",\\n \\"spec\\": \\"apigw.small.x1\\",\\n \\"replicas\\": \\"2\\",\\n \\"createTimestamp\\": 1719386834548,\\n \\"updateTimestamp\\": 1719386834548,\\n \\"expireTimestamp\\": 1719386834548,\\n \\"createFrom\\": \\"Console\\",\\n \\"version\\": \\"2.0.2\\",\\n \\"targetVersion\\": \\"2.0.2\\",\\n \\"environments\\": [\\n {\\n \\"environmentId\\": \\"env-cp9uhudlht***\\",\\n \\"name\\": \\"default-gw-cp9ugg5***\\",\\n \\"alias\\": \\"默认环境\\"\\n }\\n ],\\n \\"securityGroup\\": {\\n \\"securityGroupId\\": \\"sg-bp16tafq9***\\",\\n \\"name\\": \\"APIG-sg-gw-cq7ke5ll***\\"\\n },\\n \\"vSwitch\\": {\\n \\"name\\": \\"杭州VPC虚拟交换机\\",\\n \\"vSwitchId\\": \\"vsw-bp1c7ggkj***\\"\\n },\\n \\"vpc\\": {\\n \\"name\\": \\"杭州VPC\\",\\n \\"vpcId\\": \\"vpc-bp1llj52lvj6xc***\\"\\n },\\n \\"zones\\": [\\n {\\n \\"vSwitch\\": {\\n \\"vSwitchId\\": \\"vsw-bp1c7ggkj***\\",\\n \\"name\\": \\"杭州VPC虚拟交换机\\\\n\\"\\n },\\n \\"name\\": \\"杭州可用区E\\",\\n \\"zoneId\\": \\"cn-hangzhou-e\\"\\n }\\n ],\\n \\"loadBalancers\\": [\\n {\\n \\"mode\\": \\"Managed\\",\\n \\"loadBalancerId\\": \\"nlb-xoh3pghru7c***\\",\\n \\"address\\": \\"nlb-xoh3pghr***.cn-hangzhou.nlb.aliyuncs.com\\",\\n \\"addressType\\": \\"Internet\\",\\n \\"addressIpVersion\\": \\"ipv4\\",\\n \\"gatewayDefault\\": true,\\n \\"type\\": \\"NLB\\",\\n \\"ports\\": [\\n {\\n \\"protocol\\": \\"TCP\\",\\n \\"port\\": 443\\n }\\n ],\\n \\"status\\": \\"Ready\\",\\n \\"ipv4Addresses\\": [\\n \\"[\\\\\\"47.xx.xx.xx\\\\\\", \\\\\\"47.xx.xx.yy\\\\\\"]\\"\\n ],\\n \\"ipv6Addresses\\": [\\n \\"[\\\\\\"2408:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx\\\\\\"]\\"\\n ]\\n }\\n ],\\n \\"resourceGroupId\\": \\"rg-acfm2ij6pwxsvua\\",\\n \\"tags\\": [\\n {\\n \\"value\\": \\"zhangsan\\",\\n \\"key\\": \\"owner\\"\\n }\\n ],\\n \\"isp\\": \\"BGP\\",\\n \\"gatewayEdition\\": \\"Serverless\\",\\n \\"maintenancePeriod\\": {\\n \\"startTime\\": \\"02:00\\",\\n \\"endTime\\": \\"06:00\\"\\n }\\n }\\n}","type":"json"}]',
- 'title' => 'GetGateway',
- 'translator' => 'machine',
- ],
- 'ListGateways' => [
- 'summary' => 'Queries a list of instances.',
- 'path' => '/v1/gateways',
- 'methods' => [
- 'get',
+ 'title' => 'Query gateway details',
+ 'changeSet' => [
+ ['createdAt' => '2025-10-29T07:31:47.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2025-09-18T12:49:49.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2025-07-18T06:03:14.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2025-06-11T08:29:16.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2024-11-21T02:42:08.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2024-11-20T08:54:08.000Z', 'description' => 'Response parameters changed'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetGateway'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetGateway',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
],
+ ],
+ 'GetGatewayQuotaRule' => [
+ 'summary' => 'Queries the details of a gateway quota rate limiting rule.',
+ 'path' => '/v1/gateways/{gatewayId}/quota-rules/{ruleId}',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/x-www-form-urlencoded',
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'list',
+ 'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '218454',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayUWNKMC',
- ],
+ 'abilityTreeCode' => '222348',
+ 'abilityTreeNodes' => ['FEATUREapigatewayUWNKMC'],
+ 'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'gatewayId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Retrieve the list of created cloud-native gateways',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cpv4sqdl****',
- ],
- ],
- [
- 'name' => 'pageNumber',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID. If you specify an ID, an exact search is performed.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
- ],
- [
- 'name' => 'pageSize',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The number of the page to return.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
- ],
- [
- 'name' => 'name',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries per page.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'itemcenter-gateway',
- ],
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-123456'],
],
[
- 'name' => 'keyword',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The instance name. If you specify a name, an exact search is performed.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'dev',
- ],
+ 'name' => 'ruleId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The policy ID.', 'type' => 'string', 'required' => false, 'example' => 'qr-d8j7fpmm1hks65xxxxx', 'title' => ''],
],
[
- 'name' => 'gatewayType',
+ 'name' => 'withConsumers',
'in' => 'query',
- 'schema' => [
- 'description' => 'The search keyword. A full match is performed. The search is case-insensitive.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'AI' => 'The gateway type.'."\n"
- ."\n"
- .'Valid values:'."\n"
- ."\n"
- .'* AI: AI Gateway'."\n"
- .'* API: API Gateway.'."\n",
- 'API' => 'The resource group ID.'."\n",
- ],
- 'example' => 'API',
- ],
+ 'schema' => ['title' => '', 'description' => 'Specifies whether to include the consumer list in the response.', 'type' => 'boolean', 'required' => false, 'example' => ''],
],
[
- 'name' => 'resourceGroupId',
+ 'name' => 'consumerPageNumber',
'in' => 'query',
- 'schema' => [
- 'description' => 'rg-aekz3wes3hnre5a',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rg-aekzq6bzz5uyg2q',
- ],
+ 'schema' => ['title' => '', 'description' => 'The page number of the consumer list.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => '1'],
],
[
- 'name' => 'tag',
+ 'name' => 'consumerPageSize',
'in' => 'query',
- 'style' => 'json',
- 'schema' => [
- 'description' => 'The tags that you want to use for the search.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The tag.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'key' => [
- 'description' => 'The key of tag N.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'owner',
- ],
- 'value' => [
- 'description' => 'The value of tag N.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'zhangsan',
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- 'maxItems' => 20,
- ],
+ 'schema' => ['title' => '', 'description' => 'The number of consumers per page.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => '10'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
+ 'title' => '',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'description' => 'Schema of Response'."\n",
- 'type' => 'string',
- 'example' => '5B626361-070A-56A7-B127-ADAC8F3655DB',
- ],
- 'code' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '1234567890'],
+ 'code' => ['title' => '', 'description' => 'The status code.', 'type' => 'string', 'example' => '200'],
+ 'message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'success'],
'data' => [
- 'description' => 'The returned message.'."\n",
+ 'title' => '',
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'pageNumber' => [
- 'description' => 'The gateway list query result.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'pageSize' => [
- 'description' => 'The page number of the returned page.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
- 'totalSize' => [
- 'description' => 'The number of entries per page.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '6',
- ],
- 'items' => [
- 'description' => 'The total number of entries returned.'."\n",
+ 'ruleId' => ['description' => 'The rule ID.', 'type' => 'string', 'example' => 'qr-d8j7fpmm1hks65xxxxxx', 'title' => ''],
+ 'ruleName' => ['title' => '', 'description' => 'The rule name.', 'type' => 'string', 'example' => 'daily-token-limit'],
+ 'quotaDimension' => ['title' => '', 'description' => 'The quota dimension.', 'type' => 'string', 'example' => 'token'],
+ 'quotaLimit' => ['title' => '', 'description' => 'The quota limit.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000'],
+ 'ruleStatus' => [
+ 'title' => '',
+ 'description' => 'The rule status.',
+ 'enumValueTitles' => ['disabled' => 'disabled', 'enabled' => 'enabled'],
+ 'type' => 'string',
+ 'example' => 'enabled',
+ ],
+ 'periodType' => ['title' => '', 'description' => 'The quota period type.', 'type' => 'string', 'example' => 'day'],
+ 'windowAlignment' => ['title' => '', 'description' => 'The reset period type.', 'type' => 'string', 'example' => 'calendar'],
+ 'timezone' => ['title' => '', 'description' => 'The time zone for the calendar period, in UTC+x format.', 'type' => 'string', 'example' => 'GMT+8'],
+ 'baseTimestamp' => ['title' => '', 'description' => 'The base timestamp of the period.', 'type' => 'integer', 'format' => 'int64', 'example' => '1745846400000'],
+ 'consumerCount' => ['title' => '', 'description' => 'The number of consumers associated with the rule.', 'type' => 'integer', 'format' => 'int64', 'example' => '20'],
+ 'consumers' => [
+ 'title' => '',
+ 'description' => 'The list of principals (consumers) bound to this rule.',
'type' => 'array',
'items' => [
- 'description' => 'The list of gateways.'."\n",
+ 'title' => '',
+ 'description' => 'The principal (consumer) bound to this rule.',
'type' => 'object',
'properties' => [
- 'gatewayId' => [
- 'description' => 'The information about a gateway.'."\n",
- 'type' => 'string',
- 'example' => 'gw-cpv54p5***',
- ],
- 'name' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'example' => 'itemcenter-gateway',
- ],
- 'chargeType' => [
- 'description' => 'The instance name.'."\n",
- 'type' => 'string',
- 'enumValueTitles' => [
- 'PREPAY' => 'The billing method. Valid values:'."\n"
- ."\n"
- .'* POSTPAY: pay-as-you-go'."\n"
- .'* PREPAY: subscription'."\n",
- 'POSTPAY' => 'The gateway type.'."\n"
- ."\n"
- .'Valid values:'."\n"
- ."\n"
- .'* AI: AI Gateway'."\n"
- .'* API: API Gateway.'."\n",
- ],
- 'example' => 'POSTPAY',
- ],
- 'gatewayType' => [
- 'description' => 'The instance state. Valid values:'."\n"
- ."\n"
- .'* Running: The instance is running.'."\n"
- .'* Creating: The instance is being created.'."\n"
- .'* CreateFailed: The instance fails to be created.'."\n"
- .'* Upgrading: The instance is being upgraded.'."\n"
- .'* UpgradeFailed: The instance fails to be upgraded.'."\n"
- .'* Restarting: The instance is being restarted.'."\n"
- .'* RestartFailed: The instance fails to be restarted.'."\n"
- .'* Deleting: The instance is being released.'."\n"
- .'* DeleteFailed: The instance failed to be released.'."\n",
- 'type' => 'string',
- 'enumValueTitles' => [
- 'AI' => 'The instance specification. Valid values:'."\n"
- ."\n"
- .'* apigw.small.x1'."\n",
- 'API' => 'The node quantity of the instance.'."\n",
- ],
- 'example' => 'API',
- ],
- 'status' => [
- 'description' => 'The time when the instance was created. This value is a UNIX timestamp. Unit: milliseconds.'."\n",
- 'type' => 'string',
- 'enumValueTitles' => [
- 'Restarting' => 'The time when the instance was last updated. This value is a UNIX timestamp. Unit: milliseconds.'."\n",
- 'Creating' => 'The time when the instance expires. This value is a UNIX timestamp. Unit: milliseconds.'."\n",
- 'Upgrading' => 'The creation source of the instance. Valid values:'."\n"
- ."\n"
- .'* Console'."\n",
- 'DeleteFailed' => 'The instance version.'."\n",
- 'Running' => 'The destination version of the instance. If the value is inconsistent with the current version, you can upgrade the instance.'."\n",
- 'RestartFailed' => 'The ingress addresses of the instance.'."\n",
- 'Deleting' => 'The ingress address.'."\n",
- 'CreateFailed' => 'The load balancer ID.'."\n",
- 'UpgradeFailed' => 'The address type. Valid values:'."\n"
- ."\n"
- .'* Internet'."\n"
- .'* Intranet'."\n",
- ],
- 'example' => 'Running',
- ],
- 'spec' => [
- 'description' => 'The load balancer type. Valid values:'."\n"
- ."\n"
- .'* NLB: Network Load Balancer'."\n"
- .'* CLB: Classic Load Balancer'."\n",
- 'type' => 'string',
- 'enumValueTitles' => [
- 'apigw.small.x1' => 'apigw.small.x1',
- ],
- 'example' => 'apigw.small.x1',
- ],
- 'replicas' => [
- 'description' => 'The load balancer status. Valid values:'."\n"
- ."\n"
- .'* Ready: The load balancer is available.'."\n"
- .'* NotCreate: The load balancer is not associated with the instance.'."\n",
- 'type' => 'string',
- 'example' => '2',
- ],
- 'createTimestamp' => [
- 'description' => 'The load balancer IP address.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- ],
- 'updateTimestamp' => [
- 'description' => 'The IP version of the address. Valid values:'."\n"
- ."\n"
- .'* ipv4: IPv4'."\n"
- .'* ipv6: IPv6'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- ],
- 'expireTimestamp' => [
- 'description' => 'The mode in which the load balancer is provided. Valid values:'."\n"
- ."\n"
- .'* Managed: Cloud-native API Gateway manages and provides the load balancer.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '172086834548',
- ],
- 'createFrom' => [
- 'description' => 'Indicates whether the address is the default ingress address of the instance.'."\n",
- 'type' => 'string',
- 'enumValueTitles' => [
- 'Console' => 'The list of listened ports.'."\n",
- ],
- 'example' => 'Console',
- ],
- 'version' => [
- 'description' => 'The information about the port.'."\n",
- 'type' => 'string',
- 'example' => '2.0.2',
- ],
- 'targetVersion' => [
- 'description' => 'The protocol. Valid values:'."\n"
- ."\n"
- .'* TCP'."\n"
- .'* UDP'."\n",
- 'type' => 'string',
- 'example' => '2.0.2',
- ],
- 'loadBalancers' => [
- 'description' => 'The port number.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The security group information about the instance.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'loadBalancerId' => [
- 'description' => 'The security group ID.'."\n",
- 'type' => 'string',
- 'example' => 'nlb-xqwioje1c91r***',
- ],
- 'addressType' => [
- 'description' => 'sg-xxxx',
- 'type' => 'string',
- 'enumValueTitles' => [
- 'Intranet' => 'The availability zones of the instance.'."\n",
- 'Internet' => 'The information about the zone.'."\n",
- ],
- 'example' => 'Internet',
- ],
- 'type' => [
- 'description' => 'The zone ID.'."\n",
- 'type' => 'string',
- 'enumValueTitles' => [
- 'NLB' => 'cn-hangzhou-f',
- 'CLB' => 'The vSwitch information.'."\n",
- ],
- 'example' => 'NLB',
- ],
- 'status' => [
- 'description' => 'The vSwitch ID.'."\n",
- 'type' => 'string',
- 'enumValueTitles' => [
- 'Ready' => 'Ready',
- 'NotCreate' => 'NotCreate',
- ],
- 'example' => 'Ready',
- ],
- 'address' => [
- 'description' => 'vsw-xxxxx',
- 'type' => 'string',
- 'example' => 'nlb-xoh3pghr***.cn-hangzhou.nlb.aliyuncs.com'."\n",
- ],
- 'addressIpVersion' => [
- 'description' => 'The vSwitch information.'."\n",
- 'type' => 'string',
- 'enumValueTitles' => [
- 'ipv4' => 'ipv4',
- 'ipv6' => 'ipv6',
- ],
- 'example' => 'ipv4',
- ],
- 'mode' => [
- 'description' => 'The vSwitch ID.'."\n",
- 'type' => 'string',
- 'enumValueTitles' => [
- 'Managed' => 'Managed',
- ],
- 'example' => 'Managed',
- ],
- 'gatewayDefault' => [
- 'description' => 'vsw-xxxxx',
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'ports' => [
- 'description' => 'The virtual private cloud (VPC) information of the instance.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The VPC ID.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'protocol' => [
- 'description' => 'vpc-xxxxx'."\n",
- 'type' => 'string',
- 'enumValueTitles' => [
- 'TCP' => 'TCP',
- 'UDP' => 'UDP',
- ],
- 'example' => 'TCP',
- ],
- 'port' => [
- 'description' => 'The resource group ID.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '443',
- ],
- ],
- ],
- ],
- 'ipv4Addresses' => [
- 'description' => 'The IPv4 addresses',
- 'type' => 'array',
- 'items' => [
- 'description' => 'string',
- 'type' => 'string',
- 'example' => '["47.100.100.100"]',
- ],
- ],
- 'ipv6Addresses' => [
- 'description' => 'The IPv6 addresses',
- 'type' => 'array',
- 'items' => [
- 'description' => 'string',
- 'type' => 'string',
- 'example' => '["2408:4000:0:0:0:0:0:1"]',
- ],
- ],
- ],
- ],
- ],
- 'securityGroup' => [
- 'description' => 'rg-xxx',
- 'type' => 'object',
- 'properties' => [
- 'securityGroupId' => [
- 'description' => 'The tags.'."\n",
- 'type' => 'string',
- 'example' => 'sg-bp1apxihjdbt3***',
- ],
- ],
- ],
- 'zones' => [
- 'description' => 'The tag.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The tag key.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'zoneId' => [
- 'description' => 'The tag value.'."\n",
- 'type' => 'string',
- 'example' => 'cn-hangzhou-i',
- ],
- 'vSwitch' => [
- 'description' => 'The second-level domain names.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'vSwitchId' => [
- 'description' => 'The second-level domain name.'."\n",
- 'type' => 'string',
- 'example' => 'vsw-bp14efvkcfbrt4***',
- ],
- ],
- ],
- ],
- ],
- ],
- 'vSwitch' => [
- 'description' => 'Indicates whether the gateway instance was created before AI Gateway launch.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'vSwitchId' => [
- 'description' => 'List Gateways',
- 'type' => 'string',
- 'example' => 'vsw-bp14efv***',
- ],
- ],
- ],
- 'vpc' => [
- 'description' => 'The VPC information',
- 'type' => 'object',
- 'properties' => [
- 'vpcId' => [
- 'description' => 'The VPC ID',
- 'type' => 'string',
- 'example' => 'vpc-uf664ny***',
- ],
- ],
- ],
- 'resourceGroupId' => [
- 'description' => 'The resource group ID',
- 'type' => 'string',
- 'example' => 'rg-xxxx',
- ],
- 'tags' => [
- 'description' => 'The tags',
- 'type' => 'array',
- 'items' => [
- 'description' => 'object',
- 'type' => 'object',
- 'properties' => [
- 'key' => [
- 'description' => 'The tag key',
- 'type' => 'string',
- 'example' => 'owner',
- ],
- 'value' => [
- 'description' => 'The tag value',
- 'type' => 'string',
- 'example' => 'zhangsan',
- ],
- ],
- ],
- ],
- 'subDomainInfos' => [
- 'description' => 'The subdomain information',
- 'type' => 'array',
- 'items' => [
- 'description' => 'SubDomainInfo',
- '$ref' => '#/components/schemas/SubDomainInfo',
- ],
- ],
- 'legacy' => [
- 'description' => 'Whether the gateway is a legacy instance',
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'gatewayEdition' => [
- 'title' => '网关实例版本:'."\n"
- ."\n"
- .'- 普通实例:Professional'."\n"
- ."\n"
- .'- Serverless:Serverless',
- 'description' => 'The gateway edition',
- 'type' => 'string',
- 'example' => 'Serverless',
- ],
+ 'id' => ['title' => '', 'description' => 'The ID of the principal (consumer).', 'type' => 'string', 'example' => 'c-aaa'],
+ 'name' => ['title' => '', 'description' => 'The name of the principal (consumer).', 'type' => 'string', 'example' => 'consumer-a'],
],
+ 'example' => '',
],
+ 'example' => '',
],
],
+ 'example' => '{"ruleId":1001}',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"5B626361-070A-56A7-B127-ADAC8F3655DB\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 6,\\n \\"items\\": [\\n {\\n \\"gatewayId\\": \\"gw-cpv54p5***\\",\\n \\"name\\": \\"itemcenter-gateway\\",\\n \\"chargeType\\": \\"POSTPAY\\",\\n \\"gatewayType\\": \\"API\\",\\n \\"status\\": \\"Running\\",\\n \\"spec\\": \\"apigw.small.x1\\",\\n \\"replicas\\": \\"2\\",\\n \\"createTimestamp\\": 1719386834548,\\n \\"updateTimestamp\\": 1719386834548,\\n \\"expireTimestamp\\": 172086834548,\\n \\"createFrom\\": \\"Console\\",\\n \\"version\\": \\"2.0.2\\",\\n \\"targetVersion\\": \\"2.0.2\\",\\n \\"loadBalancers\\": [\\n {\\n \\"loadBalancerId\\": \\"nlb-xqwioje1c91r***\\",\\n \\"addressType\\": \\"Internet\\",\\n \\"type\\": \\"NLB\\",\\n \\"status\\": \\"Ready\\",\\n \\"address\\": \\"nlb-xoh3pghr***.cn-hangzhou.nlb.aliyuncs.com\\\\n\\",\\n \\"addressIpVersion\\": \\"ipv4\\",\\n \\"mode\\": \\"Managed\\",\\n \\"gatewayDefault\\": true,\\n \\"ports\\": [\\n {\\n \\"protocol\\": \\"TCP\\",\\n \\"port\\": 443\\n }\\n ],\\n \\"ipv4Addresses\\": [\\n \\"[\\\\\\"47.100.100.100\\\\\\"]\\"\\n ],\\n \\"ipv6Addresses\\": [\\n \\"[\\\\\\"2408:4000:0:0:0:0:0:1\\\\\\"]\\"\\n ]\\n }\\n ],\\n \\"securityGroup\\": {\\n \\"securityGroupId\\": \\"sg-bp1apxihjdbt3***\\"\\n },\\n \\"zones\\": [\\n {\\n \\"zoneId\\": \\"cn-hangzhou-i\\",\\n \\"vSwitch\\": {\\n \\"vSwitchId\\": \\"vsw-bp14efvkcfbrt4***\\"\\n }\\n }\\n ],\\n \\"vSwitch\\": {\\n \\"vSwitchId\\": \\"vsw-bp14efv***\\"\\n },\\n \\"vpc\\": {\\n \\"vpcId\\": \\"vpc-uf664ny***\\"\\n },\\n \\"resourceGroupId\\": \\"rg-xxxx\\",\\n \\"tags\\": [\\n {\\n \\"key\\": \\"owner\\",\\n \\"value\\": \\"zhangsan\\"\\n }\\n ],\\n \\"subDomainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"\\"\\n }\\n ],\\n \\"legacy\\": true,\\n \\"gatewayEdition\\": \\"Serverless\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'ListGateways',
- 'translator' => 'machine',
- ],
- 'AddGatewaySecurityGroupRule' => [
- 'summary' => 'Adds a security group that authorizes an instance to access services.',
- 'path' => '/v1/gateways/{gatewayId}/security-group-rules',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Query consumer quota rule details',
+ 'description' => 'Queries the details of a consumer quota rule on an AI gateway.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetGatewayQuotaRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"1234567890\\",\\n \\"code\\": \\"200\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"ruleId\\": \\"qr-d8j7fpmm1hks65xxxxxx\\",\\n \\"ruleName\\": \\"daily-token-limit\\",\\n \\"quotaDimension\\": \\"token\\",\\n \\"quotaLimit\\": 1000,\\n \\"ruleStatus\\": \\"enabled\\",\\n \\"periodType\\": \\"day\\",\\n \\"windowAlignment\\": \\"calendar\\",\\n \\"timezone\\": \\"GMT+8\\",\\n \\"baseTimestamp\\": 1745846400000,\\n \\"consumerCount\\": 20,\\n \\"consumers\\": [\\n {\\n \\"id\\": \\"c-aaa\\",\\n \\"name\\": \\"consumer-a\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ ],
+ 'GetGatewayQuotaRuleSubjectUsage' => [
+ 'summary' => 'Queries the usage details of a subject under a gateway quota throttling rule, including used quota, total quota, whether the limit is exceeded, usage details, and consumption records.',
+ 'path' => '/v1/gateways/{gatewayId}/quota-rules/{ruleId}/subjects/{subjectId}/usage',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'write',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
'abilityTreeCode' => '222348',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayPVG2GF',
- ],
+ 'abilityTreeNodes' => ['FEATUREapigatewayUWNKMC'],
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'gatewayId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The ID of the Cloud-native API Gateway instance.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cpv4sqdlh***',
- ],
+ 'schema' => ['title' => '', 'description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-123456'],
],
[
- 'name' => 'body',
- 'in' => 'body',
- 'style' => 'json',
- 'schema' => [
- 'description' => 'The request body.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'securityGroupId' => [
- 'description' => 'The security group ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'sg-wz929kxhcdp****',
- ],
- 'portRanges' => [
- 'description' => 'The port ranges.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The port range.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '1/65535',
- ],
- 'required' => false,
- ],
- 'description' => [
- 'description' => 'The description of security group rule N.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'ProductCenterSG'."\n",
- ],
- ],
- 'required' => false,
- ],
+ 'name' => 'ruleId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The rule ID.', 'type' => 'string', 'required' => false, 'example' => 'qr-d8j7fpmm1hks65kxxxxx', 'title' => ''],
+ ],
+ [
+ 'name' => 'subjectId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The subject (consumer) ID.', 'type' => 'string', 'required' => false, 'example' => 'cs-d8kkaium1xxxxxxxxxxx'],
+ ],
+ [
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The page number of the detailed consumption (request) records of the consumer within the cycle.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The number of detailed consumption (request) records per page for the consumer within the cycle. Maximum value: 10.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'required' => false],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The response.'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '2A6E90D5-A711-54F4-A489-E33C2021EDDF',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '1234567890'],
+ 'code' => ['title' => '', 'description' => 'The status code.', 'type' => 'string', 'example' => '200'],
+ 'message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'success'],
+ 'data' => [
+ 'title' => '',
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'usedAmount' => ['title' => '', 'description' => 'The total used amount of the subject.', 'type' => 'integer', 'format' => 'int64', 'example' => '500'],
+ 'totalQuota' => ['title' => '', 'description' => 'The total quota of the subject.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000'],
+ 'overLimit' => ['title' => '', 'description' => 'Indicates whether the quota limit is exceeded.', 'type' => 'boolean', 'example' => 'false'],
+ 'inputAmount' => ['title' => '', 'description' => 'The total input token consumption.', 'type' => 'integer', 'format' => 'int64', 'example' => '300'],
+ 'outputAmount' => ['title' => '', 'description' => 'The total output token consumption.', 'type' => 'integer', 'format' => 'int64', 'example' => '180'],
+ 'cachedAmount' => ['title' => '', 'description' => 'The total cached token consumption.', 'type' => 'integer', 'format' => 'int64', 'example' => '20'],
+ 'details' => [
+ 'title' => '',
+ 'description' => 'The paginated consumption details.',
+ 'type' => 'object',
+ 'properties' => [
+ 'totalSize' => ['title' => '', 'description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '100'],
+ 'pageNumber' => ['title' => '', 'description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'],
+ 'pageSize' => ['title' => '', 'description' => 'The current page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '10'],
+ 'items' => [
+ 'title' => '',
+ 'description' => 'The list of usage details.',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '',
+ 'description' => 'The consumption detail entry.',
+ 'type' => 'object',
+ 'properties' => [
+ 'model' => ['title' => '', 'description' => 'The model name.', 'type' => 'string', 'example' => 'qwen-plus'],
+ 'inputAmount' => ['title' => '', 'description' => 'The input token consumption.', 'type' => 'integer', 'format' => 'int64', 'example' => '120'],
+ 'outputAmount' => ['title' => '', 'description' => 'The output token consumption.', 'type' => 'integer', 'format' => 'int64', 'example' => '80'],
+ 'cachedAmount' => ['title' => '', 'description' => 'The cached token consumption.', 'type' => 'integer', 'format' => 'int64', 'example' => '10'],
+ 'usedAmount' => ['title' => '', 'description' => 'The total consumption.', 'type' => 'integer', 'format' => 'int64', 'example' => '210'],
+ 'startTime' => ['title' => '', 'description' => 'The consumption (request) time in the format of YYYY-MM-DD.', 'type' => 'string', 'example' => '2026-06-05'],
+ ],
+ 'example' => '{\'model\':\'qwen-plus\',\'usedAmount\':210}',
+ ],
+ 'example' => '[{"model":"qwen-plus",\'usedAmount\':210}]',
+ ],
+ ],
+ 'example' => '{"totalSize":100}',
+ ],
+ ],
+ 'example' => '{"usedAmount":500}',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Retrieve usage details of a consumer under a quota rule',
+ 'description' => 'Retrieves the usage details of a specific consumer under a quota rule. This operation takes effect only for AI gateways with a version later than 2.1.19.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"2A6E90D5-A711-54F4-A489-E33C2021EDDF\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'AddGatewaySecurityGroupRule',
- 'translator' => 'machine',
- ],
- 'DeleteGateway' => [
- 'summary' => 'Deletes a Cloud-native API Gateway instance.',
- 'path' => '/v1/gateways/{gatewayId}',
- 'methods' => [
- 'delete',
- ],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetGatewayQuotaRuleSubjectUsage',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"1234567890\\",\\n \\"code\\": \\"200\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"usedAmount\\": 500,\\n \\"totalQuota\\": 1000,\\n \\"overLimit\\": false,\\n \\"inputAmount\\": 300,\\n \\"outputAmount\\": 180,\\n \\"cachedAmount\\": 20,\\n \\"details\\": {\\n \\"totalSize\\": 100,\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"items\\": [\\n {\\n \\"model\\": \\"qwen-plus\\",\\n \\"inputAmount\\": 120,\\n \\"outputAmount\\": 80,\\n \\"cachedAmount\\": 10,\\n \\"usedAmount\\": 210,\\n \\"startTime\\": \\"2026-06-05\\"\\n }\\n ]\\n }\\n }\\n}","type":"json"}]',
+ ],
+ 'GetHttpApi' => [
+ 'summary' => 'Retrieves HTTP API information.',
+ 'path' => '/v1/http-apis/{httpApiId}',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'write',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'delete',
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '218957',
+ 'abilityTreeNodes' => ['FEATUREapigateway910B7T'],
],
'parameters' => [
[
- 'name' => 'gatewayId',
+ 'name' => 'httpApiId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The ID of the Cloud-native API Gateway instance.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cpv4sqdl*****',
- ],
+ 'schema' => ['title' => '', 'description' => 'The ID of the target HTTP API.', 'type' => 'string', 'required' => true, 'example' => 'api-xxx'],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The response data.'."\n",
+ 'description' => 'The response.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'DE97DFDB-7DF0-5AB9-941C-10D27D769E4B',
- ],
- 'message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
+ 'requestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '8FA9BB94-915B-5299-A694-49FCC7F5DD00', 'title' => ''],
+ 'message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'success'],
+ 'code' => ['title' => '', 'description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok'],
+ 'data' => ['title' => '', 'description' => 'The API information.', '$ref' => '#/components/schemas/HttpApiApiInfo', 'example' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'title' => 'Retrieve HTTP API',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHttpApi'],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"DE97DFDB-7DF0-5AB9-941C-10D27D769E4B\\",\\n \\"message\\": \\"success\\",\\n \\"code\\": \\"Ok\\"\\n}","type":"json"}]',
- 'title' => 'DeleteGateway',
- 'translator' => 'machine',
- ],
- 'DeleteGatewaySecurityGroupRule' => [
- 'summary' => 'Deletes a security group rule from a Cloud-native API Gateway instance.',
- 'path' => '/v1/gateways/{gatewayId}/security-group-rules/{securityGroupRuleId}',
- 'methods' => [
- 'delete',
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetHttpApi',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'https',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"8FA9BB94-915B-5299-A694-49FCC7F5DD00\\",\\n \\"message\\": \\"success\\",\\n \\"code\\": \\"Ok\\",\\n \\"data\\": {\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"basePath\\": \\"/v1\\",\\n \\"description\\": \\"测试专用API\\",\\n \\"versionInfo\\": {\\n \\"enable\\": true,\\n \\"scheme\\": \\"Query\\",\\n \\"headerName\\": \\"my-version\\",\\n \\"queryName\\": \\"myVersion\\",\\n \\"version\\": \\"v1\\"\\n },\\n \\"ingressInfo\\": {\\n \\"sourceId\\": \\"src-xxx\\",\\n \\"ingressClass\\": \\"mse\\",\\n \\"watchNamespace\\": \\"default\\",\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"env-xxx\\"\\n },\\n \\"k8sClusterInfo\\": {\\n \\"clusterId\\": \\"ca435c77cba1547cca9311957bcxxxxxx\\"\\n },\\n \\"overrideIngressIp\\": true\\n },\\n \\"type\\": \\"Rest\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"enableAuth\\": false,\\n \\"authConfig\\": {\\n \\"authType\\": \\"Jwt\\",\\n \\"authMode\\": \\"NoAuth\\"\\n },\\n \\"gatewayId\\": \\"gw-cpv4sqdl****\\",\\n \\"modelCategory\\": \\"Text\\",\\n \\"protocols\\": [\\n \\"HTTP\\"\\n ],\\n \\"environments\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"backendType\\": \\"Service\\",\\n \\"serviceConfigs\\": [\\n {\\n \\"gatewayServiceId\\": \\"gs-xxx\\",\\n \\"name\\": \\"demo-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": \\"8080\\",\\n \\"weight\\": 100,\\n \\"version\\": \\"v1\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"serviceId\\": \\"svc-xxx\\"\\n }\\n ],\\n \\"customDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"test\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n }\\n ],\\n \\"aiProtocols\\": [\\n \\"OpenAI/v1\\"\\n ],\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"Mock测试\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"envDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"INQUIRY\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 80,\\n \\"protocol\\": \\"HTTP\\",\\n \\"gatewayServiceId\\": \\"gw-svc-abc123\\",\\n \\"name\\": \\"Qwen-Max-Service\\",\\n \\"version\\": \\"V2\\",\\n \\"multiServiceRouteStrategy\\": \\"ByWeight\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"LeastBusy\\",\\n \\"rateLimit\\": 0.8,\\n \\"queueSize\\": 100\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {}\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cshee6dlhtgk******\\",\\n \\"name\\": \\"hello-server.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"envDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-env-xxx\\",\\n \\"name\\": \\"api.example.com\\",\\n \\"protocol\\": \\"HTTPS\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-csmn42um******\\",\\n \\"name\\": \\"test\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Intranet\\"\\n }\\n ],\\n \\"builtinRouteNames\\": [\\n \\"[\\\\\\"chat\\\\\\",\\\\\\"completions\\\\\\"]\\"\\n ]\\n }\\n ],\\n \\"deployCntMap\\": {\\n \\"key\\": {\\n \\"deployedCnt\\": 3,\\n \\"cnt\\": 0\\n }\\n },\\n \\"agentProtocols\\": [\\n \\"DashScope\\"\\n ]\\n }\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
+ ],
+ 'GetHttpApiOperation' => [
+ 'path' => '/v1/http-apis/{httpApiId}/operations/{operationId}',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'write',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '219803',
+ 'abilityTreeNodes' => ['FEATUREapigateway910B7T'],
],
'parameters' => [
[
- 'name' => 'gatewayId',
+ 'name' => 'httpApiId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The ID of the Cloud-native API Gateway instance.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cpv4sqdl*****',
- ],
+ 'schema' => ['title' => '', 'description' => 'The ID of the HTTP API to which the operation belongs.', 'type' => 'string', 'required' => true, 'example' => 'api-xxx'],
],
[
- 'name' => 'securityGroupRuleId',
+ 'name' => 'operationId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The rule ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gsgr-cpqnj1llht***',
- ],
- ],
- [
- 'name' => 'cascadingDelete',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Specifies whether to delete the cascaded security group rule.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'schema' => ['title' => '', 'description' => 'The operation ID.', 'type' => 'string', 'required' => true, 'example' => 'op-xxx'],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The response data.'."\n",
+ 'title' => '',
+ 'description' => 'The response.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '8F94B3CC-F4BA-511E-8367-ECBBE486E595',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'B725275B-50C6-5A49-A9FD-F0332FCB3351'],
+ 'code' => ['title' => '', 'description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok'],
+ 'message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'success'],
+ 'data' => ['title' => '', 'description' => 'The operation information.', '$ref' => '#/components/schemas/HttpApiOperationInfo', 'example' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"8F94B3CC-F4BA-511E-8367-ECBBE486E595\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'DeleteGatewaySecurityGroupRule',
- 'translator' => 'machine',
- ],
- 'ListZones' => [
- 'summary' => 'Retrieve the availability zones under a cloud-native API gateway region',
- 'path' => '/v1/zones',
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
- 'security' => [
- [
- 'AK' => [],
+ 'title' => 'Retrieve operation information',
+ 'summary' => 'Retrieves operation information.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHttpApiOperation'],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'none',
- 'abilityTreeCode' => '226563',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayC93I4Z',
- ],
- ],
- 'parameters' => [],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response body.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Request ID.',
- 'type' => 'string',
- 'example' => 'E8079207-B651-592A-A565-23E9EE5673B0',
- ],
- 'code' => [
- 'title' => '响应状态码。',
- 'description' => 'Response status code.',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'title' => '响应信息。',
- 'description' => 'Response message.',
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'data' => [
- 'title' => '返回数据。',
- 'description' => 'The data returned.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'items' => [
- 'title' => '可用区列表。',
- 'description' => 'The list of queried zones.'."\n",
- 'type' => 'array',
- 'items' => [
- 'title' => '可用区ID。',
- 'description' => 'object',
- 'type' => 'object',
- 'properties' => [
- 'zoneId' => [
- 'title' => '可用区ID。',
- 'description' => 'The zone identifier',
- 'type' => 'string',
- 'example' => 'cn-shenzhen-c',
- ],
- 'supportQat' => [
- 'description' => 'Whether QAT (Quality Assurance Testing) is supported in this zone',
- 'type' => 'string',
- 'example' => 'true',
- ],
- ],
- ],
- ],
- ],
- ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetHttpApiOperation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
],
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"E8079207-B651-592A-A565-23E9EE5673B0\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"items\\": [\\n {\\n \\"zoneId\\": \\"cn-shenzhen-c\\",\\n \\"supportQat\\": \\"true\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'ListZones',
- 'translator' => 'machine',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"B725275B-50C6-5A49-A9FD-F0332FCB3351\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"operationId\\": \\"op-xxx\\",\\n \\"method\\": \\"GET\\",\\n \\"name\\": \\"GetUserInfo\\",\\n \\"path\\": \\"/user/123\\",\\n \\"description\\": \\"获取用户信息\\",\\n \\"response\\": {\\n \\"contentType\\": \\"application/json\\",\\n \\"items\\": [\\n {\\n \\"code\\": 200,\\n \\"example\\": \\"{\\\\\\"result\\\\\\": \\\\\\"ok\\\\\\"}\\",\\n \\"description\\": \\"正常接口响应\\",\\n \\"jsonSchema\\": \\"{\\\\n \\\\\\"type\\\\\\": \\\\\\"object\\\\\\",\\\\n \\\\\\"required\\\\\\": [\\\\n \\\\\\"result\\\\\\"\\\\n ],\\\\n \\\\\\"properties\\\\\\": {\\\\n \\\\\\"result\\\\\\": {\\\\n \\\\\\"type\\\\\\": \\\\\\"string\\\\\\",\\\\n \\\\\\"description\\\\\\": \\\\\\"操作结果,\'ok\' 表示成功\\\\\\"\\\\n }\\\\n }\\\\n}\\"\\n }\\n ]\\n },\\n \\"request\\": {\\n \\"headerParameters\\": [\\n {\\n \\"name\\": \\"userId\\",\\n \\"required\\": true,\\n \\"type\\": \\"String\\",\\n \\"defaultValue\\": \\"123\\",\\n \\"exampleValue\\": \\"123\\",\\n \\"description\\": \\"用户ID\\"\\n }\\n ],\\n \\"queryParameters\\": [\\n {\\n \\"name\\": \\"userId\\",\\n \\"required\\": true,\\n \\"type\\": \\"String\\",\\n \\"defaultValue\\": \\"123\\",\\n \\"exampleValue\\": \\"123\\",\\n \\"description\\": \\"用户ID\\"\\n }\\n ],\\n \\"pathParameters\\": [\\n {\\n \\"name\\": \\"userId\\",\\n \\"required\\": true,\\n \\"type\\": \\"String\\",\\n \\"defaultValue\\": \\"123\\",\\n \\"exampleValue\\": \\"123\\",\\n \\"description\\": \\"用户ID\\"\\n }\\n ],\\n \\"body\\": {\\n \\"description\\": \\"body参数描述\\",\\n \\"example\\": \\"{\\\\\\"result\\\\\\":\\\\\\"ok\\\\\\"}\\",\\n \\"contentType\\": \\"application/json\\",\\n \\"jsonSchema\\": \\"{\\\\n \\\\\\"type\\\\\\": \\\\\\"object\\\\\\",\\\\n \\\\\\"required\\\\\\": [\\\\n \\\\\\"result\\\\\\"\\\\n ],\\\\n \\\\\\"properties\\\\\\": {\\\\n \\\\\\"result\\\\\\": {\\\\n \\\\\\"type\\\\\\": \\\\\\"string\\\\\\",\\\\n \\\\\\"description\\\\\\": \\\\\\"操作结果,\'ok\' 表示成功\\\\\\"\\\\n }\\\\n }\\\\n}\\\\n\\"\\n }\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"Mock测试\\"\\n },\\n \\"createTimestamp\\": 1719386834548,\\n \\"enableAuth\\": true,\\n \\"authConfig\\": {\\n \\"authType\\": \\"Jwt\\",\\n \\"authMode\\": \\"NoAuth\\"\\n },\\n \\"status\\": \\"Deployed\\",\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"Mock测试\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"envDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"INQUIRY\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 80,\\n \\"protocol\\": \\"HTTP\\",\\n \\"gatewayServiceId\\": \\"gw-svc-abc123\\",\\n \\"name\\": \\"Qwen-Max-Service\\",\\n \\"version\\": \\"V2\\",\\n \\"multiServiceRouteStrategy\\": \\"ByWeight\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"LeastBusy\\",\\n \\"rateLimit\\": 0.8,\\n \\"queueSize\\": 100\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {}\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cshee6dlhtgk******\\",\\n \\"name\\": \\"hello-server.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"envDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-env-xxx\\",\\n \\"name\\": \\"api.example.com\\",\\n \\"protocol\\": \\"HTTPS\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-csmn42um******\\",\\n \\"name\\": \\"test\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Intranet\\"\\n }\\n ],\\n \\"builtinRouteNames\\": [\\n \\"[\\\\\\"chat\\\\\\",\\\\\\"completions\\\\\\"]\\"\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]',
],
- 'RestartGateway' => [
- 'summary' => 'Restarts an instance.',
- 'path' => '/v1/gateways/{gatewayId}/restart',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'GetHttpApiRoute' => [
+ 'summary' => 'Retrieves the route details of an HTTP API.',
+ 'path' => '/v1/http-apis/{httpApiId}/routes/{routeId}',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'write',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '237782',
+ 'abilityTreeNodes' => ['FEATUREapigateway910B7T'],
],
'parameters' => [
[
- 'name' => 'gatewayId',
+ 'name' => 'httpApiId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cq2avtllh****',
- ],
+ 'schema' => ['description' => 'HTTP API ID。', 'type' => 'string', 'required' => false, 'example' => 'api-cqu95allhtgii6***', 'title' => ''],
+ ],
+ [
+ 'name' => 'routeId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The route ID.', 'type' => 'string', 'required' => false, 'example' => 'hr-cr82undlhtgrl***', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
+ 'title' => '',
+ 'description' => 'The response struct.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '585657D2-1C20-5B8A-AF17-D727C6490BE4',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '3ACFC7A7-45A9-58CF-B2D5-765B60254695'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => ['description' => 'The route details.', '$ref' => '#/components/schemas/HttpRoute', 'title' => '', 'example' => ''],
],
- 'description' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C6490BE4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'RestartGateway',
- 'translator' => 'machine',
- ],
- 'ListGatewayFeatures' => [
- 'summary' => 'Queries the feature parameter configurations of an instance.',
- 'path' => '/v1/gateways/{gatewayId}/gateway-features',
- 'methods' => [
- 'get',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Query route details',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHttpApiRoute'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetHttpApiRoute',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3ACFC7A7-45A9-58CF-B2D5-765B60254695\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"routeId\\": \\"hr-crf5l7tlhtgp91t***\\",\\n \\"name\\": \\"itemcenter-pre-route\\",\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"description\\": \\"商品中心预发路由\\",\\n \\"match\\": {\\n \\"ignoreUriCase\\": true,\\n \\"path\\": {\\n \\"type\\": \\"Prefix\\",\\n \\"value\\": \\"/user\\"\\n },\\n \\"headers\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"dev\\",\\n \\"value\\": \\"true\\"\\n }\\n ],\\n \\"methods\\": [\\n \\"GET\\"\\n ],\\n \\"queryParams\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"age\\",\\n \\"value\\": \\"17\\"\\n }\\n ]\\n },\\n \\"backend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"env-crhq1u5lhtgju***\\",\\n \\"name\\": \\"itemcenter-pre\\",\\n \\"alias\\": \\"商品中心预发环境\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cqoohqtlh***\\",\\n \\"name\\": \\"itemcenter-gateway\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-cqu19hdlhtgjuv4***\\",\\n \\"name\\": \\"env-crmic3llht***-cn-hangzhou-vpc.alicloudapi.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n },\\n \\"createTimestamp\\": 1726649310593,\\n \\"updateTimestamp\\": 1726819895636,\\n \\"mcpServerInfo\\": {\\n \\"importInstanceId\\": \\"import-001\\",\\n \\"importNamespace\\": \\"default\\",\\n \\"importMcpServerId\\": \\"mcp-002\\",\\n \\"createFromType\\": \\"Nacos\\",\\n \\"mcpServerConfig\\": \\"{\\\\\\\\\\\\\\"config\\\\\\\\\\\\\\":{}}\\",\\n \\"mcpRouteConfig\\": {\\n \\"protocol\\": \\"SSE\\",\\n \\"exposedUriPath\\": \\"/mcp\\"\\n }\\n },\\n \\"domainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cr3v7dllhtgi9s***\\",\\n \\"name\\": \\"itemcenter.dev\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"gatewayStatus\\": {\\n \\"key\\": \\"Running\\"\\n },\\n \\"builtin\\": \\"true\\"\\n }\\n}","type":"json"}]',
+ ],
+ 'GetMcpServer' => [
+ 'path' => '/v1/mcp-servers/{mcpServerId}',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '281126',
+ 'abilityTreeNodes' => ['FEATUREapigatewayMD7H1W'],
],
'parameters' => [
[
- 'name' => 'gatewayId',
+ 'name' => 'mcpServerId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cpv4sqdl****',
- ],
+ 'schema' => ['description' => 'MCP Server ID', 'type' => 'string', 'required' => false, 'example' => 'mcp-adfefz24afg', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '393E2630-DBE7-5221-AB35-9E740675491A',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '2A6E90D5-A711-54F4-A489-E33C2021EDDF'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
'data' => [
- 'description' => 'The returned data.'."\n",
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'items' => [
- 'description' => 'The list of parameter configurations.'."\n",
+ 'mcpServerId' => ['description' => 'MCP Server ID', 'type' => 'string', 'example' => 'mcp-adfefz24afg', 'title' => ''],
+ 'name' => ['description' => 'The MCP server name.', 'type' => 'string', 'example' => 'test-mcp', 'title' => ''],
+ 'type' => ['description' => 'The MCP server type.', 'type' => 'string', 'example' => 'RealMCP', 'title' => ''],
+ 'description' => ['description' => 'The description.', 'type' => 'string', 'example' => '测试专用MCP Server', 'title' => ''],
+ 'gatewayId' => ['description' => 'The gateway instance ID.', 'type' => 'string', 'example' => 'gw-cq2vundlhtg***', 'title' => ''],
+ 'environmentId' => ['description' => 'The environment ID.', 'type' => 'string', 'example' => 'env-cq7l5s5lhtgi6qasrdc0'."\n", 'title' => ''],
+ 'routeId' => ['description' => 'The route ID.', 'type' => 'string', 'example' => 'hr-cr82undlhtgrlej***', 'title' => ''],
+ 'createFromType' => ['description' => 'The creation source type. Valid values:'."\n"
+ ."\n"
+ .'- ApiGatewayHttpToMCP: gateway-managed HTTP-to-MCP conversion.'."\n"
+ .'- ApiGatewayMcpHosting: gateway-managed MCP direct proxy.'."\n"
+ .'- ApiGatewayAssembly: gateway MCP assembly.'."\n"
+ .'- NacosHttpToMCP: gateway-managed Nacos-synced HTTP-to-MCP conversion.'."\n"
+ .'- NacosMcpHosting: gateway-managed Nacos-synced MCP direct proxy.', 'type' => 'string', 'example' => 'ApiGatewayHttpToMCP', 'title' => ''],
+ 'backend' => ['description' => 'The backend service of the route.', '$ref' => '#/components/schemas/Backend', 'title' => '', 'example' => ''],
+ 'match' => ['description' => 'The route match rule.', '$ref' => '#/components/schemas/HttpRouteMatch', 'example' => '{\\"product_code\\":\\"apigw\\"}', 'title' => ''],
+ 'domainIds' => [
+ 'description' => 'The list of domain name IDs.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The domain name ID.', 'type' => 'string', 'example' => 'd-aafefqefz', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'domainInfos' => [
+ 'description' => 'The list of domain name information.',
'type' => 'array',
'items' => [
- 'description' => 'The parameter configurations.'."\n",
'type' => 'object',
'properties' => [
- 'definition' => [
- 'description' => 'The parameter definition.'."\n",
+ 'protocol' => ['description' => 'The protocol.', 'type' => 'string', 'example' => 'HTTP,HTTPS', 'title' => ''],
+ 'name' => ['description' => 'The domain name.', 'type' => 'string', 'example' => 'verifyicket', 'title' => ''],
+ 'domainId' => ['description' => 'The domain name ID.', 'type' => 'string', 'example' => 'www.abc.com', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'protocol' => ['description' => 'The service protocol.', 'type' => 'string', 'example' => 'HTTP', 'title' => ''],
+ 'mcpServerPath' => ['description' => 'The MCP server access path provided by the gateway.', 'type' => 'string', 'example' => '/mcp-servers/test-mcp', 'title' => ''],
+ 'exposedUriPath' => ['description' => 'The exposed URI path. This parameter is required when protocol is SSE or StreamableHTTP and type is RealMCP.', 'type' => 'string', 'example' => '/sse', 'title' => ''],
+ 'nacosMcpSyncInfo' => [
+ 'description' => 'The Nacos-synced managed MCP information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'importInstanceId' => ['description' => 'The Nacos instance.', 'type' => 'string', 'example' => 'mse-xxxxx', 'title' => ''],
+ 'importNamespace' => ['description' => 'The Nacos namespace.', 'type' => 'string', 'example' => 'test-ns', 'title' => ''],
+ 'importMcpServerId' => ['description' => 'The synced MCP server ID.', 'type' => 'string', 'example' => 'test-mcp', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'assembledSources' => [
+ 'description' => 'The list of assembly sources. This parameter is required when type is AssemblyMCP.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list of assembly sources. This parameter is required when type is AssemblyMCP.',
+ 'type' => 'object',
+ 'properties' => [
+ 'mcpServerName' => ['description' => 'The MCP server name.', 'type' => 'string', 'example' => 'test-mcp', 'title' => ''],
+ 'mcpServerId' => ['description' => 'MCP Server ID', 'type' => 'string', 'example' => 'mcp-xdafeafzz', 'title' => ''],
+ 'tools' => [
+ 'description' => 'The list of MCP tools.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The list of MCP tools.', 'type' => 'string', 'example' => 'test-tool', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'mcpServerConfig' => ['description' => 'The HTTP-to-MCP configuration.', 'type' => 'string', 'example' => 'MCP Server配置 base64', 'title' => ''],
+ 'mcpServerConfigPluginAttachmentId' => ['description' => 'The MCP server plugin configuration attachment ID.', 'type' => 'string', 'example' => 'pa-adfaefwaef', 'title' => ''],
+ 'deployStatus' => ['description' => 'The publish status of the API in the current environment.', 'type' => 'string', 'example' => 'Deployed', 'title' => ''],
+ 'mcpStatisticsEnable' => ['description' => 'Specifies whether MCP observability is enabled. Default value: false.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'grayMcpServerConfigs' => [
+ 'description' => 'The canary release route configurations.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The parameter.',
+ 'type' => 'object',
+ 'properties' => [
+ 'routeId' => ['description' => 'The canary release route ID.', 'type' => 'string', 'example' => 'gray-route-xxx', 'title' => ''],
+ 'match' => ['description' => 'The canary release route match rule.', '$ref' => '#/components/schemas/HttpRouteMatch', 'title' => '', 'example' => ''],
+ 'backendConfig' => [
+ 'description' => 'The canary release route backend configuration.',
'type' => 'object',
'properties' => [
- 'name' => [
- 'description' => 'The parameter name.'."\n",
- 'type' => 'string',
- 'example' => 'enable-gzip',
- ],
- 'displayName' => [
- 'description' => 'The display name of the parameter.'."\n",
- 'type' => 'string',
- 'example' => 'EnableGzip',
- ],
- 'valueType' => [
- 'description' => 'The value type of the parameter. Valid values:'."\n"
- ."\n"
- .'* bool: boolean'."\n"
- .'* string'."\n"
- .'* int32: integer'."\n"
- .'* int64: long integer'."\n"
- .'* json'."\n"
- .'* array: JSON array'."\n"
- .'* float: floating point'."\n",
- 'type' => 'string',
- 'enumValueTitles' => [
- 'bool' => 'bool',
- 'string' => 'string',
- 'int32' => 'int32',
- 'array' => 'array',
- 'int64' => 'int64',
- 'float' => 'float',
- ],
- 'example' => 'bool',
- ],
- 'description' => [
- 'description' => 'The parameter description.'."\n",
- 'type' => 'string',
- 'example' => '',
- ],
- 'group' => [
- 'description' => 'The parameter group to which the parameter belongs. Valid values:'."\n"
- ."\n"
- .'* Telemetry: an observability parameter'."\n"
- .'* Engine: an engine parameter'."\n",
- 'type' => 'string',
- 'enumValueTitles' => [
- 'Telemetry' => 'Telemetry',
- 'Engine' => 'Engine',
- ],
- 'example' => 'Engine',
- ],
- 'defaultValue' => [
- 'description' => 'The default value of the parameter.'."\n",
- 'type' => 'string',
- 'example' => '"true"',
- ],
- 'valueUnit' => [
- 'description' => 'The value unit.'."\n",
- 'type' => 'string',
- 'example' => 'byte',
- ],
- 'readOnly' => [
- 'description' => 'Indicates whether the parameter is read-only.'."\n",
- 'type' => 'boolean',
- 'example' => 'false',
- ],
- 'regex' => [
- 'description' => 'The regular expression that the parameter value must fulfill. This parameter is valid when the value type is string.'."\n",
- 'type' => 'string',
- 'example' => '[a-z].*',
- ],
- 'minValue' => [
- 'description' => 'The minimum value of the parameter. This parameter is valid when the value type is int32, int64, or float.'."\n",
- 'type' => 'string',
- 'example' => '100',
- ],
- 'maxValue' => [
- 'description' => 'The maximum value of the parameter. This parameter is valid when the value type is int32, int64, or float.'."\n",
- 'type' => 'string',
- 'example' => '65535',
- ],
- 'minLength' => [
- 'description' => 'The minimum length of the value. This parameter is valid when the value type is string.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '8',
- ],
- 'maxLength' => [
- 'description' => 'The maximum length of the value. This parameter is valid when the value type is string.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '64',
- ],
- 'valueOptions' => [
- 'description' => 'The list of options supported by the parameter value.'."\n",
+ 'scene' => ['description' => 'The backend scene.', 'type' => 'string', 'example' => 'SingleService', 'title' => ''],
+ 'services' => [
+ 'description' => 'The list of service configurations.',
'type' => 'array',
'items' => [
- 'description' => 'The option information.'."\n",
+ 'description' => 'The parameter.',
'type' => 'object',
'properties' => [
- 'label' => [
- 'description' => 'The display value.'."\n",
- 'type' => 'string',
- 'example' => '',
- ],
- 'key' => [
- 'description' => 'The key to pass the parameter.'."\n",
- 'type' => 'string',
- 'example' => 'KEEP_UNCHANGED',
- ],
+ 'protocol' => ['description' => 'The service protocol.', 'type' => 'string', 'example' => 'HTTP', 'title' => ''],
+ 'port' => ['description' => 'The service port.', 'type' => 'integer', 'format' => 'int32', 'example' => '8080', 'title' => ''],
+ 'weight' => ['description' => 'The service weight.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''],
+ 'serviceId' => ['description' => 'The service ID.', 'type' => 'string', 'example' => 'svc-xxx', 'title' => ''],
+ 'version' => ['description' => 'The service version.', 'type' => 'string', 'example' => 'v2.0.0', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- ],
- 'inputType' => [
- 'description' => 'The input type of the parameter. Valid values:'."\n"
- ."\n"
- .'* Trigger'."\n"
- .'* Input'."\n"
- .'* SingleSelect'."\n"
- .'* MultiSelect'."\n",
- 'type' => 'string',
- 'enumValueTitles' => [
- 'SingleSelect' => 'SingleSelect',
- 'MultiSelect' => 'MultiSelect',
- 'Input' => 'Input',
- 'Trigger' => 'Trigger',
- ],
- 'example' => 'Trigger',
+ 'title' => '',
+ 'example' => '',
],
],
- ],
- 'value' => [
- 'description' => 'The parameter value.'."\n",
- 'type' => 'string',
- 'example' => '"true"',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
+ 'apiId' => ['description' => 'API ID。', 'type' => 'string', 'example' => 'api-xxx', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Query MCP server details',
+ 'summary' => 'Retrieves an MCP server.',
+ 'description' => 'The operation supports creating multiple services.',
+ 'changeSet' => [
+ ['createdAt' => '2026-06-05T07:26:38.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2025-12-05T07:15:33.000Z', 'description' => 'Response parameters changed'],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"393E2630-DBE7-5221-AB35-9E740675491A\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"items\\": [\\n {\\n \\"definition\\": {\\n \\"name\\": \\"enable-gzip\\",\\n \\"displayName\\": \\"EnableGzip\\",\\n \\"valueType\\": \\"bool\\",\\n \\"description\\": \\"作用于请求与响应环节,启用gzip会对请求响应进行压缩,会减少网关流量,增加网关cpu消耗\\",\\n \\"group\\": \\"Engine\\",\\n \\"defaultValue\\": \\"\\\\\\"true\\\\\\"\\",\\n \\"valueUnit\\": \\"byte\\",\\n \\"readOnly\\": false,\\n \\"regex\\": \\"[a-z].*\\",\\n \\"minValue\\": \\"100\\",\\n \\"maxValue\\": \\"65535\\",\\n \\"minLength\\": 8,\\n \\"maxLength\\": 64,\\n \\"valueOptions\\": [\\n {\\n \\"label\\": \\"保持不变\\",\\n \\"key\\": \\"KEEP_UNCHANGED\\"\\n }\\n ],\\n \\"inputType\\": \\"Trigger\\"\\n },\\n \\"value\\": \\"\\\\\\"true\\\\\\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'ListGatewayFeatures',
- ],
- 'RemoveConsumerAuthorizationRule' => [
- 'summary' => 'Deletes a consumer authorization rule.',
- 'path' => '/v1/authorization-rules/{consumerAuthorizationRuleId}',
- 'methods' => [
- 'delete',
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetMcpServer',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"2A6E90D5-A711-54F4-A489-E33C2021EDDF\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"Success\\",\\n \\"data\\": {\\n \\"mcpServerId\\": \\"mcp-adfefz24afg\\",\\n \\"name\\": \\"test-mcp\\",\\n \\"type\\": \\"RealMCP\\",\\n \\"description\\": \\"测试专用MCP Server\\",\\n \\"gatewayId\\": \\"gw-cq2vundlhtg***\\",\\n \\"environmentId\\": \\"env-cq7l5s5lhtgi6qasrdc0\\\\n\\",\\n \\"routeId\\": \\"hr-cr82undlhtgrlej***\\",\\n \\"createFromType\\": \\"ApiGatewayHttpToMCP\\",\\n \\"backend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"match\\": {\\n \\"ignoreUriCase\\": true,\\n \\"path\\": {\\n \\"type\\": \\"Prefix\\",\\n \\"value\\": \\"/user\\"\\n },\\n \\"headers\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"dev\\",\\n \\"value\\": \\"true\\"\\n }\\n ],\\n \\"methods\\": [\\n \\"GET\\"\\n ],\\n \\"queryParams\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"age\\",\\n \\"value\\": \\"17\\"\\n }\\n ]\\n },\\n \\"domainIds\\": [\\n \\"d-aafefqefz\\"\\n ],\\n \\"domainInfos\\": [\\n {\\n \\"protocol\\": \\"HTTP,HTTPS\\",\\n \\"name\\": \\"verifyicket\\",\\n \\"domainId\\": \\"www.abc.com\\"\\n }\\n ],\\n \\"protocol\\": \\"HTTP\\",\\n \\"mcpServerPath\\": \\"/mcp-servers/test-mcp\\",\\n \\"exposedUriPath\\": \\"/sse\\",\\n \\"nacosMcpSyncInfo\\": {\\n \\"importInstanceId\\": \\"mse-xxxxx\\",\\n \\"importNamespace\\": \\"test-ns\\",\\n \\"importMcpServerId\\": \\"test-mcp\\"\\n },\\n \\"assembledSources\\": [\\n {\\n \\"mcpServerName\\": \\"test-mcp\\",\\n \\"mcpServerId\\": \\"mcp-xdafeafzz\\",\\n \\"tools\\": [\\n \\"test-tool\\"\\n ]\\n }\\n ],\\n \\"mcpServerConfig\\": \\"MCP Server配置 base64\\",\\n \\"mcpServerConfigPluginAttachmentId\\": \\"pa-adfaefwaef\\",\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"mcpStatisticsEnable\\": false,\\n \\"grayMcpServerConfigs\\": [\\n {\\n \\"routeId\\": \\"gray-route-xxx\\",\\n \\"match\\": {\\n \\"ignoreUriCase\\": true,\\n \\"path\\": {\\n \\"type\\": \\"Prefix\\",\\n \\"value\\": \\"/user\\"\\n },\\n \\"headers\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"dev\\",\\n \\"value\\": \\"true\\"\\n }\\n ],\\n \\"methods\\": [\\n \\"GET\\"\\n ],\\n \\"queryParams\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"age\\",\\n \\"value\\": \\"17\\"\\n }\\n ]\\n },\\n \\"backendConfig\\": {\\n \\"scene\\": \\"SingleService\\",\\n \\"services\\": [\\n {\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 8080,\\n \\"weight\\": 100,\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"version\\": \\"v2.0.0\\"\\n }\\n ]\\n }\\n }\\n ],\\n \\"apiId\\": \\"api-xxx\\"\\n }\\n}","type":"json"}]',
+ ],
+ 'GetPluginAttachment' => [
+ 'path' => '/v1/plugin-attachments/{pluginAttachmentId}',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
- 'abilityTreeCode' => '260504',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '253923',
+ 'abilityTreeNodes' => ['FEATUREapigatewayIRO3QE'],
],
'parameters' => [
[
- 'name' => 'consumerAuthorizationRuleId',
+ 'name' => 'pluginAttachmentId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The authorization rule ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'car-ctgdn8em1hko5krqq03g',
- ],
+ 'schema' => ['description' => 'The plugin mount ID.', 'type' => 'string', 'required' => false, 'example' => 'pa-cvl541em1hkk7n8vq810', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request'."\n",
- 'type' => 'string',
- 'example' => '5B626361-070A-56A7-B127-ADAC8F3655DB',
- ],
- 'code' => [
- 'description' => 'The status code returned.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'C61E30D3-579A-5B43-994E-31E02EDC9129'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'pluginAttachmentId' => ['description' => 'The plugin mount ID.', 'type' => 'string', 'example' => 'pa-d05f1tmm1hku195dd8j0', 'title' => ''],
+ 'parentResourceInfo' => ['description' => 'The parent mount resource information.', '$ref' => '#/components/schemas/ParentResourceInfo', 'title' => '', 'example' => ''],
+ 'resourceInfos' => [
+ 'description' => 'The list of mount resource information.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The mount resource information.', '$ref' => '#/components/schemas/ResourceInfo', 'title' => '', 'example' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'environmentInfo' => ['description' => 'The environment context.', '$ref' => '#/components/schemas/EnvironmentInfo', 'title' => '', 'example' => ''],
+ 'pluginConfig' => ['description' => 'The Base64-encoded content of the original plugin configuration.', 'type' => 'string', 'example' => 'cHJlcGVuZDoKLSByb2xlOiBzeXN0ZW0KICBjb250ZW50OiDor7fkvb/nlKjoi7Hor63lm57nrZTpl67popgKYXBwZW5kOgotIHJvbGU6IHVzZXIKICBjb250ZW50OiDmr4/mrKHlm57nrZTlrozpl67popjvvIzlsJ3or5Xov5vooYzlj43pl64K', 'title' => ''],
+ 'enable' => ['description' => 'Indicates whether the plugin mount is enabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'pluginId' => ['description' => 'The plugin ID.', 'type' => 'string', 'example' => 'pl-cvo8ub6m1hkvgv03r3k0', 'title' => ''],
+ 'pluginClassInfo' => ['description' => 'The plugin type information.', '$ref' => '#/components/schemas/PluginClassInfo', 'title' => '', 'example' => ''],
+ 'gatewayInfo' => ['description' => 'The gateway information.', '$ref' => '#/components/schemas/GatewayInfo', 'title' => '', 'example' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"5B626361-070A-56A7-B127-ADAC8F3655DB\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'RemoveConsumerAuthorizationRule',
- ],
- 'QueryConsumerAuthorizationRules' => [
- 'summary' => 'Queries a list of consumer authentication rules.',
- 'path' => '/v1/authorization-rules',
- 'methods' => [
- 'get',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Query plugin mount',
+ 'summary' => 'Queries a plugin mount.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 3000, 'regionId' => '*', 'api' => 'GetPluginAttachment'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetPluginAttachment',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"C61E30D3-579A-5B43-994E-31E02EDC9129\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pluginAttachmentId\\": \\"pa-d05f1tmm1hku195dd8j0\\",\\n \\"parentResourceInfo\\": {\\n \\"resourceType\\": \\"Gateway\\",\\n \\"apiInfo\\": {\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"basePath\\": \\"/v1\\",\\n \\"description\\": \\"测试专用API\\",\\n \\"versionInfo\\": {\\n \\"enable\\": true,\\n \\"scheme\\": \\"Query\\",\\n \\"headerName\\": \\"my-version\\",\\n \\"queryName\\": \\"myVersion\\",\\n \\"version\\": \\"v1\\"\\n },\\n \\"ingressInfo\\": {\\n \\"sourceId\\": \\"src-xxx\\",\\n \\"ingressClass\\": \\"mse\\",\\n \\"watchNamespace\\": \\"default\\",\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"env-xxx\\"\\n },\\n \\"k8sClusterInfo\\": {\\n \\"clusterId\\": \\"ca435c77cba1547cca9311957bcxxxxxx\\"\\n },\\n \\"overrideIngressIp\\": true\\n },\\n \\"type\\": \\"Rest\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"enableAuth\\": false,\\n \\"authConfig\\": {\\n \\"authType\\": \\"Jwt\\",\\n \\"authMode\\": \\"NoAuth\\"\\n },\\n \\"gatewayId\\": \\"gw-cpv4sqdl****\\",\\n \\"modelCategory\\": \\"Text\\",\\n \\"protocols\\": [\\n \\"HTTP\\"\\n ],\\n \\"environments\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"backendType\\": \\"Service\\",\\n \\"serviceConfigs\\": [\\n {\\n \\"gatewayServiceId\\": \\"gs-xxx\\",\\n \\"name\\": \\"demo-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": \\"8080\\",\\n \\"weight\\": 100,\\n \\"version\\": \\"v1\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"serviceId\\": \\"svc-xxx\\"\\n }\\n ],\\n \\"customDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"test\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n }\\n ],\\n \\"aiProtocols\\": [\\n \\"OpenAI/v1\\"\\n ],\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"Mock测试\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"envDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"INQUIRY\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 80,\\n \\"protocol\\": \\"HTTP\\",\\n \\"gatewayServiceId\\": \\"gw-svc-abc123\\",\\n \\"name\\": \\"Qwen-Max-Service\\",\\n \\"version\\": \\"V2\\",\\n \\"multiServiceRouteStrategy\\": \\"ByWeight\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"LeastBusy\\",\\n \\"rateLimit\\": 0.8,\\n \\"queueSize\\": 100\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {}\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cshee6dlhtgk******\\",\\n \\"name\\": \\"hello-server.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"envDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-env-xxx\\",\\n \\"name\\": \\"api.example.com\\",\\n \\"protocol\\": \\"HTTPS\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-csmn42um******\\",\\n \\"name\\": \\"test\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Intranet\\"\\n }\\n ],\\n \\"builtinRouteNames\\": [\\n \\"[\\\\\\"chat\\\\\\",\\\\\\"completions\\\\\\"]\\"\\n ]\\n }\\n ],\\n \\"deployCntMap\\": {\\n \\"key\\": {\\n \\"deployedCnt\\": 3,\\n \\"cnt\\": 0\\n }\\n },\\n \\"agentProtocols\\": [\\n \\"DashScope\\"\\n ]\\n }\\n },\\n \\"resourceInfos\\": [\\n {\\n \\"resourceType\\": \\"HttpApi\\",\\n \\"resourceId\\": \\"api-1nsu2d****\\",\\n \\"resourceName\\": \\"test1023\\",\\n \\"resourceVersion\\": \\"1.0.0\\"\\n }\\n ],\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"env-cq7l5s5lhtgi6qasrdc0\\",\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"测试环境\\",\\n \\"description\\": \\"这是xxx的xx项目测试环境\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"subDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cpudb0llhtgl2djvq2sg\\",\\n \\"name\\": \\"abc.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Intranet\\"\\n }\\n ],\\n \\"default\\": false,\\n \\"createTimestamp\\": 1721116090326,\\n \\"updateTimestamp\\": 1721116090326,\\n \\"resourceGroupId\\": \\"rg-xxxx\\"\\n },\\n \\"pluginConfig\\": \\"cHJlcGVuZDoKLSByb2xlOiBzeXN0ZW0KICBjb250ZW50OiDor7fkvb/nlKjoi7Hor63lm57nrZTpl67popgKYXBwZW5kOgotIHJvbGU6IHVzZXIKICBjb250ZW50OiDmr4/mrKHlm57nrZTlrozpl67popjvvIzlsJ3or5Xov5vooYzlj43pl64K\\",\\n \\"enable\\": true,\\n \\"pluginId\\": \\"pl-cvo8ub6m1hkvgv03r3k0\\",\\n \\"pluginClassInfo\\": {\\n \\"pluginClassId\\": \\"cls-xxx\\",\\n \\"type\\": \\"AI\\",\\n \\"mode\\": \\"Wasm\\",\\n \\"name\\": \\"ai-security-guard\\",\\n \\"alias\\": \\"AI安全护栏\\",\\n \\"description\\": \\"AI请求内容安全检测插件\\",\\n \\"source\\": \\"HigressOfficial\\",\\n \\"version\\": \\"1.0.0\\",\\n \\"versionDescription\\": \\"初始版本\\",\\n \\"executeStage\\": \\"AUTHN\\",\\n \\"executePriority\\": 100,\\n \\"configExample\\": \\"{\\\\\\"checkRequest\\\\\\":true}\\",\\n \\"imageName\\": \\"higress-registry.tencentcloudcr.com/ai-security-guard\\",\\n \\"wasmLanguage\\": \\"Rust\\",\\n \\"supportedMinGatewayVersion\\": \\"2.1.11\\",\\n \\"wasmUrl\\": \\"https://...\\",\\n \\"innerPlugin\\": false\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n }\\n }\\n}","type":"json"}]',
+ ],
+ 'GetPluginClass' => [
+ 'summary' => 'Retrieves a custom plug-in class.',
+ 'path' => '/v1/plugin-classes/{pluginClassId}',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '260503',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '231536',
+ 'abilityTreeNodes' => ['FEATUREapigateway3F24ZP', 'FEATUREapigateway2AMEZG'],
],
'parameters' => [
[
- 'name' => 'apiNameLike',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The API name.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'api-xx',
- ],
+ 'name' => 'pluginClassId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The plug-in class ID.', 'type' => 'string', 'required' => false, 'example' => 'pls-a1b2c3d4e5f6', 'title' => ''],
],
- [
- 'name' => 'pageNumber',
- 'in' => 'query',
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The number of the page to return.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '29D8B6AE-326F-51AA-83F8-CC00DAF513F8'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The plug-in name.', 'type' => 'string', 'example' => 'key-auth', 'title' => ''],
+ 'alias' => ['description' => 'The plug-in alias.', 'type' => 'string', 'example' => 'Key Auth', 'title' => ''],
+ 'description' => ['description' => 'The plug-in description.', 'type' => 'string', 'example' => 'Authentication based on API Key', 'title' => ''],
+ 'type' => ['description' => 'The plug-in type.', 'type' => 'string', 'example' => 'Auth', 'title' => ''],
+ 'wasmLanguage' => ['description' => 'The Wasm plug-in programming language.', 'type' => 'string', 'example' => 'TinyGo', 'title' => ''],
+ 'document' => ['description' => 'The document key.', 'type' => 'string', 'example' => 'doc-key-auth', 'title' => ''],
+ 'publishStatus' => ['description' => 'The publish status.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'example' => '',
],
],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"29D8B6AE-326F-51AA-83F8-CC00DAF513F8\\",\\n \\"code\\": \\"200\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"name\\": \\"key-auth\\",\\n \\"alias\\": \\"Key Auth\\",\\n \\"description\\": \\"Authentication based on API Key\\",\\n \\"type\\": \\"Auth\\",\\n \\"wasmLanguage\\": \\"TinyGo\\",\\n \\"document\\": \\"doc-key-auth\\",\\n \\"publishStatus\\": \\"Success\\"\\n }\\n}","type":"json"}]',
+ 'title' => 'Retrieve a custom plug-in class',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
[
- 'name' => 'pageSize',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries per page.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetPluginClass',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ ],
+ 'GetPolicy' => [
+ 'summary' => 'Retrieves a policy.',
+ 'path' => '/v2/policies/{policyId}',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'consumerId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The consumer ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cs-ct21c16m1hkp64hk6qmg',
- ],
+ 'AK' => [],
],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '227516',
+ 'abilityTreeNodes' => ['FEATUREapigatewayOZOKBY'],
+ ],
+ 'parameters' => [
[
- 'name' => 'resourceId',
- 'in' => 'query',
+ 'name' => 'policyId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The policy ID.', 'type' => 'string', 'required' => true, 'example' => 'p-cu85bamm1hkrn5g6o***'],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The resource ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'ha-cn-li942gy8p03',
+ 'title' => '',
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '2F46B9E7-67EF-5C8A-BA52-D38D5B32A***'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => ['description' => 'The response data.', '$ref' => '#/components/schemas/PolicyDetailInfo', 'title' => '', 'example' => ''],
+ ],
+ 'example' => '',
],
],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Retrieve a policy',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPolicy'],
+ ],
+ ],
+ 'ramActions' => [
[
- 'name' => 'resourceType',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The resource type.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'HttpApiRoute',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetPolicy',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Policy', 'arn' => 'acs:apig:{#regionId}:{#accountId}:policy/{#PolicyId}'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"2F46B9E7-67EF-5C8A-BA52-D38D5B32A***\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"policyId\\": \\"plc-xxx\\",\\n \\"classId\\": \\"cls-xxx\\",\\n \\"name\\": \\"my-rate-limit\\",\\n \\"className\\": \\"RateLimit\\",\\n \\"description\\": \\"每秒限流100次\\",\\n \\"config\\": \\"{\\\\\\"rate\\\\\\":100,\\\\\\"burst\\\\\\":50}\\"\\n }\\n}","type":"json"}]',
+ ],
+ 'GetPolicyAttachment' => [
+ 'path' => '/v1/policy-attachments/{policyAttachmentId}',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'environmentId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The environment ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'env-cpqnr6tlhtgubc***',
- ],
+ 'AK' => [],
],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '262557',
+ 'abilityTreeNodes' => ['FEATUREapigatewayOZOKBY'],
+ ],
+ 'parameters' => [
[
- 'name' => 'groupByApi',
- 'in' => 'query',
+ 'name' => 'policyAttachmentId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The policy attachment ID.', 'type' => 'string', 'required' => true, 'example' => 'pr-ctd4j9mmahko5fb4***'],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'Specifies whether to group the results by API.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '2C3B9A12-3868-5EB9-fBEA-F99E03DD1***'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'policyAttachmentId' => ['title' => '', 'description' => 'The policy attachment ID.', 'type' => 'string', 'example' => 'pr-cqoojualhtgquuj***'],
+ 'policyId' => ['title' => '', 'description' => 'The policy ID.', 'type' => 'string', 'example' => 'p-cq7l5s5bblhtgi6qas***'."\n"],
+ 'attachResourceId' => ['title' => '', 'description' => 'The ID of the attached resource.', 'type' => 'string', 'example' => 'op-csbkd9llhtgqhqua***'],
+ 'attachResourceType' => ['title' => '', 'description' => 'The type of the attached resource. Valid values: HttpApi, GatewayRoute, Operation, GatewayService, GatewayServicePort, Gateway, and Domain.', 'type' => 'string', 'example' => 'Operation'],
+ 'environmentId' => ['title' => '', 'description' => 'The environment ID.', 'type' => 'string', 'example' => 'env-cq7l5s5lhtgi6qa***'],
+ 'gatewayId' => ['title' => '', 'description' => 'The gateway instance ID.', 'type' => 'string', 'example' => 'gw-cq2vundlhtg***'],
+ 'config' => ['title' => '', 'description' => 'The configuration of the attached policy.', 'type' => 'string', 'example' => '{"unitNum":1,"timeUnit":"s","enable":true}'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'example' => '',
],
],
+ ],
+ 'title' => 'Query policy attachment',
+ 'summary' => 'Queries the resource attachment of a policy.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
[
- 'name' => 'parentResourceId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The parent resource ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'ha-cn-li942gy8p01',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetPolicyAttachment',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"2C3B9A12-3868-5EB9-fBEA-F99E03DD1***\\",\\n \\"code\\": \\"200\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"policyAttachmentId\\": \\"pr-cqoojualhtgquuj***\\",\\n \\"policyId\\": \\"p-cq7l5s5bblhtgi6qas***\\\\n\\",\\n \\"attachResourceId\\": \\"op-csbkd9llhtgqhqua***\\",\\n \\"attachResourceType\\": \\"Operation\\",\\n \\"environmentId\\": \\"env-cq7l5s5lhtgi6qa***\\",\\n \\"gatewayId\\": \\"gw-cq2vundlhtg***\\",\\n \\"config\\": \\"{\\\\\\"unitNum\\\\\\":1,\\\\\\"timeUnit\\\\\\":\\\\\\"s\\\\\\",\\\\\\"enable\\\\\\":true}\\"\\n }\\n}","type":"json"}]',
+ ],
+ 'GetResourceOverview' => [
+ 'path' => '/v1/overview/resources',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'consumerNameLike',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The consumer name.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'consumer-xxx',
- ],
+ 'AK' => [],
],
+ ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '222857',
+ 'abilityTreeNodes' => ['FEATUREapigatewayUWNKMC'],
+ ],
+ 'parameters' => [
[
- 'name' => 'resourceTypes',
+ 'name' => 'gatewayType',
'in' => 'query',
- 'schema' => [
- 'description' => 'The resource types.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'K8S',
- ],
+ 'schema' => ['title' => '', 'description' => 'The gateway type.', 'type' => 'string', 'example' => 'AI', 'required' => false],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'The response struct.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'A60EE5CA-1294-532A-9775-8D2FD1C6EFBF',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'DD19A442-93C5-5C97-AFA0-B9C57EBD781B'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'The response payload.'."\n",
+ 'description' => 'The resource information.',
'type' => 'object',
'properties' => [
- 'totalSize' => [
- 'description' => 'The total number of entries returned.'."\n",
- 'type' => 'string',
- 'example' => '6',
- ],
- 'pageNumber' => [
- 'description' => 'The page number of the returned page.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
+ 'api' => [
+ 'description' => 'The API information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'totalCount' => ['description' => 'The total number of APIs.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'publishedCount' => ['description' => 'The number of published APIs.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
- 'pageSize' => [
- 'description' => 'The number of entries per page.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
+ 'gateway' => [
+ 'description' => 'The gateway information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'totalCount' => ['description' => 'The total number of gateway instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'runningCount' => ['description' => 'The number of running gateways.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
- 'items' => [
- 'description' => 'The rules.'."\n",
+ 'riskOverview' => [
+ 'title' => '',
+ 'description' => 'The risk overview.',
'type' => 'array',
'items' => [
- 'description' => 'The rule information.'."\n",
+ 'title' => '',
+ 'description' => 'The risk details for a specific risk level.',
'type' => 'object',
'properties' => [
- 'consumerAuthorizationRuleId' => [
- 'description' => 'The rule ID.'."\n",
- 'type' => 'string',
- 'example' => 'car-csgeka5lhtggrjcprok0',
- ],
- 'consumerId' => [
- 'description' => 'The consumer ID.'."\n",
- 'type' => 'string',
- 'example' => 'cs-csheiftlhtgmp0j0hp4g',
- ],
- 'apiInfo' => [
- 'description' => 'The API details.'."\n",
- '$ref' => '#/components/schemas/HttpApiApiInfo',
- ],
- 'environmentInfo' => [
- 'description' => 'The environment information.'."\n",
- '$ref' => '#/components/schemas/EnvironmentInfo',
- ],
- 'gatewayInfo' => [
- 'description' => 'The instance information.'."\n",
- '$ref' => '#/components/schemas/GatewayInfo',
- ],
- 'resourceId' => [
- 'description' => 'The resource IDs.'."\n",
- 'type' => 'string',
- 'example' => '2351944',
- ],
- 'resourceType' => [
- 'description' => 'The resource type.'."\n",
- 'type' => 'string',
- 'example' => 'HttpApiRoute',
- ],
- 'expireStatus' => [
- 'description' => 'The rule status.'."\n",
- 'type' => 'string',
- 'example' => 'InEffect',
- ],
- 'expireMode' => [
- 'description' => 'The expiry mode. Valid values: LongTerm and ShortTerm.'."\n",
- 'type' => 'string',
- 'example' => 'ShortTerm',
- ],
- 'expireTimestamp' => [
- 'description' => 'The time when the rule expires.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '172086834548',
- ],
- 'createTimestamp' => [
- 'description' => 'The creation timestamp. Unit: milliseconds.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- ],
- 'updateTimestamp' => [
- 'description' => 'The update timestamp. Unit: milliseconds.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- ],
- 'deployStatus' => [
- 'description' => 'The deployment status of the API in the current environment.'."\n",
- 'type' => 'string',
- 'example' => '{}',
- ],
- 'consumerInfo' => [
- 'description' => 'The consumer information.'."\n",
- '$ref' => '#/components/schemas/ConsumerInfo',
- ],
- 'resourceInfo' => [
- 'description' => 'The resource information.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'route' => [
- 'description' => 'The route.'."\n",
- '$ref' => '#/components/schemas/HttpRoute',
- ],
- 'operationInfo' => [
- 'description' => 'The operation information.'."\n",
- '$ref' => '#/components/schemas/HttpApiOperationInfo',
+ 'riskLevel' => ['title' => '', 'description' => 'The risk level.', 'type' => 'string', 'example' => 'LOW'],
+ 'count' => ['title' => '', 'description' => 'The number of instances at this risk level.', 'type' => 'string', 'example' => '1'],
+ 'riskDetails' => [
+ 'title' => '',
+ 'description' => 'The list of risk details.',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '',
+ 'description' => 'The risk details.',
+ 'type' => 'object',
+ 'properties' => [
+ 'gatewayId' => ['title' => '', 'description' => 'The gateway ID.', 'type' => 'string', 'example' => 'gw-xxxxxx'],
+ 'gatewayName' => ['title' => '', 'description' => 'The gateway name.', 'type' => 'string', 'example' => 'test-gateway'],
+ 'score' => ['title' => '', 'description' => 'The risk score.', 'type' => 'string', 'example' => '100'],
+ 'riskLevel' => ['title' => '', 'description' => 'The risk level.', 'type' => 'string', 'example' => 'LOW'],
+ 'riskNames' => [
+ 'title' => '',
+ 'description' => 'The list of risk names.',
+ 'type' => 'array',
+ 'items' => ['title' => '', 'description' => 'The risk name.', 'type' => 'string', 'example' => '网关实例为单节点'],
+ 'example' => '',
+ ],
],
+ 'example' => '',
],
+ 'example' => '',
],
],
+ 'example' => '',
],
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Retrieve resource overview',
+ 'summary' => 'Retrieves resource overview information.',
+ 'changeSet' => [
+ ['createdAt' => '2025-12-18T12:15:40.000Z', 'description' => 'Request parameters changed, Response parameters changed'],
+ ['createdAt' => '2025-04-24T16:41:33.000Z', 'description' => 'Request parameters changed'],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"A60EE5CA-1294-532A-9775-8D2FD1C6EFBF\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"totalSize\\": \\"6\\",\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"items\\": [\\n {\\n \\"consumerAuthorizationRuleId\\": \\"car-csgeka5lhtggrjcprok0\\",\\n \\"consumerId\\": \\"cs-csheiftlhtgmp0j0hp4g\\",\\n \\"apiInfo\\": {\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"basePath\\": \\"/v1\\",\\n \\"description\\": \\"\\",\\n \\"versionInfo\\": {\\n \\"enable\\": true,\\n \\"scheme\\": \\"Query\\",\\n \\"headerName\\": \\"my-version\\",\\n \\"queryName\\": \\"myVersion\\",\\n \\"version\\": \\"v1\\"\\n },\\n \\"ingressInfo\\": {\\n \\"sourceId\\": \\"\\",\\n \\"ingressClass\\": \\"\\",\\n \\"watchNamespace\\": \\"\\",\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"\\"\\n },\\n \\"k8sClusterInfo\\": {\\n \\"clusterId\\": \\"\\"\\n },\\n \\"overrideIngressIp\\": true\\n },\\n \\"type\\": \\"Rest\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"enabelAuth\\": true,\\n \\"authConfig\\": {\\n \\"authType\\": \\"\\",\\n \\"authMode\\": \\"\\"\\n },\\n \\"gatewayId\\": \\"\\",\\n \\"modelCategory\\": \\"\\",\\n \\"protocols\\": [\\n \\"HTTP\\"\\n ],\\n \\"environments\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"backendType\\": \\"Service\\",\\n \\"serviceConfigs\\": [\\n {\\n \\"gatewayServiceId\\": \\"gs-xxx\\",\\n \\"name\\": \\"demo-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": \\"8080\\",\\n \\"weight\\": 100,\\n \\"version\\": \\"v1\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"serviceId\\": \\"svc-xxx\\"\\n }\\n ],\\n \\"customDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"test\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-xxx\\",\\n \\"name\\": \\"test\\"\\n },\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n }\\n ],\\n \\"aiProtocols\\": [\\n \\"\\"\\n ],\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 0,\\n \\"protocol\\": \\"\\",\\n \\"gatewayServiceId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"version\\": \\"\\",\\n \\"multiServiceRouteStrategy\\": \\"\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"\\",\\n \\"rateLimit\\": 0,\\n \\"queueSize\\": 0\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {\\n \\"type\\": \\"AiFallback\\",\\n \\"enable\\": true,\\n \\"aiFallbackConfig\\": {\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"\\",\\n \\"targetModelName\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiSecurityGuardConfig\\": {\\n \\"serviceAddress\\": \\"\\",\\n \\"checkRequest\\": true,\\n \\"checkResponse\\": true,\\n \\"checkRequestImage\\": true,\\n \\"checkResponseImage\\": true,\\n \\"requestCheckService\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"riskAlertLevel\\": \\"\\",\\n \\"riskConfig\\": [\\n {\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\",\\n \\"consumerRules\\": {\\n \\"pattern\\": \\"\\",\\n \\"matchType\\": \\"\\"\\n }\\n }\\n ],\\n \\"bufferLimit\\": 0,\\n \\"consumerRequestCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"requestCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerResponseCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerRiskLevel\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiTokenRateLimitConfig\\": {\\n \\"rules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"globalRules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"enableGlobalRules\\": true\\n }\\n }\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"deployCntMap\\": {\\n \\"key\\": {\\n \\"deployedCnt\\": 0,\\n \\"Cnt\\": 0\\n }\\n },\\n \\"agentProtocols\\": [\\n \\"\\"\\n ]\\n },\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"alias\\": \\"\\",\\n \\"description\\": \\"\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"subDomainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"\\"\\n }\\n ],\\n \\"default\\": true,\\n \\"createTimestamp\\": 0,\\n \\"updateTimestamp\\": 0,\\n \\"resourceGroupId\\": \\"rg-xxxx\\"\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"resourceId\\": \\"2351944\\",\\n \\"resourceType\\": \\"HttpApiRoute\\",\\n \\"expireStatus\\": \\"InEffect\\",\\n \\"expireMode\\": \\"ShortTerm\\",\\n \\"expireTimestamp\\": 172086834548,\\n \\"createTimestamp\\": 1719386834548,\\n \\"updateTimestamp\\": 1719386834548,\\n \\"deployStatus\\": \\"{}\\",\\n \\"consumerInfo\\": {\\n \\"consumerId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"enable\\": true\\n },\\n \\"resourceInfo\\": {\\n \\"route\\": {\\n \\"routeId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"deployStatus\\": \\"\\",\\n \\"description\\": \\"\\",\\n \\"match\\": {\\n \\"ignoreUriCase\\": true,\\n \\"path\\": {\\n \\"type\\": \\"Prefix\\",\\n \\"value\\": \\"/user\\"\\n },\\n \\"headers\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"dev\\",\\n \\"value\\": \\"true\\"\\n }\\n ],\\n \\"methods\\": [\\n \\"GET\\"\\n ],\\n \\"queryParams\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"age\\",\\n \\"value\\": \\"17\\"\\n }\\n ]\\n },\\n \\"backend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"alias\\": \\"\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n },\\n \\"createTimestamp\\": 0,\\n \\"updateTimestamp\\": 0,\\n \\"mcpServerInfo\\": {\\n \\"importInstanceId\\": \\"\\",\\n \\"importNamespace\\": \\"\\",\\n \\"importMcpServerId\\": \\"\\",\\n \\"createFromType\\": \\"\\",\\n \\"mcpServerConfig\\": \\"\\",\\n \\"mcpRouteConfig\\": {\\n \\"protocol\\": \\"\\",\\n \\"exposedUriPath\\": \\"\\"\\n }\\n },\\n \\"domainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\"\\n }\\n ],\\n \\"gatewayStatus\\": {\\n \\"key\\": \\"\\"\\n },\\n \\"builtin\\": \\"\\"\\n },\\n \\"operationInfo\\": {\\n \\"operationId\\": \\"op-xxx\\",\\n \\"method\\": \\"GET\\",\\n \\"name\\": \\"GetUserInfo\\",\\n \\"path\\": \\"/user/123\\",\\n \\"description\\": \\"获取用户信息\\",\\n \\"response\\": {\\n \\"contentType\\": \\"application/json\\",\\n \\"items\\": [\\n {\\n \\"code\\": 200,\\n \\"example\\": \\"{\\\\\\"result\\\\\\": \\\\\\"ok\\\\\\"}\\",\\n \\"description\\": \\"正常接口响应\\",\\n \\"jsonSchema\\": \\"\\"\\n }\\n ]\\n },\\n \\"request\\": {\\n \\"headerParameters\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"required\\": false,\\n \\"type\\": \\"string\\",\\n \\"defaultValue\\": \\"\\",\\n \\"exampleValue\\": \\"\\",\\n \\"description\\": \\"\\"\\n }\\n ],\\n \\"queryParameters\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"required\\": false,\\n \\"type\\": \\"string\\",\\n \\"defaultValue\\": \\"\\",\\n \\"exampleValue\\": \\"\\",\\n \\"description\\": \\"\\"\\n }\\n ],\\n \\"pathParameters\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"required\\": false,\\n \\"type\\": \\"string\\",\\n \\"defaultValue\\": \\"\\",\\n \\"exampleValue\\": \\"\\",\\n \\"description\\": \\"\\"\\n }\\n ],\\n \\"body\\": {\\n \\"description\\": \\"\\",\\n \\"example\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"contentType\\": \\"application/json\\",\\n \\"jsonSchema\\": \\"\\"\\n }\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"\\"\\n },\\n \\"createTimestamp\\": 1719386834548,\\n \\"enableAuth\\": true,\\n \\"authConfig\\": {\\n \\"authType\\": \\"\\",\\n \\"authMode\\": \\"\\"\\n },\\n \\"status\\": \\"Deployed\\",\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 0,\\n \\"protocol\\": \\"\\",\\n \\"gatewayServiceId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"version\\": \\"\\",\\n \\"multiServiceRouteStrategy\\": \\"\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"\\",\\n \\"rateLimit\\": 0,\\n \\"queueSize\\": 0\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {\\n \\"type\\": \\"AiFallback\\",\\n \\"enable\\": true,\\n \\"aiFallbackConfig\\": {\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"\\",\\n \\"targetModelName\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiSecurityGuardConfig\\": {\\n \\"serviceAddress\\": \\"\\",\\n \\"checkRequest\\": true,\\n \\"checkResponse\\": true,\\n \\"checkRequestImage\\": true,\\n \\"checkResponseImage\\": true,\\n \\"requestCheckService\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"riskAlertLevel\\": \\"\\",\\n \\"riskConfig\\": [\\n {\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\",\\n \\"consumerRules\\": {\\n \\"pattern\\": \\"\\",\\n \\"matchType\\": \\"\\"\\n }\\n }\\n ],\\n \\"bufferLimit\\": 0,\\n \\"consumerRequestCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"requestCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerResponseCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerRiskLevel\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiTokenRateLimitConfig\\": {\\n \\"rules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"globalRules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"enableGlobalRules\\": true\\n }\\n }\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"\\"\\n }\\n ]\\n }\\n ]\\n }\\n }\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'QueryConsumerAuthorizationRules',
- ],
- 'CreateConsumerAuthorizationRules' => [
- 'summary' => 'Creates a consumer authentication rule.',
- 'path' => '/v1/authorization-rules',
- 'methods' => [
- 'post',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetResourceOverview'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetResourceOverview',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"DD19A442-93C5-5C97-AFA0-B9C57EBD781B\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"api\\": {\\n \\"totalCount\\": 1,\\n \\"publishedCount\\": 1\\n },\\n \\"gateway\\": {\\n \\"totalCount\\": 1,\\n \\"runningCount\\": 1\\n },\\n \\"riskOverview\\": [\\n {\\n \\"riskLevel\\": \\"LOW\\",\\n \\"count\\": \\"1\\",\\n \\"riskDetails\\": [\\n {\\n \\"gatewayId\\": \\"gw-xxxxxx\\",\\n \\"gatewayName\\": \\"test-gateway\\",\\n \\"score\\": \\"100\\",\\n \\"riskLevel\\": \\"LOW\\",\\n \\"riskNames\\": [\\n \\"网关实例为单节点\\"\\n ]\\n }\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]',
+ ],
+ 'GetSecret' => [
+ 'path' => '/v1/secrets/{secretId}',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '259035',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
- 'tenantRelevance' => 'tenant',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '280144',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
],
'parameters' => [
[
- 'name' => 'body',
- 'in' => 'body',
- 'style' => 'json',
- 'schema' => [
- 'description' => 'The request body.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'authorizationRules' => [
- 'description' => 'The consumer authentication rules to be created.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'object',
- 'type' => 'object',
- 'properties' => [
- 'consumerId' => [
- 'description' => 'The consumer ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cs-cu08olem1hkokaut34i0',
- ],
- 'resourceType' => [
- 'description' => 'The resource type.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'HttpApiRoute',
- ],
- 'resourceIdentifier' => [
- 'description' => 'The resource identifier, which is provided to non-standard code sources for space reuse.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'resourceId' => [
- 'description' => 'The resource ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'ha-cn-li942gy8p03',
- ],
- 'environmentId' => [
- 'description' => 'The environment ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'env-cti17hem1hktoruj98ug',
- ],
- 'resources' => [
- 'description' => 'List of resources',
- 'type' => 'array',
- 'items' => [
- 'description' => 'string',
- 'type' => 'string',
- 'required' => false,
- 'example' => '[]',
- ],
- 'required' => false,
- ],
- 'parentResourceId' => [
- 'description' => 'Parent resource ID',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'api-******',
- ],
- ],
- 'required' => false,
- ],
- 'expireMode' => [
- 'description' => 'The expiration mode. Valid values: LongTerm and ShortTerm.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'LongTerm',
- ],
- 'expireTimestamp' => [
- 'description' => 'The expiration timestamp.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '174116222x',
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
+ 'name' => 'secretId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The key ID.', 'type' => 'string', 'required' => false, 'example' => 'sec-d5e6shmm1hkoxxxxxxxx', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request'."\n",
- 'type' => 'string',
- 'example' => '3ACFC7A7-45A9-58CF-B2D5-765B60254695',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'ID of the request.', 'type' => 'string', 'example' => 'CE857A85-251D-5018-8103-A38957D71E20'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'The response parameters.'."\n",
+ 'description' => 'The key information.',
'type' => 'object',
'properties' => [
- 'consumerAuthorizationRuleIds' => [
- 'description' => 'The authentication rule IDs.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The authentication rule ID.'."\n",
- 'type' => 'string',
- 'example' => 'car-cus2d1em1hkg7732kuk0',
- ],
- ],
+ 'secretId' => ['description' => 'The key ID.', 'type' => 'string', 'example' => 'sec-d5e6shmm1hkoxxxxxxxx', 'title' => ''],
+ 'name' => ['description' => 'The name.', 'type' => 'string', 'example' => 'mysecret', 'title' => ''],
+ 'secretSource' => ['description' => 'The key source.', 'type' => 'string', 'example' => 'KMS', 'title' => ''],
+ 'kmsConfig' => ['description' => 'The KMS configuration information.', '$ref' => '#/components/schemas/KMSConfig', 'title' => '', 'example' => ''],
+ 'gatewayType' => ['description' => 'The gateway type. Valid values:'."\n"
+ .'- API: API gateway.'."\n"
+ .'- AI: AI gateway.', 'type' => 'string', 'example' => 'API', 'title' => ''],
+ 'createTimestamp' => ['description' => 'The creation timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548', 'title' => ''],
+ 'updateTimestamp' => ['description' => 'The update timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1725868548440', 'title' => ''],
+ 'status' => ['description' => 'The key status. Valid values:'."\n"
+ .'- ENALBE: Enabled.'."\n"
+ .'- DISABLE: Disabled.'."\n"
+ .'- DELETED: Deleted.', 'type' => 'string', 'example' => 'ENALBE', 'title' => ''],
+ 'referenceCount' => ['description' => 'The number of resources that reference the current key.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Retrieve a key',
+ 'summary' => 'Retrieves a key.',
+ 'description' => 'The operation supports creating multiple services.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3ACFC7A7-45A9-58CF-B2D5-765B60254695\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"consumerAuthorizationRuleIds\\": [\\n \\"car-cus2d1em1hkg7732kuk0\\"\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'CreateConsumerAuthorizationRules',
- ],
- 'BatchDeleteConsumerAuthorizationRule' => [
- 'summary' => 'Removes consumer authentication rules.',
- 'path' => '/v1/authorization-rules',
- 'methods' => [
- 'delete',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetSecret',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:secret/{#SecretId}'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'https',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CE857A85-251D-5018-8103-A38957D71E20\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"secretId\\": \\"sec-d5e6shmm1hkoxxxxxxxx\\",\\n \\"name\\": \\"mysecret\\",\\n \\"secretSource\\": \\"KMS\\",\\n \\"kmsConfig\\": {\\n \\"kmsInstanceId\\": \\"kst-xxxxxxxx\\",\\n \\"kmsKeyId\\": \\"key-xxxxxxxx\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"createTimestamp\\": 1719386834548,\\n \\"updateTimestamp\\": 1725868548440,\\n \\"status\\": \\"ENALBE\\",\\n \\"referenceCount\\": 1\\n }\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
+ ],
+ 'GetSecretValue' => [
+ 'summary' => 'Retrieves the value of a key.',
+ 'path' => '/v1/secrets/name/{name}/value',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '259028',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '280144',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
],
'parameters' => [
[
- 'name' => 'consumerAuthorizationRuleIds',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The rule IDs.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'car-cus2d1em1hkg7732kuk0',
- ],
+ 'name' => 'name',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The key name.', 'type' => 'string', 'required' => false, 'example' => 'my_secret', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request'."\n",
- 'type' => 'string',
- 'example' => '464F9EA0-1052-51BD-8187-D292AA2D8D24',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '479AE38F-A574-52F7-87EA-E91199999F9E'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'secretData' => ['description' => 'The key value.', 'type' => 'string', 'example' => 'apikey-xxxxxxxx', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Retrieve key value',
+ 'description' => 'The operation supports creating multiple services.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"464F9EA0-1052-51BD-8187-D292AA2D8D24\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'BatchDeleteConsumerAuthorizationRule',
- ],
- 'DeleteConsumer' => [
- 'summary' => 'Deletes a consumer.',
- 'path' => '/v1/consumers/{consumerId}',
- 'methods' => [
- 'delete',
- ],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetSecretValue',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"479AE38F-A574-52F7-87EA-E91199999F9E\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"secretData\\": \\"apikey-xxxxxxxx\\"\\n }\\n}","type":"json"}]',
+ ],
+ 'GetService' => [
+ 'path' => '/v1/services/{serviceId}',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '248086',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '237762',
+ 'abilityTreeNodes' => ['FEATUREapigatewayNPQVBL'],
],
'parameters' => [
[
- 'name' => 'consumerId',
+ 'name' => 'serviceId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The consumer ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cs-cv8em6um1hku2shkv19g',
- ],
+ 'schema' => ['description' => 'The unique ID of the service.', 'type' => 'string', 'required' => false, 'example' => 'svc-cr6pk4tlhtgm58e***', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'The response result.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => '40C8A4FF-7AF1-5B52-A662-02EEE24C6908',
- ],
- 'code' => [
- 'description' => 'The status code.',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.',
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Request ID.', 'type' => 'string', 'example' => '8FA9BB94-915B-5299-A694-49FCC7F5DD00'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => ['description' => 'The service details.', '$ref' => '#/components/schemas/Service', 'title' => '', 'example' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"40C8A4FF-7AF1-5B52-A662-02EEE24C6908\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'DeleteConsumer',
- ],
- 'ListConsumers' => [
- 'summary' => 'Queries a list of consumers.',
- 'path' => '/v1/consumers',
- 'methods' => [
- 'get',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Get service details',
+ 'summary' => 'Retrieves the details of a service.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetService'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetService',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [
+ ['conditionKey' => 'apig:GatewayId', 'validationType' => 'always'],
+ ],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Service', 'arn' => 'acs:apig:{#regionId}:{#accountId}:service/{#ServiceId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"8FA9BB94-915B-5299-A694-49FCC7F5DD00\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"serviceId\\": \\"svc-cr6pk4tlhtgm***\\",\\n \\"sourceType\\": \\"MSE_NACOS\\",\\n \\"name\\": \\"user-service\\",\\n \\"namespace\\": \\"PUBLIC\\",\\n \\"healthCheck\\": {\\n \\"protocol\\": \\"TCP\\",\\n \\"timeout\\": 5,\\n \\"interval\\": 10,\\n \\"healthyThreshold\\": 2,\\n \\"unhealthyThreshold\\": 3,\\n \\"httpPath\\": \\"/health\\",\\n \\"httpHost\\": \\"example.com\\",\\n \\"enable\\": true\\n },\\n \\"healthStatus\\": \\"Healthy\\",\\n \\"qualifier\\": \\"LATEST\\",\\n \\"createTimestamp\\": 1725617840096,\\n \\"updateTimestamp\\": 1725868548440,\\n \\"protocol\\": \\"HTTP\\",\\n \\"gatewayId\\": \\"gw-xxxx\\",\\n \\"modelProviderId\\": \\"mp-xxxx\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"groupName\\": \\"publich\\",\\n \\"aiServiceConfig\\": {\\n \\"provider\\": \\"qwen\\\\nmoonshot\\\\nbaichuan\\\\nyi\\\\nzhipuai\\\\n360ai\\\\nhunyuan\\\\nstepfun\\\\nspark\\\\nopenai\\\\nclaude\\\\nanthropic\\\\ndoubao\\\\nminimax\\\\ngemini\\\\nazure\\\\ndeepseek\\\\ncustom\\\\npai-eas\\\\nbedrock\\\\nvertex\\",\\n \\"address\\": \\"https://dashscope.aliyun.com\\",\\n \\"enableHealthCheck\\": true,\\n \\"paiEASServiceConfig\\": {\\n \\"workspaceId\\": \\"cb89d4de30042df4459442589664e00d\\",\\n \\"serviceId\\": \\"svc-cvaeb0um1hkqp79k72v0\\",\\n \\"serviceName\\": \\"auto-ai-service\\",\\n \\"endpointType\\": \\"\\\\\\"public\\\\\\",\\\\\\"private\\\\\\"\\"\\n },\\n \\"bedrockServiceConfig\\": {\\n \\"awsRegion\\": \\"us-east-1\\",\\n \\"awsAccessKey\\": \\"AKIAIOSFODNN7EXAMPLE\\",\\n \\"awsSecretKey\\": \\"wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY\\"\\n },\\n \\"ApiKeyGenerateMode\\": \\"Custom\\",\\n \\"defaultModelName\\": \\"gpt-4\\",\\n \\"enableOutlierDetection\\": true,\\n \\"vertexServiceConfig\\": {\\n \\"vertexAuthKey\\": \\"{\\\\\\\\\\\\\\"type\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"service_account\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"project_id\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"my-project\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"private_key\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"-----BEGIN PRIVATE KEY-----...\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"client_email\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"xxx@xxx.iam.gserviceaccount.com\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"token_uri\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"https://oauth2.googleapis.com/token\\\\\\\\\\\\\\"}\\",\\n \\"vertexRegion\\": \\"us-central1\\",\\n \\"vertexProjectId\\": \\"my-project\\",\\n \\"vertexAuthServiceName\\": \\"google-oauth2\\",\\n \\"geminiSafetySetting\\": {\\n \\"key\\": \\"{\\\\\\"BLOCK_NONE\\\\\\": \\\\\\"true\\\\\\"}\\"\\n },\\n \\"vertexTokenRefreshAhead\\": 300\\n },\\n \\"protocols\\": [\\n \\"OpenAI/v1\\"\\n ],\\n \\"apiKeys\\": [\\n \\"sk-xxx\\"\\n ],\\n \\"compatibleProtocols\\": [\\n \\"\\\\\\"openai\\\\\\", \\\\\\"anthropic\\\\\\"\\"\\n ]\\n },\\n \\"agentServiceConfig\\": {\\n \\"address\\": \\"https://dashscope.aliyuncs.com/api/v1\\",\\n \\"dashScopeConfig\\": {\\n \\"appCredentials\\": [\\n {\\n \\"apiKey\\": \\"sk-xxx\\",\\n \\"appId\\": \\"app-xxx\\"\\n }\\n ]\\n },\\n \\"enableHealthCheck\\": true,\\n \\"provider\\": \\"qwen\\",\\n \\"difyConfig\\": {\\n \\"botType\\": \\"chatbot\\",\\n \\"apiKey\\": \\"app-xxx\\"\\n },\\n \\"enableOutlierDetection\\": true,\\n \\"customConfig\\": {\\n \\"apiKey\\": \\"app-xxx\\\\n\\",\\n \\"apiKeyGenerateMode\\": \\"Reference\\"\\n },\\n \\"protocols\\": [\\n \\"DashScope\\"\\n ]\\n },\\n \\"expressType\\": \\"StartExecution\\",\\n \\"addresses\\": [\\n \\"127.0.0.1:8080\\"\\n ],\\n \\"ports\\": [\\n {\\n \\"port\\": 8080,\\n \\"name\\": \\"user-service\\",\\n \\"protocol\\": \\"TCP\\"\\n }\\n ],\\n \\"unhealthyEndpoints\\": [\\n \\"192.168.1.12:8080\\"\\n ],\\n \\"outlierEndpoints\\": [\\n \\"[\\\\\\"10.0.0.2:8080\\\\\\"]\\"\\n ],\\n \\"labelDetails\\": [\\n {\\n \\"key\\": \\"version\\",\\n \\"values\\": [\\n \\"[\\\\\\"v1.0.0\\\\\\", \\\\\\"v2.0.0\\\\\\"]\\"\\n ]\\n }\\n ],\\n \\"runtimeDetailStatus\\": \\"Available\\",\\n \\"runtimeDetailErrorCode\\": \\"RuntimeEndpointTimeout\\",\\n \\"versions\\": [\\n {\\n \\"name\\": \\"v1\\",\\n \\"labels\\": [\\n {\\n \\"key\\": \\"version\\",\\n \\"value\\": \\"v1\\"\\n }\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]',
+ ],
+ 'GetSource' => [
+ 'summary' => 'Retrieves the details of a service source.',
+ 'path' => '/v1/sources/{sourceId}',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'list',
+ 'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '248113',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
- 'tenantRelevance' => 'publicInformation',
+ 'abilityTreeCode' => '247800',
+ 'abilityTreeNodes' => ['FEATUREapigatewayNPQVBL'],
],
'parameters' => [
[
- 'name' => 'nameLike',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The name used to perform a fuzzy search for operations.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'UI-test',
- ],
- ],
- [
- 'name' => 'pageNumber',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The page number to return. Pages start from 1. Default value: 1.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
- ],
- [
- 'name' => 'pageSize',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries per page. Default value: 10.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
- ],
- [
- 'name' => 'gatewayType',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The instance type. Valid values: **AI** and **API**.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'AI',
- ],
+ 'name' => 'sourceId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The primary resource ID.', 'type' => 'string', 'required' => false, 'example' => 'src-d1596kem1hkv3o72qkdg'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => '9BDD6A7C-CBA7-504F-B8C5-51B9F16590F7',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'ID of the request', 'type' => 'string', 'example' => 'DE10E3C0-A676-5169-812D-6610AACBFAFF'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'The response payload.'."\n",
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'totalSize' => [
- 'description' => 'The total number of entries returned.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '18',
- ],
- 'pageNumber' => [
- 'description' => 'The page number.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'pageSize' => [
- 'description' => 'The number of entries per page.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
+ 'sourceId' => ['description' => 'The source ID.', 'type' => 'string', 'example' => 'src-crdddallhtgt***', 'title' => ''],
+ 'name' => ['description' => 'The name.', 'type' => 'string', 'example' => 'import-test', 'title' => ''],
+ 'k8SSourceInfo' => [
+ 'description' => 'The Kubernetes source information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'clusterId' => ['description' => 'The Container Service cluster ID.', 'type' => 'string', 'example' => 'c2d290b2d8b5d4935864cace5f0173f31', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
- 'items' => [
- 'description' => 'The list of consumer information.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The consumer information.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'consumerId' => [
- 'description' => 'The consumer ID.'."\n",
- 'type' => 'string',
- 'example' => 'cs-csheiftlhtgmp0j0hp4g',
- ],
- 'name' => [
- 'description' => 'The consumer name.'."\n",
- 'type' => 'string',
- 'example' => 'user-service',
- ],
- 'description' => [
- 'description' => 'The description.'."\n",
- 'type' => 'string',
- 'example' => 'This is the description.',
- ],
- 'createTimestamp' => [
- 'description' => 'The creation timestamp.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1721097861050',
- ],
- 'updateTimestamp' => [
- 'description' => 'The last update timestamp.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1721123855214',
- ],
- 'deployStatus' => [
- 'description' => 'The deployment status of the API in the current environment.'."\n",
- 'type' => 'string',
- 'example' => '{}',
- ],
- 'enable' => [
- 'description' => 'Indicates if enabled.'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- ],
+ 'nacosSourceInfo' => [
+ 'description' => 'The MSE Nacos source information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'instanceId' => ['description' => 'The Nacos instance ID.', 'type' => 'string', 'example' => 'hgprecn-cn-cfn47q7oh001', 'title' => ''],
+ 'clusterId' => ['description' => 'The cluster ID.', 'type' => 'string', 'example' => 'fluss-cn-w7k4hann601', 'title' => ''],
+ 'address' => ['description' => 'The access address of the Nacos instance.', 'type' => 'string', 'example' => 'mse', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'associationStatus' => ['title' => '', 'description' => 'The association status of the source', 'type' => 'string', 'example' => 'ASSOCIATED'],
+ 'associationReason' => ['title' => '', 'description' => 'The reason for the association status', 'type' => 'string', 'example' => 'Association completed'],
+ 'createTimestamp' => ['description' => 'The creation timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548', 'title' => ''],
+ 'updateTimestamp' => ['description' => 'The update timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548', 'title' => ''],
+ 'gatewayId' => ['description' => 'The gateway ID.', 'type' => 'string', 'example' => 'gw-cq2vundlhtg***', 'title' => ''],
+ 'type' => ['description' => 'The type.', 'type' => 'string', 'example' => 'K8S', 'title' => ''],
+ 'resourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-aekz4us4iruleja', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"DE10E3C0-A676-5169-812D-6610AACBFAFF\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"sourceId\\": \\"src-crdddallhtgt***\\",\\n \\"name\\": \\"import-test\\",\\n \\"k8SSourceInfo\\": {\\n \\"clusterId\\": \\"c2d290b2d8b5d4935864cace5f0173f31\\"\\n },\\n \\"nacosSourceInfo\\": {\\n \\"instanceId\\": \\"hgprecn-cn-cfn47q7oh001\\",\\n \\"clusterId\\": \\"fluss-cn-w7k4hann601\\",\\n \\"address\\": \\"mse\\"\\n },\\n \\"associationStatus\\": \\"ASSOCIATED\\",\\n \\"associationReason\\": \\"Association completed\\",\\n \\"createTimestamp\\": 1719386834548,\\n \\"updateTimestamp\\": 1719386834548,\\n \\"gatewayId\\": \\"gw-cq2vundlhtg***\\",\\n \\"type\\": \\"K8S\\",\\n \\"resourceGroupId\\": \\"rg-aekz4us4iruleja\\"\\n }\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"9BDD6A7C-CBA7-504F-B8C5-51B9F16590F7\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"totalSize\\": 18,\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"items\\": [\\n {\\n \\"consumerId\\": \\"cs-csheiftlhtgmp0j0hp4g\\",\\n \\"name\\": \\"user-service\\",\\n \\"description\\": \\"测试消费者\\",\\n \\"createTimestamp\\": 1721097861050,\\n \\"updateTimestamp\\": 1721123855214,\\n \\"deployStatus\\": \\"{}\\",\\n \\"enable\\": true\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'ListConsumers',
- ],
- 'DeleteConsumerAuthorizationRule' => [
- 'summary' => 'Deletes a consumer authorization rule.',
- 'path' => '/v1/consumers/{consumerId}/authorization-rules/{consumerAuthorizationRuleId}',
- 'methods' => [
- 'delete',
+ 'title' => 'Retrieve service source details',
+ 'changeSet' => [
+ ['createdAt' => '2026-06-17T12:19:57.000Z', 'description' => 'Response parameters changed'],
],
- 'schemes' => [
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSource'],
+ ],
],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetSource',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [
+ ['conditionKey' => 'apig:GatewayId', 'validationType' => 'always'],
+ ],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'GetTraceConfig' => [
+ 'summary' => 'Retrieves the Tracing Analysis configuration.',
+ 'path' => '/v1/gateways/{gatewayId}/trace',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
- 'abilityTreeCode' => '248109',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREapigatewayWECSVA'],
],
'parameters' => [
[
- 'name' => 'consumerAuthorizationRuleId',
+ 'name' => 'gatewayId',
'in' => 'path',
- 'schema' => [
- 'description' => 'Filters the list of operations by a specific consumer authorization rule ID. Only authorized operations are returned in the response.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cas-xxx',
- ],
+ 'schema' => ['description' => 'The gateway instance ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-xxx', 'title' => ''],
],
[
- 'name' => 'consumerId',
- 'in' => 'path',
- 'schema' => [
- 'description' => 'The consumer ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cs-cukm3imm1hkh1e2m4rqg',
- ],
+ 'name' => 'acceptLanguage',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The language type. Valid values:'."\n"
+ .'zh: Chinese'."\n"
+ .'en: English', 'type' => 'string', 'required' => false, 'example' => 'zh', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'The response parameters.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => '3C3B9A12-3868-5EB9-8BEA-F99E03DD125C',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.'."\n",
- 'type' => 'string',
- 'example' => 'ok',
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '2F46B9E7-67EF-5C8A-BA52-D38D5B32AF2C'],
+ 'code' => ['description' => 'The response code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''],
+ 'success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n"
+ .'- true: The request was successful.'."\n"
+ .'- false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'message' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'enable' => ['description' => 'Indicates whether Tracing Analysis is enabled. Valid values:'."\n"
+ .'- true: enabled.'."\n"
+ .'- false: shutdown.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'sampleRatio' => ['description' => 'The sampling ratio.', 'type' => 'integer', 'format' => 'int32', 'example' => '50', 'title' => ''],
+ 'traceType' => ['description' => 'The Tracing Analysis type. Valid values:'."\n"
+ .'- XTRACE'."\n"
+ .'- SKYWALKING'."\n"
+ .'- OPENTELEMETRY'."\n"
+ .'- OTSKYWALKING', 'type' => 'string', 'example' => 'SKYWALKING', 'title' => ''],
+ 'serviceId' => ['description' => 'The service ID. This parameter is returned only when the Tracing Analysis type is SKYWALKING.', 'type' => 'string', 'example' => 'ss-co370icmjeu****', 'title' => ''],
+ 'servicePort' => ['description' => 'The service port. This parameter is returned only when the Tracing Analysis type is SKYWALKING.', 'type' => 'string', 'example' => '8090', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3C3B9A12-3868-5EB9-8BEA-F99E03DD125C\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"ok\\"\\n}","type":"json"}]',
- 'title' => 'DeleteConsumerAuthorizationRule',
- ],
- 'CreateConsumer' => [
- 'summary' => 'Creates a consumer.',
- 'path' => '/v1/consumers',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Retrieve trace configuration',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetTraceConfig'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetTraceConfig',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"2F46B9E7-67EF-5C8A-BA52-D38D5B32AF2C\\",\\n \\"code\\": 200,\\n \\"success\\": true,\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"enable\\": true,\\n \\"sampleRatio\\": 50,\\n \\"traceType\\": \\"SKYWALKING\\",\\n \\"serviceId\\": \\"ss-co370icmjeu****\\",\\n \\"servicePort\\": \\"8090\\"\\n }\\n}","type":"json"}]',
+ ],
+ 'ImportHttpApi' => [
+ 'summary' => 'Imports an HTTP API. This operation supports importing OpenAPI 2.0 and OpenAPI 3.0.x definition files as REST-type APIs.',
+ 'path' => '/v1/http-apis/import',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'readAndWrite',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '248083',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
- 'tenantRelevance' => 'publicInformation',
+ 'abilityTreeCode' => '220978',
+ 'abilityTreeNodes' => ['FEATUREapigateway9WMX21'],
],
'parameters' => [
[
@@ -18904,222 +11479,367 @@
'in' => 'body',
'style' => 'json',
'schema' => [
- 'description' => 'The request body.'."\n",
+ 'description' => 'The request body parameters.',
'type' => 'object',
'properties' => [
- 'name' => [
- 'description' => 'The name of the consumer.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test',
- ],
- 'description' => [
- 'description' => 'The description of the consumer.'."\n",
+ 'specContentBase64' => ['title' => '', 'description' => 'The Base64-encoded API definition that supports OAS 2.0 and OAS 3.0 specifications in YAML or JSON format. This parameter takes priority over the specFileUrl parameter. If the file size exceeds 10 MB, use the specFileUrl parameter instead.', 'type' => 'string', 'required' => false, 'example' => 'b3BlbmFwaTogMy4wLjAKaW5mbzoKICAgIHRpdGxlOiBkZW1vCiAgICBkZXNjcmlwdGlvbjogdGhpc2lzZGVtbwogICAgdmVyc2lvbjogIiIKcGF0aHM6CiAgICAvdXNlci97dXNlcklkfToKICAgICAgICBnZXQ6CiAgICAgICAgICAgIHN1bW1hcnk6IOiOt+WPlueUqOaIt+S/oeaBrwogICAgICAgICAgICBkZXNjcmlwdGlvbjog6I635Y+W55So5oi35L+h5oGvCiAgICAgICAgICAgIG9wZXJhdGlvbklkOiBHZXRVc2VySW5mbwogICAgICAgICAgICByZXNwb25zZXM6CiAgICAgICAgICAgICAgICAiMjAwIjoKICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjog5oiQ5YqfCiAgICAgICAgICAgICAgICAgICAgY29udGVudDoKICAgICAgICAgICAgICAgICAgICAgICAgYXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04OgogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NoZW1hOiBudWxsCnNlcnZlcnM6CiAgICAtIHVybDogaHR0cDovL2FwaS5leGFtcGxlLmNvbS92MQo='],
+ 'specFileUrl' => ['title' => '', 'description' => 'The download URL of the API definition file. The URL must be accessible from the public network or be an internal network OSS download URL in the same region. The URL must have download permissions. For OSS files that are not publicly readable, see References [Download objects using presigned URLs](~~39607~~) and provide a URL with download permissions. Currently, only API definition files stored on OSS are supported.', 'type' => 'string', 'required' => false, 'example' => 'https://bucket.oss-cn-hangzhou.aliyuncs.com/**/*.yaml'],
+ 'name' => ['title' => '', 'description' => 'The name of the imported API. If not specified, the name is extracted from the API definition file. If the API name and version configuration already exist, this import updates the existing API definition based on the strategy field.', 'type' => 'string', 'required' => false, 'example' => 'import-test'],
+ 'description' => ['title' => '', 'description' => 'The description of the imported API. If not specified, the description is extracted from the API definition. Maximum length: 255 bytes.', 'type' => 'string', 'required' => false, 'example' => '测试专用API'],
+ 'versionConfig' => ['description' => 'The API version configuration. If version configuration is enabled and the version number and API name match an existing API, this import is treated as an update. If version configuration is not enabled and the API name matches an existing API, this import is treated as an update.', '$ref' => '#/components/schemas/HttpApiVersionConfig', 'required' => false, 'title' => '', 'example' => ''],
+ 'dryRun' => ['title' => '', 'description' => 'Specifies whether to enable dry run mode. If enabled, only validation is performed without performing the actual import.', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
+ 'strategy' => [
+ 'title' => '',
+ 'description' => 'The update strategy to use when the imported API name and version management match an existing API. Valid values:'."\n"
+ ."\n"
+ .'- SpecFirst: the imported file takes priority. New operations are added and existing operations are updated. Operations not mentioned in the file remain unchanged.'."\n"
+ .'- SpecOnly: the imported file is used as the sole source of truth.'."\n"
+ .'- ExistFirst: the existing API takes priority. Only new operations are added. Existing operations are not updated.'."\n"
+ ."\n"
+ .'Default value: ExistFirst.',
+ 'enumValueTitles' => ['SpecFirst' => 'the imported file takes priority. New operations are added and existing operations are updated. Operations not mentioned in the file remain unchanged.', 'SpecOnly' => 'the imported file is used as the sole source of truth.', 'ExistFirst' => 'the existing API takes priority. Only new operations are added. Existing operations are not updated.'],
'type' => 'string',
+ 'enum' => ['SpecFirst', 'SpecOnly', 'ExistFirst'],
'required' => false,
- 'example' => 'consumer for test',
- ],
- 'jwtIdentityConfig' => [
- 'description' => 'The configuration of the JWT identity.'."\n",
- 'required' => false,
- '$ref' => '#/components/schemas/JwtIdentityConfig',
+ 'example' => 'ExistFirst',
],
- 'akSkIdentityConfigs' => [
- 'description' => 'The list of AK/SK identity configurations.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The AK/SK identity configuration.'."\n",
- 'required' => false,
- '$ref' => '#/components/schemas/AkSkIdentityConfig',
+ 'withGatewayExtension' => ['title' => '', 'description' => 'Specifies whether to import gateway extension information.', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
+ 'targetHttpApiId' => ['title' => '', 'description' => 'If this field is specified, this import updates the specified API instead of importing a new one or searching for an existing API based on the API name and version management configuration. The target API must be of the REST type.', 'type' => 'string', 'required' => false, 'example' => 'api-xxxx'],
+ 'resourceGroupId' => ['description' => 'The [resource group ID](~~151181~~).', 'type' => 'string', 'required' => false, 'example' => 'rg-aek23nsa353vmra', 'title' => ''],
+ 'specOssConfig' => [
+ 'description' => 'The OSS configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'regionId' => ['description' => 'The region ID.', 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai', 'title' => ''],
+ 'bucketName' => ['description' => 'The bucket name.', 'type' => 'string', 'required' => false, 'example' => 'gms-service-prod', 'title' => ''],
+ 'objectKey' => ['description' => 'The full path of the file.', 'type' => 'string', 'required' => false, 'example' => '/test/swagger.json', 'title' => ''],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
- 'apikeyIdentityConfig' => [
- 'description' => 'The configuration for the API key authentication method.'."\n",
- 'required' => false,
- '$ref' => '#/components/schemas/ApiKeyIdentityConfig',
- ],
- 'enable' => [
- 'description' => 'Indicates if enabled.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
- 'gatewayType' => [
- 'description' => 'The type of the gateway.'."\n",
- 'type' => 'string',
+ 'deployConfigs' => [
+ 'description' => 'The API deployment configurations.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The parameter.', '$ref' => '#/components/schemas/HttpApiDeployConfig', 'required' => false, 'title' => '', 'example' => ''],
'required' => false,
- 'example' => 'API',
+ 'title' => '',
+ 'example' => '',
],
+ 'mcpRouteId' => ['description' => 'The MCP route ID.', 'type' => 'string', 'required' => false, 'example' => 'xxx', 'title' => ''],
+ 'gatewayId' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-xxx', 'title' => ''],
],
'required' => false,
+ 'example' => '{\'key\': \'value\'}',
+ 'title' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'The response.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => '479AE38F-A574-52F7-87EA-E91199999F9E',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CE857A85-251D-5018-8103-A38957D71E20'],
+ 'code' => ['title' => '', 'description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok'],
+ 'message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'success'],
'data' => [
- 'description' => 'The response payload.'."\n",
+ 'description' => 'The API information.',
'type' => 'object',
'properties' => [
- 'consumerId' => [
- 'description' => 'The consumer ID.'."\n",
- 'type' => 'string',
- 'example' => 'cs-cvnjramm1hks1r3fmmug',
+ 'name' => ['description' => 'The API name.', 'type' => 'string', 'example' => 'import-test', 'title' => ''],
+ 'httpApiId' => ['description' => 'The unique ID of the HTTP API.', 'type' => 'string', 'example' => 'api-xxx', 'title' => ''],
+ 'dryRunInfo' => [
+ 'description' => 'The dry run result.',
+ 'type' => 'object',
+ 'properties' => [
+ 'successOperations' => [
+ 'description' => 'The list of operations that passed the dry run.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The operation information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'action' => [
+ 'description' => 'The action to be performed after the dry run. Valid values:'."\n"
+ ."\n"
+ .'- Create: Create.'."\n"
+ .'- Update: Update.',
+ 'enumValueTitles' => ['Create' => 'Create', 'Update' => 'Update'],
+ 'type' => 'string',
+ 'example' => 'Create',
+ 'title' => '',
+ ],
+ 'name' => ['description' => 'The operation name.', 'type' => 'string', 'example' => 'CreateUser', 'title' => ''],
+ 'path' => ['description' => 'The operation path.', 'type' => 'string', 'example' => '/v1/users', 'title' => ''],
+ 'method' => ['description' => 'The operation method.', 'type' => 'string', 'example' => 'POST', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'failureOperations' => [
+ 'description' => 'The list of operations that failed the dry run.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The operation information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'path' => ['description' => 'The operation path.', 'type' => 'string', 'example' => '/v1/orders', 'title' => ''],
+ 'method' => ['description' => 'The operation method.', 'type' => 'string', 'example' => 'GET', 'title' => ''],
+ 'errorMessage' => ['description' => 'The error message.', 'type' => 'string', 'example' => '缺少响应定义。', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'successComponents' => [
+ 'description' => 'The list of data structures that passed the dry run.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The data structure information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'action' => [
+ 'description' => 'The action to be performed after the dry run. Valid values:'."\n"
+ ."\n"
+ .'- Create: Create.'."\n"
+ .'- Update: Update.',
+ 'enumValueTitles' => ['Create' => 'Create', 'Update' => 'Update'],
+ 'type' => 'string',
+ 'example' => 'Create',
+ 'title' => '',
+ ],
+ 'name' => ['description' => 'The data structure name.', 'type' => 'string', 'example' => 'userDTO', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'failureComponents' => [
+ 'description' => 'The list of data structures that failed the dry run.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The data structure information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The data structure name.', 'type' => 'string', 'example' => 'orderDTO', 'title' => ''],
+ 'errorMessage' => ['description' => 'The error message.', 'type' => 'string', 'example' => '数据结构定义有误。', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'successRoutes' => [
+ 'description' => 'The list of routes that were successfully imported.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The route information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'action' => ['description' => 'The action type.', 'type' => 'string', 'example' => 'Create', 'title' => ''],
+ 'name' => ['description' => 'The name.', 'type' => 'string', 'example' => 'user-route', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'failureRoutes' => [
+ 'description' => 'The list of routes that failed.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The route information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The parameter name.', 'type' => 'string', 'example' => 'admin-route', 'title' => ''],
+ 'errorMessage' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'conflict', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'errorMessages' => [
+ 'description' => 'The error messages. If error messages are not empty, the API cannot be successfully imported.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The individual error message.', 'type' => 'string', 'example' => 'OpenAPI 3.1.x 版本不支持。', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'warningMessages' => [
+ 'description' => 'The warning messages. If warning messages are not empty, some operations or data structures may not be imported successfully.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The individual warning message.', 'type' => 'string', 'example' => 'GET /v1/orders 参数定义不完整。', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'existHttpApiInfo' => ['description' => 'The information about the existing API. If this field is not empty, the import action updates this API.', '$ref' => '#/components/schemas/HttpApiApiInfo', 'title' => '', 'example' => ''],
+ 'mcpToolsDefinition' => ['title' => '', 'description' => 'The MCP tool definition information.', 'type' => 'string', 'example' => '...'],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CE857A85-251D-5018-8103-A38957D71E20\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"name\\": \\"import-test\\",\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"dryRunInfo\\": {\\n \\"successOperations\\": [\\n {\\n \\"action\\": \\"Create\\",\\n \\"name\\": \\"CreateUser\\",\\n \\"path\\": \\"/v1/users\\",\\n \\"method\\": \\"POST\\"\\n }\\n ],\\n \\"failureOperations\\": [\\n {\\n \\"path\\": \\"/v1/orders\\",\\n \\"method\\": \\"GET\\",\\n \\"errorMessage\\": \\"缺少响应定义。\\"\\n }\\n ],\\n \\"successComponents\\": [\\n {\\n \\"action\\": \\"Create\\",\\n \\"name\\": \\"userDTO\\"\\n }\\n ],\\n \\"failureComponents\\": [\\n {\\n \\"name\\": \\"orderDTO\\",\\n \\"errorMessage\\": \\"数据结构定义有误。\\"\\n }\\n ],\\n \\"successRoutes\\": [\\n {\\n \\"action\\": \\"Create\\",\\n \\"name\\": \\"user-route\\"\\n }\\n ],\\n \\"failureRoutes\\": [\\n {\\n \\"name\\": \\"admin-route\\",\\n \\"errorMessage\\": \\"conflict\\"\\n }\\n ],\\n \\"errorMessages\\": [\\n \\"OpenAPI 3.1.x 版本不支持。\\"\\n ],\\n \\"warningMessages\\": [\\n \\"GET /v1/orders 参数定义不完整。\\"\\n ],\\n \\"existHttpApiInfo\\": {\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"basePath\\": \\"/v1\\",\\n \\"description\\": \\"测试专用API\\",\\n \\"versionInfo\\": {\\n \\"enable\\": true,\\n \\"scheme\\": \\"Query\\",\\n \\"headerName\\": \\"my-version\\",\\n \\"queryName\\": \\"myVersion\\",\\n \\"version\\": \\"v1\\"\\n },\\n \\"ingressInfo\\": {\\n \\"sourceId\\": \\"src-xxx\\",\\n \\"ingressClass\\": \\"mse\\",\\n \\"watchNamespace\\": \\"default\\",\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"env-xxx\\"\\n },\\n \\"k8sClusterInfo\\": {\\n \\"clusterId\\": \\"ca435c77cba1547cca9311957bcxxxxxx\\"\\n },\\n \\"overrideIngressIp\\": true\\n },\\n \\"type\\": \\"Rest\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"enableAuth\\": false,\\n \\"authConfig\\": {\\n \\"authType\\": \\"Jwt\\",\\n \\"authMode\\": \\"NoAuth\\"\\n },\\n \\"gatewayId\\": \\"gw-cpv4sqdl****\\",\\n \\"modelCategory\\": \\"Text\\",\\n \\"protocols\\": [\\n \\"HTTP\\"\\n ],\\n \\"environments\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"backendType\\": \\"Service\\",\\n \\"serviceConfigs\\": [\\n {\\n \\"gatewayServiceId\\": \\"gs-xxx\\",\\n \\"name\\": \\"demo-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": \\"8080\\",\\n \\"weight\\": 100,\\n \\"version\\": \\"v1\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"serviceId\\": \\"svc-xxx\\"\\n }\\n ],\\n \\"customDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"test\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n }\\n ],\\n \\"aiProtocols\\": [\\n \\"OpenAI/v1\\"\\n ],\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"Mock测试\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"envDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"INQUIRY\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 80,\\n \\"protocol\\": \\"HTTP\\",\\n \\"gatewayServiceId\\": \\"gw-svc-abc123\\",\\n \\"name\\": \\"Qwen-Max-Service\\",\\n \\"version\\": \\"V2\\",\\n \\"multiServiceRouteStrategy\\": \\"ByWeight\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"LeastBusy\\",\\n \\"rateLimit\\": 0.8,\\n \\"queueSize\\": 100\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {}\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cshee6dlhtgk******\\",\\n \\"name\\": \\"hello-server.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"envDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-env-xxx\\",\\n \\"name\\": \\"api.example.com\\",\\n \\"protocol\\": \\"HTTPS\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-csmn42um******\\",\\n \\"name\\": \\"test\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Intranet\\"\\n }\\n ],\\n \\"builtinRouteNames\\": [\\n \\"[\\\\\\"chat\\\\\\",\\\\\\"completions\\\\\\"]\\"\\n ]\\n }\\n ],\\n \\"deployCntMap\\": {\\n \\"key\\": {\\n \\"deployedCnt\\": 3,\\n \\"cnt\\": 0\\n }\\n },\\n \\"agentProtocols\\": [\\n \\"DashScope\\"\\n ]\\n },\\n \\"mcpToolsDefinition\\": \\"...\\"\\n }\\n }\\n}","type":"json"}]',
+ 'title' => 'Import HTTP API',
+ 'changeSet' => [
+ ['createdAt' => '2026-06-12T06:33:31.000Z', 'description' => 'Request parameters changed, Response parameters changed'],
+ ['createdAt' => '2026-03-25T04:56:11.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2025-08-13T01:56:38.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-08-12T05:56:38.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-04-24T16:41:32.000Z', 'description' => 'Request parameters changed'],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"479AE38F-A574-52F7-87EA-E91199999F9E\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"consumerId\\": \\"cs-cvnjramm1hks1r3fmmug\\"\\n }\\n}","type":"json"}]',
- 'title' => 'CreateConsumer',
- ],
- 'UpdateConsumer' => [
- 'summary' => 'Updates a consumer.',
- 'path' => '/v1/consumers/{consumerId}',
- 'methods' => [
- 'put',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ImportHttpApi'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ImportHttpApi',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'InstallPlugin' => [
+ 'path' => '/v1/plugins/',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '248085',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '231541',
+ 'abilityTreeNodes' => ['FEATUREapigateway3F24ZP', 'FEATUREapigateway2AMEZG', 'FEATUREapigateway216K2A'],
],
'parameters' => [
[
- 'name' => 'consumerId',
- 'in' => 'path',
- 'schema' => [
- 'description' => 'The consumer ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cs-cvfmq9um1hkg1teictkg',
- ],
- ],
- [
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
- 'description' => 'The request body.'."\n",
+ 'description' => 'The request body.',
'type' => 'object',
'properties' => [
- 'description' => [
- 'description' => 'The description.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'This is the description.',
- ],
- 'jwtIdentityConfig' => [
- 'description' => 'The JWT authentication configuration.'."\n",
- 'required' => false,
- '$ref' => '#/components/schemas/JwtIdentityConfig',
- ],
- 'akSkIdentityConfigs' => [
- 'description' => 'The list of AK/SK authentication configurations.'."\n",
+ 'pluginClassId' => ['description' => 'The plug-in type ID.', 'type' => 'string', 'required' => false, 'example' => 'pls-csqmjndlhtguk0loef21', 'title' => ''],
+ 'gatewayIds' => [
+ 'description' => 'The list of gateway IDs.',
'type' => 'array',
- 'items' => [
- 'description' => 'The AK/SK authentication configurations.'."\n",
- 'required' => false,
- '$ref' => '#/components/schemas/AkSkIdentityConfig',
- ],
- 'required' => false,
- ],
- 'apikeyIdentityConfig' => [
- 'description' => 'The API key authentication configurations.'."\n",
- 'required' => false,
- '$ref' => '#/components/schemas/ApiKeyIdentityConfig',
- ],
- 'enable' => [
- 'description' => 'Specifies the enablement status.'."\n",
- 'type' => 'boolean',
+ 'items' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-d28mjcmm1hkub84mdbi0'."\n", 'title' => ''],
'required' => false,
- 'example' => 'false',
+ 'title' => '',
+ 'example' => '',
],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => 'B917B12C-030A-597A-AF2B-6C4353FC9F10',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.'."\n",
- 'type' => 'string',
- 'example' => 'ok',
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '201CFCA0-3AF5-52D0-A0F3-FBA697AF55CB'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'installPluginResults' => [
+ 'description' => 'The installation results.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'pluginId' => ['description' => 'The plug-in ID.', 'type' => 'string', 'example' => 'pl-cvs7gbum1hkhs6us6vbg', 'title' => ''],
+ 'gatewayId' => ['description' => 'The gateway ID.', 'type' => 'string', 'example' => 'gw-d28mjcmm1hkub84mdbi0', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"B917B12C-030A-597A-AF2B-6C4353FC9F10\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"ok\\"\\n}","type":"json"}]',
- 'title' => 'UpdateConsumer',
- ],
- 'GetConsumer' => [
- 'summary' => 'Obtains the information of a consumer.',
- 'path' => '/v1/consumers/{consumerId}',
- 'methods' => [
- 'get',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Install a plug-in',
+ 'summary' => 'Installs a plug-in.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'InstallPlugin'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:InstallPlugin',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"201CFCA0-3AF5-52D0-A0F3-FBA697AF55CB\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"Success\\",\\n \\"data\\": {\\n \\"installPluginResults\\": [\\n {\\n \\"pluginId\\": \\"pl-cvs7gbum1hkhs6us6vbg\\",\\n \\"gatewayId\\": \\"gw-d28mjcmm1hkub84mdbi0\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ ],
+ 'ListConsumerAuthorizationRules' => [
+ 'path' => '/v1/consumers/{consumerId}/authorization-rules',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -19131,2631 +11851,3261 @@
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '248090',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
+ 'abilityTreeCode' => '248112',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
],
'parameters' => [
[
+ 'name' => 'apiNameLike',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The fuzzy match parameter for the API name.', 'type' => 'string', 'required' => false, 'example' => 'qwen3', 'title' => ''],
+ ],
+ [
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page size. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
+ ],
+ [
'name' => 'consumerId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The consumer ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cs-ctb92p6m1hkqu85iph8g',
- ],
+ 'schema' => ['description' => 'The consumer ID.', 'type' => 'string', 'required' => false, 'example' => 'cs-csgdi45lhtggrjcpriug', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => '880C61B3-7B90-5570-A3F7-D6D92C0E2D36',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '294382D9-EE60-5735-A4CD-F2AC2840423D'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'The response payload.'."\n",
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'consumerId' => [
- 'description' => 'The consumer ID.'."\n",
- 'type' => 'string',
- 'example' => 'cs-cvgbtk6m1hkji5sb8dr0',
- ],
- 'name' => [
- 'description' => 'The consumer name.'."\n",
- 'type' => 'string',
- 'example' => 'consumer-1',
- ],
- 'description' => [
- 'description' => 'The description.'."\n",
- 'type' => 'string',
- 'example' => 'This is the description.',
- ],
- 'jwtIdentityConfig' => [
- 'description' => 'The JWT authentication configurations.'."\n",
- '$ref' => '#/components/schemas/JwtIdentityConfig',
- ],
- 'apiKeyIdentityConfig' => [
- 'description' => 'The API key authentication configurations.'."\n",
- '$ref' => '#/components/schemas/ApiKeyIdentityConfig',
- ],
- 'enable' => [
- 'description' => 'Indicates if enabled.'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'deployStatus' => [
- 'description' => 'The publishing status of the API in the current environment.'."\n",
- 'type' => 'string',
- 'example' => '""',
- ],
- 'createTimestamp' => [
- 'description' => 'The creation timestamp.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- ],
- 'updateTimestamp' => [
- 'description' => 'The last update timestamp.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- ],
- 'akSkIdentityConfigs' => [
- 'description' => 'The AK/SK authentication configurations.'."\n",
+ 'totalSize' => ['description' => 'The total number of entries.', 'type' => 'string', 'example' => '9', 'title' => ''],
+ 'pageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'pageSize' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'items' => [
+ 'description' => 'The list of consumer authorization information.',
'type' => 'array',
'items' => [
- 'description' => 'AkSkIdentityConfig',
- '$ref' => '#/components/schemas/AkSkIdentityConfig',
+ 'description' => 'The consumer authorization information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'consumerAuthorizationRuleId' => ['description' => 'The consumer authorization rule ID.', 'type' => 'string', 'example' => 'car-csgeka5lhtggrjcprok0', 'title' => ''],
+ 'consumerId' => ['description' => 'The consumer ID.', 'type' => 'string', 'example' => 'cs-csheiftlhtgmp0j0hp4g', 'title' => ''],
+ 'apiInfo' => ['description' => 'The API information.', '$ref' => '#/components/schemas/HttpApiApiInfo', 'title' => '', 'example' => ''],
+ 'environmentInfo' => ['description' => 'The environment context.', '$ref' => '#/components/schemas/EnvironmentInfo', 'title' => '', 'example' => ''],
+ 'gatewayInfo' => ['description' => 'The gateway information.', '$ref' => '#/components/schemas/GatewayInfo', 'title' => '', 'example' => ''],
+ 'resourceId' => ['description' => 'The resource ID.', 'type' => 'string', 'example' => '2351944', 'title' => ''],
+ 'resourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'HttpApiRoute', 'title' => ''],
+ 'expireStatus' => ['description' => 'The expiration status.', 'type' => 'string', 'example' => 'InEffect', 'title' => ''],
+ 'expireMode' => ['description' => 'The expiration mode. Valid values:'."\n"
+ .'- LongTerm'."\n"
+ .'- ShortTerm', 'type' => 'string', 'example' => 'ShortTerm', 'title' => ''],
+ 'expireTimestamp' => ['description' => 'The expiration time.', 'type' => 'integer', 'format' => 'int64', 'example' => '172086834548', 'title' => ''],
+ 'createTimestamp' => ['description' => 'The creation timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548', 'title' => ''],
+ 'updateTimestamp' => ['description' => 'The update timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1721116090326', 'title' => ''],
+ 'deployStatus' => ['description' => 'The publish status of the API in the current environment.', 'type' => 'string', 'example' => '{}', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Retrieve consumer authorization rules',
+ 'summary' => 'Retrieves the list of consumer authorization rules.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"880C61B3-7B90-5570-A3F7-D6D92C0E2D36\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"consumerId\\": \\"cs-cvgbtk6m1hkji5sb8dr0\\",\\n \\"name\\": \\"consumer-1\\",\\n \\"description\\": \\"测试专用消费者\\",\\n \\"jwtIdentityConfig\\": {\\n \\"type\\": \\"\\",\\n \\"secretType\\": \\"\\",\\n \\"jwks\\": \\"\\",\\n \\"jwtTokenConfig\\": {\\n \\"position\\": \\"\\",\\n \\"key\\": \\"\\",\\n \\"prefix\\": \\"\\",\\n \\"pass\\": true\\n },\\n \\"jwtPayloadConfig\\": {\\n \\"payloadKeyName\\": \\"\\",\\n \\"payloadKeyValue\\": \\"\\"\\n }\\n },\\n \\"apiKeyIdentityConfig\\": {\\n \\"type\\": \\"\\",\\n \\"apikeySource\\": {\\n \\"source\\": \\"\\",\\n \\"value\\": \\"\\"\\n },\\n \\"credentials\\": [\\n {\\n \\"generateMode\\": \\"\\",\\n \\"apikey\\": \\"\\"\\n }\\n ]\\n },\\n \\"enable\\": true,\\n \\"deployStatus\\": \\"\\\\\\"\\\\\\"\\",\\n \\"createTimestamp\\": 1719386834548,\\n \\"updateTimestamp\\": 1719386834548,\\n \\"akSkIdentityConfigs\\": [\\n {\\n \\"type\\": \\"\\",\\n \\"generateMode\\": \\"\\",\\n \\"ak\\": \\"\\",\\n \\"sk\\": \\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'GetConsumer',
- ],
- 'CreateConsumerAuthorizationRule' => [
- 'summary' => 'Creates a consumer authorization rule.',
- 'path' => '/v1/consumers/{consumerId}/authorization-rules',
- 'methods' => [
- 'post',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListConsumerAuthorizationRules',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/{#ConsumerId}'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'https',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"294382D9-EE60-5735-A4CD-F2AC2840423D\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"totalSize\\": \\"9\\",\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"items\\": [\\n {\\n \\"consumerAuthorizationRuleId\\": \\"car-csgeka5lhtggrjcprok0\\",\\n \\"consumerId\\": \\"cs-csheiftlhtgmp0j0hp4g\\",\\n \\"apiInfo\\": {\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"basePath\\": \\"/v1\\",\\n \\"description\\": \\"测试专用API\\",\\n \\"versionInfo\\": {\\n \\"enable\\": true,\\n \\"scheme\\": \\"Query\\",\\n \\"headerName\\": \\"my-version\\",\\n \\"queryName\\": \\"myVersion\\",\\n \\"version\\": \\"v1\\"\\n },\\n \\"ingressInfo\\": {\\n \\"sourceId\\": \\"src-xxx\\",\\n \\"ingressClass\\": \\"mse\\",\\n \\"watchNamespace\\": \\"default\\",\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"env-xxx\\"\\n },\\n \\"k8sClusterInfo\\": {\\n \\"clusterId\\": \\"ca435c77cba1547cca9311957bcxxxxxx\\"\\n },\\n \\"overrideIngressIp\\": true\\n },\\n \\"type\\": \\"Rest\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"enableAuth\\": false,\\n \\"authConfig\\": {\\n \\"authType\\": \\"Jwt\\",\\n \\"authMode\\": \\"NoAuth\\"\\n },\\n \\"gatewayId\\": \\"gw-cpv4sqdl****\\",\\n \\"modelCategory\\": \\"Text\\",\\n \\"protocols\\": [\\n \\"HTTP\\"\\n ],\\n \\"environments\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"backendType\\": \\"Service\\",\\n \\"serviceConfigs\\": [\\n {\\n \\"gatewayServiceId\\": \\"gs-xxx\\",\\n \\"name\\": \\"demo-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": \\"8080\\",\\n \\"weight\\": 100,\\n \\"version\\": \\"v1\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"serviceId\\": \\"svc-xxx\\"\\n }\\n ],\\n \\"customDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"test\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n }\\n ],\\n \\"aiProtocols\\": [\\n \\"OpenAI/v1\\"\\n ],\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"Mock测试\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"envDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"INQUIRY\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 80,\\n \\"protocol\\": \\"HTTP\\",\\n \\"gatewayServiceId\\": \\"gw-svc-abc123\\",\\n \\"name\\": \\"Qwen-Max-Service\\",\\n \\"version\\": \\"V2\\",\\n \\"multiServiceRouteStrategy\\": \\"ByWeight\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"LeastBusy\\",\\n \\"rateLimit\\": 0.8,\\n \\"queueSize\\": 100\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {}\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cshee6dlhtgk******\\",\\n \\"name\\": \\"hello-server.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"envDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-env-xxx\\",\\n \\"name\\": \\"api.example.com\\",\\n \\"protocol\\": \\"HTTPS\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-csmn42um******\\",\\n \\"name\\": \\"test\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Intranet\\"\\n }\\n ],\\n \\"builtinRouteNames\\": [\\n \\"[\\\\\\"chat\\\\\\",\\\\\\"completions\\\\\\"]\\"\\n ]\\n }\\n ],\\n \\"deployCntMap\\": {\\n \\"key\\": {\\n \\"deployedCnt\\": 3,\\n \\"cnt\\": 0\\n }\\n },\\n \\"agentProtocols\\": [\\n \\"DashScope\\"\\n ]\\n },\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"env-cq7l5s5lhtgi6qasrdc0\\",\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"测试环境\\",\\n \\"description\\": \\"这是xxx的xx项目测试环境\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"subDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cpudb0llhtgl2djvq2sg\\",\\n \\"name\\": \\"abc.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Intranet\\"\\n }\\n ],\\n \\"default\\": false,\\n \\"createTimestamp\\": 1721116090326,\\n \\"updateTimestamp\\": 1721116090326,\\n \\"resourceGroupId\\": \\"rg-xxxx\\"\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"resourceId\\": \\"2351944\\",\\n \\"resourceType\\": \\"HttpApiRoute\\",\\n \\"expireStatus\\": \\"InEffect\\",\\n \\"expireMode\\": \\"ShortTerm\\",\\n \\"expireTimestamp\\": 172086834548,\\n \\"createTimestamp\\": 1719386834548,\\n \\"updateTimestamp\\": 1721116090326,\\n \\"deployStatus\\": \\"{}\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
+ ],
+ 'ListConsumerQuotaRules' => [
+ 'summary' => 'Queries the list of quota rules configured for a specific consumer.',
+ 'path' => '/v1/consumers/{consumerId}/quota-rules',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '248099',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '222348',
+ 'abilityTreeNodes' => ['FEATUREapigatewayUWNKMC'],
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
'name' => 'consumerId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The consumer ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cs-ctd4l1um1hkph7ki1k80',
- ],
+ 'schema' => ['title' => '', 'description' => 'The consumer ID.', 'type' => 'string', 'required' => false, 'example' => 'cs-d8kkaium1hks607xxxxx'],
],
[
- 'name' => 'body',
- 'in' => 'body',
- 'style' => 'json',
- 'schema' => [
- 'description' => 'The request body.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'resourceType' => [
- 'description' => 'The resource type,'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'API',
- ],
- 'parentResourceType' => [
- 'description' => 'The type of the parent resource.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'API',
- ],
- 'authorizationResourceInfos' => [
- 'description' => 'The list of resource authorization information.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The resource authorization information.'."\n",
- 'required' => false,
- '$ref' => '#/components/schemas/AuthorizationResourceInfo',
- ],
- 'required' => false,
- ],
- 'expireMode' => [
- 'description' => 'The expiry mode. Valid values: LongTerm and ShortTerm.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'LongTerm',
- ],
- 'expireTimestamp' => [
- 'description' => 'The expiration time.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '1750852089975',
- ],
- ],
- 'required' => false,
- ],
+ 'name' => 'gatewayId',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The gateway ID. This parameter is optional.', 'type' => 'string', 'example' => 'gw-123456', 'required' => false],
+ ],
+ [
+ 'name' => 'keyword',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The rule name keyword, used for fuzzy match.', 'type' => 'string', 'example' => 'daily', 'required' => false],
+ ],
+ [
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'required' => false],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '6CC83C32-3B5A-57EE-9AFE-D0D51822C7BA',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '1234567890'],
+ 'code' => ['title' => '', 'description' => 'The status code.', 'type' => 'string', 'example' => '200'],
+ 'message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'success'],
'data' => [
- 'description' => 'The response payload.'."\n",
+ 'title' => '',
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'consumerAuthorizationRuleId' => [
- 'description' => 'Filters the list of operations based on a specific consumer authorization rule ID. Only authorized operations are returned in the response.'."\n",
- 'type' => 'string',
- 'example' => 'car-d06p196m1hkg9ukum5pg',
+ 'totalSize' => ['title' => '', 'description' => 'The total number of configured quota rules.', 'type' => 'integer', 'format' => 'int32', 'example' => '100'],
+ 'pageNumber' => ['title' => '', 'description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'],
+ 'pageSize' => ['title' => '', 'description' => 'The current page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '10'],
+ 'items' => [
+ 'title' => '',
+ 'description' => 'The list of rules.',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '',
+ 'description' => 'The rule entry.',
+ 'type' => 'object',
+ 'properties' => [
+ 'ruleId' => ['title' => '', 'description' => 'The rule ID.', 'type' => 'string', 'example' => 'qr-d8j7fpmm1hksxxxxxx'],
+ 'ruleName' => ['title' => '', 'description' => 'The rule name.', 'type' => 'string', 'example' => 'daily-token-limit'],
+ 'gatewayId' => ['title' => '', 'description' => 'The ID of the gateway to which the rule belongs.', 'type' => 'string', 'example' => 'gw-123456'],
+ 'gatewayName' => ['title' => '', 'description' => 'The name of the gateway to which the rule belongs.', 'type' => 'string', 'example' => 'prod-gateway'],
+ 'quotaDimension' => ['title' => '', 'description' => 'The quota dimension.', 'type' => 'string', 'example' => 'token'],
+ 'quotaLimit' => ['title' => '', 'description' => 'The quota limit.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000'],
+ 'windowAlignment' => ['title' => '', 'description' => 'The cycle type. Valid values:'."\n"
+ .'- calendar: calendar cycle.'."\n"
+ .'- epoch: custom cycle.', 'type' => 'string', 'example' => 'calendar'],
+ 'ruleStatus' => [
+ 'title' => '',
+ 'description' => 'The rule status.',
+ 'enumValueTitles' => ['disabled' => 'disabled', 'enbaled' => 'enbaled'],
+ 'type' => 'string',
+ 'example' => 'enabled',
+ ],
+ 'periodType' => ['title' => '', 'description' => 'The period type.', 'type' => 'string', 'example' => 'week'],
+ 'periodMultiplier' => ['title' => '', 'description' => 'The period multiplier, which specifies the number of periods after which the quota is reset. This parameter is returned only when the rule uses a custom cycle. Minimum value: 1. Maximum value: 60.', 'type' => 'string', 'example' => '30'],
+ 'timezone' => ['title' => '', 'description' => 'The time zone corresponding to the calendar cycle, in UTC+x format.', 'type' => 'string', 'example' => 'UTC+8'],
+ ],
+ 'example' => '{\'ruleId\':\'rule-001\',\'ruleName\':\'daily-token-limit\'}',
+ ],
+ 'example' => '[{"ruleId":"rule-001"}]',
],
],
+ 'example' => '{"totalSize":100}',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Query quota rules configured for a consumer',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"6CC83C32-3B5A-57EE-9AFE-D0D51822C7BA\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"consumerAuthorizationRuleId\\": \\"car-d06p196m1hkg9ukum5pg\\"\\n }\\n}","type":"json"}]',
- 'title' => 'CreateConsumerAuthorizationRule',
- ],
- 'UpdateConsumerAuthorizationRule' => [
- 'summary' => 'Updates a consumer authorization rule.',
- 'path' => '/v1/consumers/{consumerId}/authorization-rules/{consumerAuthorizationRuleId}',
- 'methods' => [
- 'put',
- ],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListConsumerQuotaRules',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/{#ConsumerId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"1234567890\\",\\n \\"code\\": \\"200\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"totalSize\\": 100,\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"items\\": [\\n {\\n \\"ruleId\\": \\"qr-d8j7fpmm1hksxxxxxx\\",\\n \\"ruleName\\": \\"daily-token-limit\\",\\n \\"gatewayId\\": \\"gw-123456\\",\\n \\"gatewayName\\": \\"prod-gateway\\",\\n \\"quotaDimension\\": \\"token\\",\\n \\"quotaLimit\\": 1000,\\n \\"windowAlignment\\": \\"calendar\\",\\n \\"ruleStatus\\": \\"enabled\\",\\n \\"periodType\\": \\"week\\",\\n \\"periodMultiplier\\": \\"30\\",\\n \\"timezone\\": \\"UTC+8\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ ],
+ 'ListConsumers' => [
+ 'path' => '/v1/consumers',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
- 'abilityTreeCode' => '248108',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '248113',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
+ 'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'consumerId',
- 'in' => 'path',
- 'schema' => [
- 'description' => 'The consumer ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cs-cvs7kbem1hkiit4ivhu0',
- ],
+ 'name' => 'nameLike',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Fuzzy matches APIs by API name.', 'type' => 'string', 'required' => false, 'example' => 'UI-test', 'title' => ''],
],
[
- 'name' => 'body',
- 'in' => 'body',
- 'style' => 'json',
- 'schema' => [
- 'description' => 'The request body.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'expireMode' => [
- 'description' => 'The expiry mode. Valid values: LongTerm and ShortTerm.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'LongTerm',
- ],
- 'expireTimestamp' => [
- 'description' => 'The expiration time.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '1750852089975',
- ],
- 'authorizationResourceInfos' => [
- 'description' => 'The list of resource authorization information.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The resource authorization information.'."\n",
- 'required' => false,
- '$ref' => '#/components/schemas/AuthorizationResourceInfo',
- ],
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number, starting from 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
],
[
- 'name' => 'consumerAuthorizationRuleId',
- 'in' => 'path',
- 'schema' => [
- 'description' => 'Filters the list of operations by a specific consumer authorization rule ID. Only authorized operations are returned in the response.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cas-xxx',
- ],
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The number of entries per page. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
+ ],
+ [
+ 'name' => 'gatewayType',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Filters by gateway type. Valid values: **AI** and **API**.', 'type' => 'string', 'required' => false, 'example' => 'AI', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => 'C67DED2B-F19B-5BEC-88C1-D6EB854CD0D4',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '9BDD6A7C-CBA7-504F-B8C5-51B9F16590F7'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'totalSize' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '18', 'title' => ''],
+ 'pageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'pageSize' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'items' => [
+ 'description' => 'The list of consumers.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The consumer information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'consumerId' => ['description' => 'The consumer ID.', 'type' => 'string', 'example' => 'cs-csheiftlhtgmp0j0hp4g', 'title' => ''],
+ 'name' => ['description' => 'The consumer name.', 'type' => 'string', 'example' => 'user-service', 'title' => ''],
+ 'description' => ['description' => 'The description.', 'type' => 'string', 'example' => '测试消费者', 'title' => ''],
+ 'createTimestamp' => ['description' => 'The creation timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1721097861050', 'title' => ''],
+ 'updateTimestamp' => ['description' => 'The update timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1721123855214', 'title' => ''],
+ 'deployStatus' => ['description' => 'The publish status of the API in the current environment.', 'type' => 'string', 'example' => '{}', 'title' => ''],
+ 'enable' => ['description' => 'Indicates whether the consumer is enabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Retrieve consumer list',
+ 'summary' => 'Retrieves a list of consumers.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"C67DED2B-F19B-5BEC-88C1-D6EB854CD0D4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'UpdateConsumerAuthorizationRule',
- ],
- 'GetConsumerAuthorizationRule' => [
- 'summary' => 'Obtains a consumer authentication rule.',
- 'path' => '/v1/consumers/{consumerId}/authorization-rules/{consumerAuthorizationRuleId}',
- 'methods' => [
- 'get',
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'apig:ListConsumers',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'https',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"9BDD6A7C-CBA7-504F-B8C5-51B9F16590F7\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"totalSize\\": 18,\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"items\\": [\\n {\\n \\"consumerId\\": \\"cs-csheiftlhtgmp0j0hp4g\\",\\n \\"name\\": \\"user-service\\",\\n \\"description\\": \\"测试消费者\\",\\n \\"createTimestamp\\": 1721097861050,\\n \\"updateTimestamp\\": 1721123855214,\\n \\"deployStatus\\": \\"{}\\",\\n \\"enable\\": true\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
+ ],
+ 'ListDomains' => [
+ 'summary' => 'Queries a list of domain names.',
+ 'path' => '/v1/domains',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '248110',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '219198',
+ 'abilityTreeNodes' => ['FEATUREapigatewayLPOSXV'],
],
'parameters' => [
[
- 'name' => 'consumerAuthorizationRuleId',
- 'in' => 'path',
- 'schema' => [
- 'description' => 'Filters the list of operations by a specific consumer authorization rule ID. Only authorized operations are returned in the response.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'car-ctgdn8em1hko5krqq03g',
- ],
+ 'name' => 'nameLike',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The domain name. Fuzzy match is supported.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''],
],
[
- 'name' => 'consumerId',
- 'in' => 'path',
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The number of entries per page. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
+ ],
+ [
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-xxxxxx', 'title' => ''],
+ ],
+ [
+ 'name' => 'domainScope',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The domain name scope.', 'type' => 'string', 'example' => 'Serverless', 'required' => false],
+ ],
+ [
+ 'name' => 'resourceGroupId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aek27lpqyiie6qy', 'title' => ''],
+ ],
+ [
+ 'name' => 'gatewayType',
+ 'in' => 'query',
'schema' => [
- 'description' => 'The consumer ID.'."\n",
+ 'description' => 'The gateway type used for filtering. Valid values: **AI** and **API**.',
+ 'enumValueTitles' => ['AI' => 'AI', 'API' => 'API'],
'type' => 'string',
'required' => false,
- 'example' => 'cs-ctgdn2um1hkossul8gvg',
+ 'example' => 'API',
+ 'title' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'The response body.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => '53102737-1E4E-5A8B-8E0A-4184B0959B84',
- ],
- 'consumerId' => [
- 'description' => 'The consumer ID.'."\n",
- 'type' => 'string',
- 'example' => 'cs-ctgdn2um1hkossul8gvg',
- ],
- 'consumerAuthorizationRuleId' => [
- 'description' => 'Filters the list of operations by a specific consumer authorization rule ID. Only authorized operations are returned in the response.'."\n",
- 'type' => 'string',
- 'example' => 'car-ctgdn8em1hko5krqq03g',
- ],
- 'apiInfo' => [
- 'description' => 'The API information.'."\n",
- '$ref' => '#/components/schemas/HttpApiApiInfo',
- ],
- 'environmentInfo' => [
- 'description' => 'The environment information.'."\n",
- '$ref' => '#/components/schemas/EnvironmentInfo',
- ],
- 'gatewayInfo' => [
- 'description' => 'The gateway information.'."\n",
- '$ref' => '#/components/schemas/GatewayInfo',
- ],
- 'resourceType' => [
- 'description' => 'The resource type.'."\n",
- 'type' => 'string',
- 'example' => 'API',
- ],
- 'expireStatus' => [
- 'description' => 'The rule status.'."\n",
- 'type' => 'string',
- 'example' => 'true',
- ],
- 'expireMode' => [
- 'description' => 'The expiry mode. Valid values: LongTerm and ShortTerm.'."\n",
- 'type' => 'string',
- 'example' => 'LongTerm',
- ],
- 'expireTimestamp' => [
- 'description' => 'The expiration time.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1750852089975',
- ],
- 'createTimestamp' => [
- 'description' => 'The creation timestamp. Unit: milliseconds.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1750852089975',
- ],
- 'updateTimestamp' => [
- 'description' => 'The update timestamp. Unit: milliseconds.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1750852089975',
- ],
- 'deployStatus' => [
- 'description' => 'The publishing status of the API in the current environment.'."\n",
- 'type' => 'string',
- 'example' => '""',
+ 'requestId' => ['title' => '', 'description' => 'The request ID, which is used to trace the API call chain.', 'type' => 'string', 'example' => 'C61E30D3-579A-5B43-994E-31E02EDC9129'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response description.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'pageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'pageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'totalSize' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '9', 'title' => ''],
+ 'items' => [
+ 'description' => 'The list of domain name information.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The domain name information.', '$ref' => '#/components/schemas/DomainInfo', 'title' => '', 'example' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Query domain name list',
+ 'changeSet' => [
+ ['createdAt' => '2026-06-17T12:19:57.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-04-24T16:41:35.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-11-20T09:31:25.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-07-29T12:43:13.000Z', 'description' => 'Request parameters changed'],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"53102737-1E4E-5A8B-8E0A-4184B0959B84\\",\\n \\"consumerId\\": \\"cs-ctgdn2um1hkossul8gvg\\",\\n \\"consumerAuthorizationRuleId\\": \\"car-ctgdn8em1hko5krqq03g\\",\\n \\"apiInfo\\": {\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"basePath\\": \\"/v1\\",\\n \\"description\\": \\"\\",\\n \\"versionInfo\\": {\\n \\"enable\\": true,\\n \\"scheme\\": \\"Query\\",\\n \\"headerName\\": \\"my-version\\",\\n \\"queryName\\": \\"myVersion\\",\\n \\"version\\": \\"v1\\"\\n },\\n \\"ingressInfo\\": {\\n \\"sourceId\\": \\"\\",\\n \\"ingressClass\\": \\"\\",\\n \\"watchNamespace\\": \\"\\",\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"\\"\\n },\\n \\"k8sClusterInfo\\": {\\n \\"clusterId\\": \\"\\"\\n },\\n \\"overrideIngressIp\\": true\\n },\\n \\"type\\": \\"Rest\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"enabelAuth\\": true,\\n \\"authConfig\\": {\\n \\"authType\\": \\"\\",\\n \\"authMode\\": \\"\\"\\n },\\n \\"gatewayId\\": \\"\\",\\n \\"modelCategory\\": \\"\\",\\n \\"protocols\\": [\\n \\"HTTP\\"\\n ],\\n \\"environments\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"backendType\\": \\"Service\\",\\n \\"serviceConfigs\\": [\\n {\\n \\"gatewayServiceId\\": \\"gs-xxx\\",\\n \\"name\\": \\"demo-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": \\"8080\\",\\n \\"weight\\": 100,\\n \\"version\\": \\"v1\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"serviceId\\": \\"svc-xxx\\"\\n }\\n ],\\n \\"customDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"test\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-xxx\\",\\n \\"name\\": \\"test\\"\\n },\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n }\\n ],\\n \\"aiProtocols\\": [\\n \\"\\"\\n ],\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 0,\\n \\"protocol\\": \\"\\",\\n \\"gatewayServiceId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"version\\": \\"\\",\\n \\"multiServiceRouteStrategy\\": \\"\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"\\",\\n \\"rateLimit\\": 0,\\n \\"queueSize\\": 0\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {\\n \\"type\\": \\"AiFallback\\",\\n \\"enable\\": true,\\n \\"aiFallbackConfig\\": {\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"\\",\\n \\"targetModelName\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiSecurityGuardConfig\\": {\\n \\"serviceAddress\\": \\"\\",\\n \\"checkRequest\\": true,\\n \\"checkResponse\\": true,\\n \\"checkRequestImage\\": true,\\n \\"checkResponseImage\\": true,\\n \\"requestCheckService\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"riskAlertLevel\\": \\"\\",\\n \\"riskConfig\\": [\\n {\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\",\\n \\"consumerRules\\": {\\n \\"pattern\\": \\"\\",\\n \\"matchType\\": \\"\\"\\n }\\n }\\n ],\\n \\"bufferLimit\\": 0,\\n \\"consumerRequestCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"requestCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerResponseCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerRiskLevel\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiTokenRateLimitConfig\\": {\\n \\"rules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"globalRules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"enableGlobalRules\\": true\\n }\\n }\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"deployCntMap\\": {\\n \\"key\\": {\\n \\"deployedCnt\\": 0,\\n \\"Cnt\\": 0\\n }\\n },\\n \\"agentProtocols\\": [\\n \\"\\"\\n ]\\n },\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"alias\\": \\"\\",\\n \\"description\\": \\"\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"subDomainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"\\"\\n }\\n ],\\n \\"default\\": true,\\n \\"createTimestamp\\": 0,\\n \\"updateTimestamp\\": 0,\\n \\"resourceGroupId\\": \\"rg-xxxx\\"\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"resourceType\\": \\"API\\",\\n \\"expireStatus\\": \\"true\\",\\n \\"expireMode\\": \\"LongTerm\\",\\n \\"expireTimestamp\\": 1750852089975,\\n \\"createTimestamp\\": 1750852089975,\\n \\"updateTimestamp\\": 1750852089975,\\n \\"deployStatus\\": \\"\\\\\\"\\\\\\"\\"\\n}","type":"json"}]',
- 'title' => 'GetConsumerAuthorizationRule',
- ],
- 'ListPolicies' => [
- 'summary' => 'Queries policies.',
- 'path' => '/v1/policies',
- 'methods' => [
- 'get',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListDomains'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListDomains',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:domain/*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"C61E30D3-579A-5B43-994E-31E02EDC9129\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 9,\\n \\"items\\": [\\n {\\n \\"domainId\\": \\"d-cq1lthllhtgja4dk54eg\\",\\n \\"status\\": \\"Published\\",\\n \\"createFrom\\": \\"Console\\",\\n \\"name\\": \\"abc.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"domainScope\\": \\"Dedicated\\",\\n \\"forceHttps\\": false,\\n \\"updateTimestamp\\": 1719386834548,\\n \\"createTimestamp\\": 1719386834548,\\n \\"certIdentifier\\": \\"235556-cn-hangzhou\\",\\n \\"tlsMax\\": \\"\\",\\n \\"tlsMin\\": \\"\\",\\n \\"resourceGroupId\\": \\"rg-xxxx\\",\\n \\"mTLSEnabled\\": true,\\n \\"clientCACert\\": \\"-----BEGIN CERTIFICATE-----\\\\nMIIFBTCCAu2gAwIBAgIUORLpYPGSFD1YOP6PMbE7Wd/mpTQwDQYJKoZIhvcNAQEL\\\\nBQAwE************************************************2VwVOJ2gqX3\\\\nYuGaxvIbDy0iQJ1GMerPRyzJTeVEtdIKT29u0PdFRr4KZWom35qX7G4=\\\\n-----END CERTIFICATE-----\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ ],
+ 'ListEnvironments' => [
+ 'summary' => 'Queries the list of environments.',
+ 'path' => '/v1/environments',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'read',
- 'deprecated' => false,
+ 'deprecated' => true,
'systemTags' => [
- 'operationType' => 'none',
- 'abilityTreeCode' => '228407',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayOZOKBY',
- ],
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '219218',
+ 'abilityTreeNodes' => ['FEATUREapigatewayPE3NRT'],
],
'parameters' => [
[
- 'name' => 'withAttachments',
+ 'name' => 'nameLike',
'in' => 'query',
- 'schema' => [
- 'description' => 'Specifies whether to return attachment information.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => 'The environment name. Fuzzy match is supported.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''],
],
[
- 'name' => 'attachResourceId',
+ 'name' => 'aliasLike',
'in' => 'query',
- 'schema' => [
- 'description' => 'The attachment point ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'api-cq7l5s5lhtgi6qasrdc0',
- ],
+ 'schema' => ['description' => 'The environment alias. Fuzzy match is supported.', 'type' => 'string', 'required' => false, 'example' => '测试', 'title' => ''],
],
[
- 'name' => 'attachResourceType',
+ 'name' => 'gatewayId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The types of attachment points supported by the policy. Valid values: '."\n"
- ."\n"
- .'- HttpApi'."\n"
- .'- Operation'."\n"
- .'- GatewayRoute'."\n"
- .'- GatewayService'."\n"
- .'- GatewayServicePort'."\n"
- .'- Domain'."\n"
- .'- Gateway',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'HttpApi',
- ],
+ 'schema' => ['description' => 'The gateway ID. Exact match is supported.', 'type' => 'string', 'required' => false, 'example' => 'gw-cptv6ktlhtgnqr73h8d1', 'title' => ''],
],
[
- 'name' => 'environmentId',
+ 'name' => 'gatewayNameLike',
'in' => 'query',
- 'schema' => [
- 'description' => 'The environment ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'env-cq7l5s5lhtgi6qasrdc0',
- ],
+ 'schema' => ['description' => 'The gateway name. Fuzzy match is supported.', 'type' => 'string', 'required' => false, 'example' => 'test-gw', 'title' => ''],
],
[
- 'name' => 'gatewayId',
+ 'name' => 'pageNumber',
'in' => 'query',
- 'schema' => [
- 'description' => 'The gateway ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cq2fm65lhtgm9nrrl7ag',
- ],
+ 'schema' => ['description' => 'The page number. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
],
[
- 'name' => 'withSystemPolicy',
+ 'name' => 'pageSize',
'in' => 'query',
- 'schema' => [
- 'description' => 'Specifies whether it is a system policy.',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
+ 'schema' => ['description' => 'The number of entries per page. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
+ ],
+ [
+ 'name' => 'resourceGroupId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aek2nqpppkzplmq', 'title' => ''],
+ ],
+ [
+ 'name' => 'gatewayType',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The gateway type.', 'type' => 'string', 'required' => false, 'example' => 'APIGateway', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID for API call tracing.'."\n",
- 'type' => 'string',
- 'example' => '393E2630-DBE7-5221-AB35-9E740675491A',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID, which is used to trace the call chain.', 'type' => 'string', 'example' => 'CE857A85-251D-5018-8103-A38957D71E20'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'The response payload.',
+ 'description' => 'The paged query response for the environment list.',
'type' => 'object',
'properties' => [
- 'pageNumber' => [
- 'description' => 'The page number.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'pageSize' => [
- 'description' => 'The page size.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
- 'totalSize' => [
- 'description' => 'The total number of entries returned.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '18',
- ],
+ 'pageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'pageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'totalSize' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '25', 'title' => ''],
'items' => [
- 'description' => 'The list of policies.'."\n",
+ 'description' => 'The list of environment contexts.',
'type' => 'array',
- 'items' => [
- 'description' => 'The details of a policy.',
- '$ref' => '#/components/schemas/PolicyInfo',
- ],
+ 'items' => ['description' => 'The environment context.', '$ref' => '#/components/schemas/EnvironmentInfo', 'title' => '', 'example' => ''],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', 'returnType' => 'synchronous'],
+ 'title' => 'Query environment list',
+ 'changeSet' => [
+ ['createdAt' => '2025-04-24T16:41:33.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-11-20T09:31:23.000Z', 'description' => 'Request parameters changed'],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"393E2630-DBE7-5221-AB35-9E740675491A\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 18,\\n \\"items\\": [\\n {\\n \\"policyId\\": \\"\\",\\n \\"direction\\": \\"\\",\\n \\"className\\": \\"\\",\\n \\"classAlias\\": \\"\\",\\n \\"config\\": \\"\\",\\n \\"attachments\\": [\\n {\\n \\"policyAttachmentId\\": \\"\\",\\n \\"attachResourceIds\\": [\\n \\"\\"\\n ],\\n \\"attachResourceType\\": \\"\\",\\n \\"environmentId\\": \\"\\",\\n \\"gatewayId\\": \\"\\"\\n }\\n ],\\n \\"name\\": \\"\\",\\n \\"type\\": \\"\\",\\n \\"executeStage\\": \\"\\",\\n \\"executePriority\\": \\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'ListPolicies',
- ],
- 'ListPolicyClasses' => [
- 'summary' => 'Queries policy templates.',
- 'path' => '/v1/policy-classes',
- 'methods' => [
- 'get',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListEnvironments'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'apig:ListEnvironments',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Environment', 'arn' => 'acs:apig:{#regionId}:{#accountId}:environment/*'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CE857A85-251D-5018-8103-A38957D71E20\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 25,\\n \\"items\\": [\\n {\\n \\"environmentId\\": \\"env-cq7l5s5lhtgi6qasrdc0\\",\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"测试环境\\",\\n \\"description\\": \\"这是xxx的xx项目测试环境\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"subDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cpudb0llhtgl2djvq2sg\\",\\n \\"name\\": \\"abc.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Intranet\\"\\n }\\n ],\\n \\"default\\": false,\\n \\"createTimestamp\\": 1721116090326,\\n \\"updateTimestamp\\": 1721116090326,\\n \\"resourceGroupId\\": \\"rg-xxxx\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
+ ],
+ 'ListExternalServices' => [
+ 'path' => '/v1/gateways/{gatewayId}/external-services',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '223018',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayE6KZ22',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '228569',
+ 'abilityTreeNodes' => ['FEATUREapigatewayNPQVBL'],
],
'parameters' => [
[
- 'name' => 'type',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The template type.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'FlowControl',
- ],
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The gateway ID. Exact match.', 'type' => 'string', 'required' => false, 'example' => 'gw-d76t026m1hkv70tla0e0', 'title' => ''],
],
[
- 'name' => 'direction',
+ 'name' => 'sourceType',
'in' => 'query',
- 'schema' => [
- 'description' => 'The direction of traffic on which the policy takes effect. Valid values:'."\n"
- ."\n"
- .'* OutBound'."\n"
- .'* InBound'."\n"
- .'* Both'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'InBound',
- ],
+ 'schema' => ['description' => 'The service source type used to filter results. Valid values:'."\n"
+ .'- MSE_NACOS: services from MSE Nacos.'."\n"
+ .'- K8S: services from a Kubernetes cluster in Container Service.'."\n"
+ .'- FC3: services from Function Compute.'."\n"
+ .'- VIP: services from a fixed address.'."\n"
+ .'- DNS: services from a domain name.', 'type' => 'string', 'required' => false, 'example' => 'FC3', 'title' => ''],
],
[
- 'name' => 'attachResourceType',
+ 'name' => 'limit',
'in' => 'query',
- 'schema' => [
- 'description' => 'The supported mount point type. Valid values:'."\n"
- ."\n"
- .'* HttpApi: an HTTP API'."\n"
- .'* Operation: an operation in an HTTP API'."\n"
- .'* GatewayRoute: a route'."\n"
- .'* GatewayService: a service'."\n"
- .'* GatewayServicePort: a service port'."\n"
- .'* Domain: a domain name'."\n"
- .'* Gateway: an instance'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'Operation',
- ],
+ 'schema' => ['title' => '', 'description' => 'The maximum number of entries to return. Valid range: (0, 100]. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100'],
],
[
- 'name' => 'pageNumber',
+ 'name' => 'nameLike',
'in' => 'query',
- 'schema' => [
- 'description' => 'The page number of the page to return. Default value: 1.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'The API name for fuzzy match.', 'type' => 'string', 'required' => false, 'example' => 'imah', 'title' => ''],
],
[
- 'name' => 'pageSize',
+ 'name' => 'importableOnly',
'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries per page.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
+ 'schema' => ['description' => 'Specifies whether to return only services that have not been imported.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
[
- 'name' => 'attachResourceId',
+ 'name' => 'paiWorkspaceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The resource ID to attach the policy',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'route-001',
- ],
- ],
- [
- 'name' => 'gatewayId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The gateway ID',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-001',
- ],
+ 'schema' => ['description' => 'The workspace ID of the PAI-EAS service.', 'type' => 'string', 'required' => false, 'example' => '667435', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response parameters.'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '23B45FA9-7208-5E55-B5CE-B6B2567DD822',
- ],
- 'code' => [
- 'description' => 'The status code returned.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'D9B03B59-B2D6-51B0-A7E9-AF8466E320CA'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'Failed to upload data. Please try again', 'title' => ''],
'data' => [
- 'description' => 'An array of policy template information.'."\n",
+ 'description' => 'The list of APIs.',
'type' => 'object',
'properties' => [
- 'pageNumber' => [
- 'description' => 'The page number of the returned page.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'pageSize' => [
- 'description' => 'The number of entries per page.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
- 'totalSize' => [
- 'description' => 'The total number of entries.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
'items' => [
- 'description' => 'The templates.'."\n",
+ 'description' => 'The service information.',
'type' => 'array',
'items' => [
- 'description' => 'The template information.'."\n",
- '$ref' => '#/components/schemas/PolicyClassInfo',
+ 'description' => 'The zone ID.',
+ 'type' => 'object',
+ 'properties' => [
+ 'namespace' => ['description' => 'The namespace.', 'type' => 'string', 'example' => 'PUBLIC', 'title' => ''],
+ 'namespaceShowName' => ['description' => 'The display name of the namespace.', 'type' => 'string', 'example' => 'PUBLIC', 'title' => ''],
+ 'services' => [
+ 'description' => 'The backend services.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The backend services.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The name.', 'type' => 'string', 'example' => 'enable-slash-merge', 'title' => ''],
+ 'namespace' => ['description' => 'The namespace.', 'type' => 'string', 'example' => 'public', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Retrieve external services',
+ 'summary' => 'Retrieves the external service information of a gateway.',
+ 'description' => 'This operation supports creating multiple services.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"23B45FA9-7208-5E55-B5CE-B6B2567DD822\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 10,\\n \\"items\\": [\\n {\\n \\"classId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"alias\\": \\"\\",\\n \\"version\\": \\"\\",\\n \\"description\\": \\"\\",\\n \\"type\\": \\"\\",\\n \\"direction\\": \\"\\",\\n \\"attachableResourceTypes\\": [\\n \\"\\"\\n ],\\n \\"executeStage\\": \\"\\",\\n \\"executePriority\\": \\"\\",\\n \\"enableLog\\": true,\\n \\"deprecated\\": true,\\n \\"configExample\\": \\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'ListPolicyClasses',
- 'translator' => 'machine',
- ],
- 'CreatePolicy' => [
- 'summary' => 'Creates a policy.',
- 'path' => '/v2/policies',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListExternalServices',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"D9B03B59-B2D6-51B0-A7E9-AF8466E320CA\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"Failed to upload data. Please try again\\",\\n \\"data\\": {\\n \\"items\\": [\\n {\\n \\"namespace\\": \\"PUBLIC\\",\\n \\"namespaceShowName\\": \\"PUBLIC\\",\\n \\"services\\": [\\n {\\n \\"name\\": \\"enable-slash-merge\\",\\n \\"namespace\\": \\"public\\"\\n }\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]',
+ ],
+ 'ListGatewayFeatures' => [
+ 'path' => '/v1/gateways/{gatewayId}/gateway-features',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '262548',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayOZOKBY',
- ],
- 'tenantRelevance' => 'publicInformation',
+ 'abilityTreeNodes' => ['FEATUREapigatewayU6ME97'],
],
'parameters' => [
[
- 'name' => 'body',
- 'in' => 'body',
- 'style' => 'json',
- 'schema' => [
- 'description' => 'Request Body.',
- 'type' => 'object',
- 'properties' => [
- 'name' => [
- 'title' => '策略名称',
- 'description' => 'Policy name',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'test-policy',
- ],
- 'className' => [
- 'title' => '策略类型,RateLimit、ConcurrencyLimit、CircuitBreaker、HttpRewrite、HeaderModify、Cors、Authentication、FlowCopy、Timeout、Retry、IpAccessControl、DirectResponse、Redirect、Fallback、ServiceTls、ServiceLb、ServicePortTls、Waf、JWTAuth、OIDCAuth、ExternalZAuth、AiProxy、ModelRouter、AiStatistics、AiSecurityGuard、AiFallback、ModelMapper、AiTokenRateLimit、AiCache、DynamicRoute',
- 'description' => 'Policy type, including RateLimit, ConcurrencyLimit, CircuitBreaker, HttpRewrite, HeaderModify, Cors, Authentication, FlowCopy, Timeout, Retry, IpAccessControl, DirectResponse, Redirect, Fallback, ServiceTls, ServiceLb, ServicePortTls, Waf, JWTAuth, OIDCAuth, ExternalZAuth, AiProxy, ModelRouter, AiStatistics, AiSecurityGuard, AiFallback, ModelMapper, AiTokenRateLimit, AiCache, DynamicRoute',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'Timeout',
- 'enum' => [
- 'ConcurrencyLimit',
- 'RateLimit',
- 'CircuitBreaker',
- 'IpAccessControl',
- 'Timeout',
- 'Retry',
- 'Cors',
- 'FlowCopy',
- 'HeaderModify',
- 'HttpRewrite',
- 'Fallback',
- 'DirectResponse',
- 'Redirect',
- 'ServiceTls',
- 'ServiceLb',
- 'ServicePortTls',
- 'JWTAuth',
- 'OIDCAuth',
- 'ExternalZAuth',
- 'Waf',
- 'Authentication',
- 'AiFallback',
- 'AiSecurityGuard',
- 'AiCache',
- 'AiTokenRateLimit',
- ],
- ],
- 'config' => [
- 'title' => '策略配置',
- 'description' => 'Policy configuration',
- 'type' => 'string',
- 'required' => true,
- 'example' => '{"unitNum":1,"timeUnit":"s","enable":true}',
- ],
- 'description' => [
- 'title' => '描述',
- 'description' => 'Policy description',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'timeout policy',
- ],
- ],
- 'required' => false,
- ],
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-cpv4sqdl****', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
+ 'title' => '',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'ID of the request',
- 'type' => 'string',
- 'example' => '393E2630-DBE7-5221-AB35-9E7406754***',
- ],
- 'code' => [
- 'description' => 'Response status code.',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'Response message.',
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '393E2630-DBE7-5221-AB35-9E740675491A'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'Response data.',
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'policyId' => [
- 'title' => '策略ID',
- 'description' => 'Policy ID',
- 'type' => 'string',
- 'example' => 'p-cq7l5s5lhtgi6qasr***'."\n",
+ 'items' => [
+ 'description' => 'The list of parameter settings.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The parameter settings information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'definition' => [
+ 'description' => 'The parameter definition.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The parameter name.', 'type' => 'string', 'example' => 'enable-gzip', 'title' => ''],
+ 'displayName' => ['description' => 'The display name of the parameter.', 'type' => 'string', 'example' => 'EnableGzip', 'title' => ''],
+ 'valueType' => [
+ 'description' => 'The type supported by the parameter value. Valid values:'."\n"
+ .'- bool: Boolean.'."\n"
+ .'- string: String.'."\n"
+ .'- int32: Integer.'."\n"
+ .'- int64: Long integer.'."\n"
+ .'- json: JSON format.'."\n"
+ .'- array: JSON array format.'."\n"
+ .'- float: Float.',
+ 'enumValueTitles' => ['bool' => 'bool', 'string' => 'string', 'int32' => 'int32', 'array' => 'array', 'int64' => 'int64', 'float' => 'float'],
+ 'type' => 'string',
+ 'example' => 'bool',
+ 'title' => '',
+ ],
+ 'description' => ['description' => 'The parameter description.', 'type' => 'string', 'example' => '作用于请求与响应环节,启用gzip会对请求响应进行压缩,会减少网关流量,增加网关cpu消耗', 'title' => ''],
+ 'group' => [
+ 'description' => 'The parameter group. Valid values:'."\n"
+ .'- Telemetry: observability parameter.'."\n"
+ .'- Engine: engine parameter.',
+ 'enumValueTitles' => ['Telemetry' => 'Telemetry', 'Engine' => 'Engine'],
+ 'type' => 'string',
+ 'example' => 'Engine',
+ 'title' => '',
+ ],
+ 'defaultValue' => ['description' => 'The default value.', 'type' => 'string', 'example' => '"true"', 'title' => ''],
+ 'valueUnit' => ['description' => 'The unit.', 'type' => 'string', 'example' => 'byte', 'title' => ''],
+ 'readOnly' => ['description' => 'Indicates whether the parameter is read-only.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'regex' => ['description' => 'The regular expression that the parameter value must match. This is valid only when the parameter value type is string.', 'type' => 'string', 'example' => '[a-z].*', 'title' => ''],
+ 'minValue' => ['description' => 'The minimum value supported by the parameter. This is valid only when the value type is int32, int64, or float.', 'type' => 'string', 'example' => '100', 'title' => ''],
+ 'maxValue' => ['description' => 'The maximum value supported by the parameter. This is valid only when the value type is int32, int64, or float.', 'type' => 'string', 'example' => '65535', 'title' => ''],
+ 'minLength' => ['description' => 'The minimum length supported by the parameter value. This is valid only when the value type is string.', 'type' => 'integer', 'format' => 'int32', 'example' => '8', 'title' => ''],
+ 'maxLength' => ['description' => 'The maximum length supported by the parameter value. This is valid only when the value type is string.', 'type' => 'integer', 'format' => 'int32', 'example' => '64', 'title' => ''],
+ 'valueOptions' => [
+ 'description' => 'The list of options supported by the parameter value.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The option information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'label' => ['description' => 'The display value.', 'type' => 'string', 'example' => '保持不变', 'title' => ''],
+ 'key' => ['description' => 'The pass parameter key.', 'type' => 'string', 'example' => 'KEEP_UNCHANGED', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'inputType' => [
+ 'description' => 'The input type of the parameter. Valid values:'."\n"
+ .'- Trigger: toggle.'."\n"
+ .'- Input: input.'."\n"
+ .'- SingleSelect: single-select.'."\n"
+ .'- MultiSelect: multi-select.',
+ 'enumValueTitles' => ['SingleSelect' => 'SingleSelect', 'MultiSelect' => 'MultiSelect', 'Input' => 'Input', 'Trigger' => 'Trigger'],
+ 'type' => 'string',
+ 'example' => 'Trigger',
+ 'title' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'value' => ['description' => 'The parameter value.', 'type' => 'string', 'example' => '"true"', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"393E2630-DBE7-5221-AB35-9E7406754***\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"policyId\\": \\"p-cq7l5s5lhtgi6qasr***\\\\n\\"\\n }\\n}","type":"json"}]',
- 'title' => 'CreatePolicy',
- 'translator' => 'machine',
- ],
- 'GetPolicy' => [
- 'summary' => 'Queries a policy.',
- 'path' => '/v2/policies/{policyId}',
- 'methods' => [
- 'get',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Query gateway attribute parameter settings',
+ 'summary' => 'Queries the list of gateway attribute parameter settings.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListGatewayFeatures'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListGatewayFeatures',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"393E2630-DBE7-5221-AB35-9E740675491A\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"items\\": [\\n {\\n \\"definition\\": {\\n \\"name\\": \\"enable-gzip\\",\\n \\"displayName\\": \\"EnableGzip\\",\\n \\"valueType\\": \\"bool\\",\\n \\"description\\": \\"作用于请求与响应环节,启用gzip会对请求响应进行压缩,会减少网关流量,增加网关cpu消耗\\",\\n \\"group\\": \\"Engine\\",\\n \\"defaultValue\\": \\"\\\\\\"true\\\\\\"\\",\\n \\"valueUnit\\": \\"byte\\",\\n \\"readOnly\\": false,\\n \\"regex\\": \\"[a-z].*\\",\\n \\"minValue\\": \\"100\\",\\n \\"maxValue\\": \\"65535\\",\\n \\"minLength\\": 8,\\n \\"maxLength\\": 64,\\n \\"valueOptions\\": [\\n {\\n \\"label\\": \\"保持不变\\",\\n \\"key\\": \\"KEEP_UNCHANGED\\"\\n }\\n ],\\n \\"inputType\\": \\"Trigger\\"\\n },\\n \\"value\\": \\"\\\\\\"true\\\\\\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ ],
+ 'ListGatewayQuotaRules' => [
+ 'summary' => 'Queries the list of consumer quota rules bound to a gateway.',
+ 'path' => '/v1/gateways/{gatewayId}/quota-rules',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'get',
+ 'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '227516',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayOZOKBY',
- ],
+ 'abilityTreeCode' => '222348',
+ 'abilityTreeNodes' => ['FEATUREapigatewayUWNKMC'],
+ 'tenantRelevance' => 'tenant',
],
'parameters' => [
[
- 'name' => 'policyId',
+ 'name' => 'gatewayId',
'in' => 'path',
- 'schema' => [
- 'title' => '策略ID',
- 'description' => 'The policy ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'p-cu85bamm1hkrn5g6o***',
- ],
+ 'schema' => ['title' => '', 'description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-123456'],
+ ],
+ [
+ 'name' => 'keyword',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The rule name keyword for fuzzy match.', 'type' => 'string', 'example' => 'daily', 'required' => false],
+ ],
+ [
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'required' => false],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'required' => false],
+ ],
+ [
+ 'name' => 'maxResults',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The maximum number of records to retrieve at a time. This parameter is not supported.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20', 'title' => ''],
+ ],
+ [
+ 'name' => 'nextToken',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The pagination token. This parameter is not supported.', 'type' => 'string', 'required' => false, 'example' => 'C4tM8BlBJwHSNyjWpGaci4/7dKNGp1JMgsKtvCagmtY=', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response parameters.'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '2F46B9E7-67EF-5C8A-BA52-D38D5B32A***',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '1234567890'],
+ 'code' => ['title' => '', 'description' => 'The status code.', 'type' => 'string', 'example' => '200'],
+ 'message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'success'],
'data' => [
- 'description' => 'The data returned.'."\n",
- '$ref' => '#/components/schemas/PolicyDetailInfo',
+ 'title' => '',
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'totalSize' => ['title' => '', 'description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '100'],
+ 'pageNumber' => ['title' => '', 'description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'],
+ 'pageSize' => ['title' => '', 'description' => 'The current page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '10'],
+ 'items' => [
+ 'title' => '',
+ 'description' => 'The list of rules.',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '',
+ 'description' => 'The rule entry.',
+ 'type' => 'object',
+ 'properties' => [
+ 'ruleId' => ['title' => '', 'description' => 'The rule ID.', 'type' => 'string', 'example' => 'qr-xxxxx'],
+ 'ruleName' => ['title' => '', 'description' => 'The rule name.', 'type' => 'string', 'example' => 'daily-token-limit'],
+ 'quotaDimension' => ['title' => '', 'description' => 'The quota dimension.', 'type' => 'string', 'example' => 'token'],
+ 'quotaLimit' => ['title' => '', 'description' => 'The quota limit.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000'],
+ 'ruleStatus' => ['title' => '', 'description' => 'The rule status.', 'type' => 'string', 'example' => 'enabled'],
+ 'periodType' => ['title' => '', 'description' => 'The period type.', 'type' => 'string', 'example' => 'week'],
+ 'timezone' => ['title' => '', 'description' => 'The time zone for the natural period, in UTC+x format.', 'type' => 'string', 'example' => 'GMT+8'],
+ 'windowAlignment' => ['title' => '', 'description' => 'The reset period type.', 'type' => 'string', 'example' => 'calendar'],
+ ],
+ 'example' => '{\'ruleId\':\'rule-001\',\'ruleName\':\'daily-token-limit\'}',
+ ],
+ 'example' => '[{"ruleId":"rule-001"}]',
+ ],
+ ],
+ 'example' => '{"totalSize":100}',
],
+ 'maxResults' => ['description' => 'The maximum number of records to retrieve at a time. This parameter is not supported.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''],
+ 'nextToken' => ['description' => 'The pagination token. This parameter is not supported.', 'type' => 'string', 'example' => '762b1fa4e2434fd3959b1f66481979cf', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"2F46B9E7-67EF-5C8A-BA52-D38D5B32A***\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"policyId\\": \\"\\",\\n \\"classId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"className\\": \\"\\",\\n \\"description\\": \\"\\",\\n \\"config\\": \\"\\"\\n }\\n}","type":"json"}]',
- 'title' => 'GetPolicy',
- ],
- 'UpdatePolicy' => [
- 'summary' => 'Updates a policy.',
- 'path' => '/v2/policies/{policyId}',
- 'methods' => [
- 'put',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Query consumer quota rules',
+ 'description' => 'Queries the list of consumer quota rules bound to a gateway.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'apig:ListGatewayQuotaRules',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"1234567890\\",\\n \\"code\\": \\"200\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"totalSize\\": 100,\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"items\\": [\\n {\\n \\"ruleId\\": \\"qr-xxxxx\\",\\n \\"ruleName\\": \\"daily-token-limit\\",\\n \\"quotaDimension\\": \\"token\\",\\n \\"quotaLimit\\": 1000,\\n \\"ruleStatus\\": \\"enabled\\",\\n \\"periodType\\": \\"week\\",\\n \\"timezone\\": \\"GMT+8\\",\\n \\"windowAlignment\\": \\"calendar\\"\\n }\\n ]\\n },\\n \\"maxResults\\": 100,\\n \\"nextToken\\": \\"762b1fa4e2434fd3959b1f66481979cf\\"\\n}","type":"json"}]',
+ ],
+ 'ListGateways' => [
+ 'path' => '/v1/gateways',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'consumes' => ['application/x-www-form-urlencoded', 'application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
- 'riskType' => 'high',
+ 'operationType' => 'list',
+ 'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '262552',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayOZOKBY',
- ],
+ 'abilityTreeCode' => '218454',
+ 'abilityTreeNodes' => ['FEATUREapigatewayUWNKMC'],
],
'parameters' => [
[
- 'name' => 'policyId',
- 'in' => 'path',
+ 'name' => 'gatewayId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The gateway ID for exact match query.', 'type' => 'string', 'required' => false, 'example' => 'gw-cpv4sqdl****', 'title' => ''],
+ ],
+ [
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
+ ],
+ [
+ 'name' => 'name',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The gateway name for exact match query.', 'type' => 'string', 'required' => false, 'example' => 'itemcenter-gateway', 'title' => ''],
+ ],
+ [
+ 'name' => 'keyword',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The keyword for full match search. Case-insensitive.', 'type' => 'string', 'required' => false, 'example' => 'dev', 'title' => ''],
+ ],
+ [
+ 'name' => 'gatewayType',
+ 'in' => 'query',
'schema' => [
- 'description' => 'Policy ID.',
+ 'description' => 'The gateway type.',
+ 'enumValueTitles' => ['AI' => 'AI gateway.', 'API' => 'API gateway.'],
'type' => 'string',
- 'required' => true,
- 'example' => 'p-cq7l5s5bblhtgi6qas***',
+ 'required' => false,
+ 'example' => 'API',
+ 'title' => '',
],
],
[
- 'name' => 'body',
- 'in' => 'body',
+ 'name' => 'resourceGroupId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-aekzq6bzz5uyg2q', 'title' => ''],
+ ],
+ [
+ 'name' => 'tag',
+ 'in' => 'query',
'style' => 'json',
'schema' => [
- 'description' => 'Request body parameters.',
- 'type' => 'object',
- 'properties' => [
- 'description' => [
- 'title' => '描述',
- 'description' => 'Description',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'this is a timeout policy description',
- ],
- 'config' => [
- 'title' => '策略配置',
- 'description' => 'Policy configuration',
- 'type' => 'string',
- 'required' => true,
- 'example' => '{"unitNum":1,"timeUnit":"s","enable":true}',
- ],
- 'name' => [
- 'title' => '策略名称',
- 'description' => 'Policy name',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'celue-timeout-test',
+ 'description' => 'The list of tags.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The tag.',
+ 'type' => 'object',
+ 'properties' => [
+ 'key' => ['description' => 'The tag key.', 'type' => 'string', 'required' => false, 'example' => 'owner', 'title' => ''],
+ 'value' => ['description' => 'The tag value.', 'type' => 'string', 'required' => false, 'example' => 'zhangsan', 'title' => ''],
],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
'required' => false,
+ 'maxItems' => 20,
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
+ 'title' => '',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'description' => 'Request ID.',
- 'type' => 'string',
- 'example' => 'C67DED2B-F19B-5BEC-88C1-D6EB854C***',
- ],
- 'code' => [
- 'description' => 'Response status code.',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'Response message.',
- 'type' => 'string',
- 'example' => 'success',
+ 'requestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '5B626361-070A-56A7-B127-ADAC8F3655DB', 'title' => ''],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The query result of the gateway list.',
+ 'type' => 'object',
+ 'properties' => [
+ 'pageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'pageSize' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'totalSize' => ['description' => 'The total number of gateways.', 'type' => 'integer', 'format' => 'int64', 'example' => '6', 'title' => ''],
+ 'items' => [
+ 'description' => 'The gateway list.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The gateway information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'gatewayId' => ['description' => 'The gateway ID.', 'type' => 'string', 'example' => 'gw-cpv54p5***', 'title' => ''],
+ 'name' => ['description' => 'The gateway name.', 'type' => 'string', 'example' => 'itemcenter-gateway', 'title' => ''],
+ 'chargeType' => [
+ 'description' => 'The billing type. Valid values:'."\n"
+ ."\n"
+ .'- POSTPAY: pay-as-you-go.'."\n"
+ .'- PREPAY: subscription.',
+ 'enumValueTitles' => ['PREPAY' => 'Subscription.', 'POSTPAY' => 'Pay-as-you-go.'],
+ 'type' => 'string',
+ 'example' => 'POSTPAY',
+ 'title' => '',
+ ],
+ 'gatewayType' => [
+ 'description' => 'The gateway type.',
+ 'enumValueTitles' => ['AI' => 'AI gateway.', 'API' => 'API gateway.'],
+ 'type' => 'string',
+ 'example' => 'API',
+ 'title' => '',
+ ],
+ 'status' => [
+ 'description' => 'The gateway status. Valid values:'."\n"
+ .'- Running: The gateway is running.'."\n"
+ .'- Creating: The gateway is being created.'."\n"
+ .'- CreateFailed: The gateway failed to be created.'."\n"
+ .'- Upgrading: The gateway is being upgraded.'."\n"
+ .'- UpgradeFailed: The gateway failed to be upgraded.'."\n"
+ .'- Restarting: The gateway is being restarted.'."\n"
+ .'- RestartFailed: The gateway failed to be restarted.'."\n"
+ .'- Deleting: The gateway is being released.'."\n"
+ .'- DeleteFailed: The gateway failed to be released.',
+ 'enumValueTitles' => ['Restarting' => 'Restarting.', 'Creating' => 'Creating.', 'Upgrading' => 'Upgrading.', 'DeleteFailed' => 'Release failed.', 'Running' => 'Running.', 'RestartFailed' => 'Restart failed.', 'Deleting' => 'Releasing.', 'CreateFailed' => 'Creation failed.', 'UpgradeFailed' => 'Upgrade failed.'],
+ 'type' => 'string',
+ 'example' => 'Running',
+ 'title' => '',
+ ],
+ 'spec' => [
+ 'description' => 'The gateway specification. Valid values:'."\n"
+ .'- apigw.small.x1: small specification.',
+ 'enumValueTitles' => ['apigw.small.x1' => 'apigw.small.x1'],
+ 'type' => 'string',
+ 'example' => 'apigw.small.x1',
+ 'title' => '',
+ ],
+ 'replicas' => ['description' => 'The number of gateway instance nodes.', 'type' => 'string', 'example' => '2', 'title' => ''],
+ 'createTimestamp' => ['description' => 'The creation timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548', 'title' => ''],
+ 'updateTimestamp' => ['description' => 'The update timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548', 'title' => ''],
+ 'expireTimestamp' => ['description' => 'The subscription expiration timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '172086834548', 'title' => ''],
+ 'createFrom' => [
+ 'description' => 'The source from which the gateway was created. Valid values:'."\n"
+ .'- Console: the console.',
+ 'enumValueTitles' => ['Console' => 'Console.'],
+ 'type' => 'string',
+ 'example' => 'Console',
+ 'title' => '',
+ ],
+ 'version' => ['description' => 'The gateway version.', 'type' => 'string', 'example' => '2.0.2', 'title' => ''],
+ 'targetVersion' => ['description' => 'The target version of the gateway. When this value differs from version, a version upgrade can be performed.', 'type' => 'string', 'example' => '2.0.2', 'title' => ''],
+ 'loadBalancers' => [
+ 'description' => 'The list of gateway entry addresses.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The gateway entry address information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'loadBalancerId' => ['description' => 'The load balancing instance ID.', 'type' => 'string', 'example' => 'nlb-xqwioje1c91r***', 'title' => ''],
+ 'addressType' => [
+ 'description' => 'The load balancing address type. Valid values:'."\n"
+ .'- Internet: public network.'."\n"
+ .'- Intranet: private network.',
+ 'enumValueTitles' => ['Intranet' => 'Private network.', 'Internet' => 'Public network.'],
+ 'type' => 'string',
+ 'example' => 'Internet',
+ 'title' => '',
+ ],
+ 'type' => [
+ 'description' => 'The load balancing type of the gateway. Valid values:'."\n"
+ .'- NLB: Network Load Balancer (NLB).'."\n"
+ .'- CLB: Classic Load Balancer (CLB).',
+ 'enumValueTitles' => ['NLB' => 'Network load balancing.', 'CLB' => 'Classic load balancing.'],
+ 'type' => 'string',
+ 'example' => 'NLB',
+ 'title' => '',
+ ],
+ 'status' => [
+ 'description' => 'The load balancing status. Valid values:'."\n"
+ .'- Ready: active.'."\n"
+ .'- NotCreate: no associated instance.',
+ 'enumValueTitles' => ['Ready' => 'Ready', 'NotCreate' => 'NotCreate'],
+ 'type' => 'string',
+ 'example' => 'Ready',
+ 'title' => '',
+ ],
+ 'address' => ['description' => 'The load balancing address.', 'type' => 'string', 'example' => 'nlb-xoh3pghr***.cn-hangzhou.nlb.aliyuncs.com'."\n", 'title' => ''],
+ 'addressIpVersion' => [
+ 'description' => 'The protocol version. Valid values:'."\n"
+ .'- ipv4: IPv4.'."\n"
+ .'- ipv6: IPv6.',
+ 'enumValueTitles' => ['ipv4' => 'ipv4', 'ipv6' => 'ipv6'],
+ 'type' => 'string',
+ 'example' => 'ipv4',
+ 'title' => '',
+ ],
+ 'mode' => [
+ 'description' => 'The load balancing provisioning pattern of the gateway. Valid values:'."\n"
+ .'- Managed: managed by the cloud-native API gateway.',
+ 'enumValueTitles' => ['Managed' => 'Managed'],
+ 'type' => 'string',
+ 'example' => 'Managed',
+ 'title' => '',
+ ],
+ 'gatewayDefault' => ['description' => 'Indicates whether this is the default entry address of the gateway.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'ports' => [
+ 'description' => 'The list of listening ports.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The listening port information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'protocol' => [
+ 'description' => 'The protocol. Valid values:'."\n"
+ .'- TCP.'."\n"
+ .'- UDP.',
+ 'enumValueTitles' => ['TCP' => 'TCP', 'UDP' => 'UDP'],
+ 'type' => 'string',
+ 'example' => 'TCP',
+ 'title' => '',
+ ],
+ 'port' => ['description' => 'The port number.', 'type' => 'integer', 'format' => 'int32', 'example' => '443', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'ipv4Addresses' => [
+ 'description' => 'The list of IPv4 addresses.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The parameter.', 'type' => 'string', 'example' => '["47.100.100.100"]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'ipv6Addresses' => [
+ 'description' => 'The list of IPv6 addresses.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The parameter.', 'type' => 'string', 'example' => '["2408:4000:0:0:0:0:0:1"]', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'securityGroup' => [
+ 'description' => 'The security group information of the gateway.',
+ 'type' => 'object',
+ 'properties' => [
+ 'securityGroupId' => ['description' => 'The security group ID.', 'type' => 'string', 'example' => 'sg-bp1apxihjdbt3***', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'zones' => [
+ 'description' => 'The zone information of the gateway.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The zone information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'zoneId' => ['description' => 'The zone ID.', 'type' => 'string', 'example' => 'cn-hangzhou-i', 'title' => ''],
+ 'vSwitch' => [
+ 'description' => 'The vSwitch.',
+ 'type' => 'object',
+ 'properties' => [
+ 'vSwitchId' => ['description' => 'The vSwitch ID.', 'type' => 'string', 'example' => 'vsw-bp14efvkcfbrt4***', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'vSwitch' => [
+ 'description' => 'The vSwitch information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'vSwitchId' => ['description' => 'The vSwitch ID.', 'type' => 'string', 'example' => 'vsw-bp14efv***', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'vpc' => [
+ 'description' => 'The VPC information of the gateway.',
+ 'type' => 'object',
+ 'properties' => [
+ 'vpcId' => ['description' => 'The VPC ID.', 'type' => 'string', 'example' => 'vpc-uf664ny***', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'resourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-xxxx', 'title' => ''],
+ 'tags' => [
+ 'description' => 'The list of tags.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The tag.',
+ 'type' => 'object',
+ 'properties' => [
+ 'key' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'owner', 'title' => ''],
+ 'value' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'zhangsan', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'subDomainInfos' => [
+ 'description' => 'The list of second-level domain names.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The second-level domain name information.', '$ref' => '#/components/schemas/SubDomainInfo', 'title' => '', 'example' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'legacy' => ['description' => 'Indicates whether the gateway instance was created before the AI gateway feature was released.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'gatewayEdition' => ['title' => '', 'description' => 'The gateway instance edition. Valid values:'."\n"
+ ."\n"
+ .'- Professional: standard instance.'."\n"
+ ."\n"
+ .'- Serverless: Serverless instance.', 'type' => 'string', 'example' => 'Serverless'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"C67DED2B-F19B-5BEC-88C1-D6EB854C***\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'UpdatePolicy',
- 'translator' => 'machine',
- ],
- 'DeletePolicy' => [
- 'summary' => 'Deletes a policy.',
- 'path' => '/v2/policies/{policyId}',
- 'methods' => [
- 'delete',
- ],
- 'schemes' => [
- 'https',
- ],
- 'security' => [
- [
- 'AK' => [],
- ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Query gateway list',
+ 'summary' => 'Queries a list of gateways.',
+ 'changeSet' => [
+ ['createdAt' => '2025-11-25T11:28:51.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2025-09-18T12:49:49.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2025-04-25T08:44:47.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2025-04-24T16:41:34.000Z', 'description' => 'Request parameters changed, Response parameters changed'],
+ ['createdAt' => '2025-01-22T13:46:44.000Z', 'description' => 'Response parameters changed'],
+ ['createdAt' => '2024-12-03T13:33:00.000Z', 'description' => 'Request parameters changed, Response parameters changed'],
+ ['createdAt' => '2024-11-20T08:54:08.000Z', 'description' => 'Request parameters changed, Response parameters changed'],
+ ['createdAt' => '2024-08-06T03:33:59.000Z', 'description' => 'Response parameters changed'],
],
- 'operationType' => 'readAndWrite',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'delete',
- 'riskType' => 'high',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '262551',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayOZOKBY',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListGateways'],
],
],
- 'parameters' => [
+ 'ramActions' => [
[
- 'name' => 'policyId',
- 'in' => 'path',
- 'schema' => [
- 'title' => '策略ID',
- 'description' => 'Policy ID',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'p-cq7l5s5bblhtgi6qas***',
- ],
- ],
- ],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Response Schema',
- 'type' => 'object',
- 'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'ID of the request',
- 'type' => 'string',
- 'example' => '393E2630-DBE7-5221-AB35-9E7406754***',
- ],
- 'code' => [
- 'description' => 'Response status code.',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'Response message.',
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'apig:ListGateways',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/*'],
],
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"393E2630-DBE7-5221-AB35-9E7406754***\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'DeletePolicy',
- 'translator' => 'machine',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"5B626361-070A-56A7-B127-ADAC8F3655DB\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 6,\\n \\"items\\": [\\n {\\n \\"gatewayId\\": \\"gw-cpv54p5***\\",\\n \\"name\\": \\"itemcenter-gateway\\",\\n \\"chargeType\\": \\"POSTPAY\\",\\n \\"gatewayType\\": \\"API\\",\\n \\"status\\": \\"Running\\",\\n \\"spec\\": \\"apigw.small.x1\\",\\n \\"replicas\\": \\"2\\",\\n \\"createTimestamp\\": 1719386834548,\\n \\"updateTimestamp\\": 1719386834548,\\n \\"expireTimestamp\\": 172086834548,\\n \\"createFrom\\": \\"Console\\",\\n \\"version\\": \\"2.0.2\\",\\n \\"targetVersion\\": \\"2.0.2\\",\\n \\"loadBalancers\\": [\\n {\\n \\"loadBalancerId\\": \\"nlb-xqwioje1c91r***\\",\\n \\"addressType\\": \\"Internet\\",\\n \\"type\\": \\"NLB\\",\\n \\"status\\": \\"Ready\\",\\n \\"address\\": \\"nlb-xoh3pghr***.cn-hangzhou.nlb.aliyuncs.com\\\\n\\",\\n \\"addressIpVersion\\": \\"ipv4\\",\\n \\"mode\\": \\"Managed\\",\\n \\"gatewayDefault\\": true,\\n \\"ports\\": [\\n {\\n \\"protocol\\": \\"TCP\\",\\n \\"port\\": 443\\n }\\n ],\\n \\"ipv4Addresses\\": [\\n \\"[\\\\\\"47.100.100.100\\\\\\"]\\"\\n ],\\n \\"ipv6Addresses\\": [\\n \\"[\\\\\\"2408:4000:0:0:0:0:0:1\\\\\\"]\\"\\n ]\\n }\\n ],\\n \\"securityGroup\\": {\\n \\"securityGroupId\\": \\"sg-bp1apxihjdbt3***\\"\\n },\\n \\"zones\\": [\\n {\\n \\"zoneId\\": \\"cn-hangzhou-i\\",\\n \\"vSwitch\\": {\\n \\"vSwitchId\\": \\"vsw-bp14efvkcfbrt4***\\"\\n }\\n }\\n ],\\n \\"vSwitch\\": {\\n \\"vSwitchId\\": \\"vsw-bp14efv***\\"\\n },\\n \\"vpc\\": {\\n \\"vpcId\\": \\"vpc-uf664ny***\\"\\n },\\n \\"resourceGroupId\\": \\"rg-xxxx\\",\\n \\"tags\\": [\\n {\\n \\"key\\": \\"owner\\",\\n \\"value\\": \\"zhangsan\\"\\n }\\n ],\\n \\"subDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cpudb0llhtgl2djvq2sg\\",\\n \\"name\\": \\"abc.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Intranet\\"\\n }\\n ],\\n \\"legacy\\": true,\\n \\"gatewayEdition\\": \\"Serverless\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
],
- 'CreatePolicyAttachment' => [
- 'summary' => 'Creates a policy attachment.',
- 'path' => '/v1/policy-attachments',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'ListHttpApiOperations' => [
+ 'path' => '/v1/http-apis/{httpApiId}/operations',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
- 'riskType' => 'high',
+ 'operationType' => 'list',
+ 'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '262555',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayOZOKBY',
- ],
+ 'abilityTreeCode' => '219808',
+ 'abilityTreeNodes' => ['FEATUREapigateway910B7T'],
],
'parameters' => [
[
- 'name' => 'body',
- 'in' => 'body',
- 'style' => 'json',
+ 'name' => 'httpApiId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The ID of the target HTTP API.', 'type' => 'string', 'required' => true, 'example' => 'api-xxx'],
+ ],
+ [
+ 'name' => 'method',
+ 'in' => 'query',
'schema' => [
- 'description' => 'Request body.',
- 'type' => 'object',
- 'properties' => [
- 'policyId' => [
- 'title' => '策略ID',
- 'description' => 'Policy ID',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'p-cq787etlhtghrptjg***',
- ],
- 'gatewayId' => [
- 'title' => '网关实例ID',
- 'description' => 'Gateway instance ID',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'gw-cq7l5s5lhtgi6qas***',
- ],
- 'environmentId' => [
- 'title' => '环境ID',
- 'description' => 'Environment ID',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'env-cquqsollhtgid***',
- ],
- 'attachResourceId' => [
- 'title' => '挂载资源ID',
- 'description' => 'Attached resource ID',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'api-cu07jj6m1hkokaus***',
- ],
- 'attachResourceType' => [
- 'title' => '挂载资源类型,HttpApi、GatewayRoute、Operation、GatewayService、GatewayServicePort、Gateway、Domain',
- 'description' => 'Attached resource type, such as HttpApi, GatewayRoute, Operation, GatewayService, GatewayServicePort, Gateway, Domain',
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => false,
- 'example' => 'HttpApi',
- 'enum' => [
- 'Domain',
- 'Gateway',
- 'GatewayRoute',
- 'GatewayService',
- 'HttpApi',
- 'Operation',
- 'Route',
- 'Service',
- 'ServicePort',
- 'LLMApi',
- ],
- ],
- ],
+ 'title' => '',
+ 'description' => 'Lists API operations by HTTP method.',
+ 'enumValueTitles' => ['TRACE' => 'TRACE', 'HEAD' => 'HEAD', 'DELETE' => 'DELETE', 'POST' => 'POST', 'GET' => 'GET', 'CONNECT' => 'CONNECT', 'OPTIONS' => 'OPTIONS', 'PUT' => 'PUT', 'PATCH' => 'PATCH'],
+ 'type' => 'string',
'required' => false,
+ 'example' => 'GET',
],
],
+ [
+ 'name' => 'pathLike',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'Searches for API operations by path prefix match.', 'type' => 'string', 'required' => false, 'example' => '/v1'],
+ ],
+ [
+ 'name' => 'nameLike',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'Searches for API operations by name prefix.', 'type' => 'string', 'required' => false, 'example' => 'GetUser'],
+ ],
+ [
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The page number to return. Pages start from 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The number of entries per page. Valid values: 1 to 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'],
+ ],
+ [
+ 'name' => 'name',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'Searches for API operations by exact name match.', 'type' => 'string', 'required' => false, 'example' => 'getUserInfo'],
+ ],
+ [
+ 'name' => 'withConsumerInEnvironmentId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The environment ID. When specified, the response includes the authorization rule list of the specified consumer under the specified environment for each API operation. You must also specify the withConsumerInfoById parameter.', 'type' => 'string', 'required' => false, 'example' => 'env-xxx', 'title' => ''],
+ ],
+ [
+ 'name' => 'withConsumerInfoById',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The consumer ID. When specified, the response includes the authorization rule list of the specified consumer under the specified environment for each API operation. You must also specify the withConsumerInEnvironmentId parameter.', 'type' => 'string', 'required' => false, 'example' => 'cs-xxx', 'title' => ''],
+ ],
+ [
+ 'name' => 'consumerAuthorizationRuleId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The consumer authorization rule ID used to filter the API operation list. The response includes only authorized API operations.', 'type' => 'string', 'required' => false, 'example' => 'cas-xxx', 'title' => ''],
+ ],
+ [
+ 'name' => 'withPluginAttachmentByPluginId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The plug-in ID used to retrieve plug-in publishing information.', 'type' => 'string', 'required' => false, 'example' => 'pl-xxx', 'title' => ''],
+ ],
+ [
+ 'name' => 'forDeploy',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Specifies whether the request is for a deployment scenario.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The gateway ID used to filter results.', 'type' => 'string', 'required' => false, 'example' => 'gw-001', 'title' => ''],
+ ],
+ [
+ 'name' => 'enableAuth',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Specifies whether to filter by authentication enablement status.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Response schema',
+ 'title' => '',
+ 'description' => 'The response.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'ID of the request',
- 'type' => 'string',
- 'example' => '585657D2-1C20-5B8A-AF17-D727C64***',
- ],
- 'code' => [
- 'description' => 'Response code.',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'Response message.',
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '585657D2-1C20-5B8A-AF17-D727C6490BE4'],
+ 'code' => ['title' => '', 'description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok'],
+ 'message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'success'],
'data' => [
- 'description' => 'Response data.',
+ 'title' => '',
+ 'description' => 'The list of API operations.',
'type' => 'object',
'properties' => [
- 'policyAttachmentId' => [
- 'title' => '策略挂载ID',
- 'description' => 'Policy Mount ID',
- 'type' => 'string',
- 'example' => 'pr-cqooju5lhtgquuj6***',
+ 'pageNumber' => ['title' => '', 'description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'],
+ 'pageSize' => ['title' => '', 'description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '10'],
+ 'totalSize' => ['title' => '', 'description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '10'],
+ 'items' => [
+ 'title' => '',
+ 'description' => 'The list of API operations.',
+ 'type' => 'array',
+ 'items' => ['title' => '', 'description' => 'The API operation information.', '$ref' => '#/components/schemas/HttpApiOperationInfo', 'example' => ''],
+ 'example' => '',
],
],
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C64***\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"policyAttachmentId\\": \\"pr-cqooju5lhtgquuj6***\\"\\n }\\n}","type":"json"}]',
- 'title' => 'CreatePolicyAttachment',
- 'translator' => 'machine',
- ],
- 'GetPolicyAttachment' => [
- 'summary' => 'Queries a policy attachment.',
- 'path' => '/v1/policy-attachments/{policyAttachmentId}',
- 'methods' => [
- 'get',
+ 'title' => 'Retrieve API operation list',
+ 'summary' => 'Retrieves a list of API operations.',
+ 'changeSet' => [
+ ['createdAt' => '2025-08-22T05:38:39.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-11-28T12:56:58.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-10-24T05:48:18.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-08-05T11:39:48.000Z', 'description' => 'Request parameters changed'],
],
- 'schemes' => [
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHttpApiOperations'],
+ ],
],
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'apig:ListHttpApiOperations',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C6490BE4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 10,\\n \\"items\\": [\\n {\\n \\"operationId\\": \\"op-xxx\\",\\n \\"method\\": \\"GET\\",\\n \\"name\\": \\"GetUserInfo\\",\\n \\"path\\": \\"/user/123\\",\\n \\"description\\": \\"获取用户信息\\",\\n \\"response\\": {\\n \\"contentType\\": \\"application/json\\",\\n \\"items\\": [\\n {\\n \\"code\\": 200,\\n \\"example\\": \\"{\\\\\\"result\\\\\\": \\\\\\"ok\\\\\\"}\\",\\n \\"description\\": \\"正常接口响应\\",\\n \\"jsonSchema\\": \\"{\\\\n \\\\\\"type\\\\\\": \\\\\\"object\\\\\\",\\\\n \\\\\\"required\\\\\\": [\\\\n \\\\\\"result\\\\\\"\\\\n ],\\\\n \\\\\\"properties\\\\\\": {\\\\n \\\\\\"result\\\\\\": {\\\\n \\\\\\"type\\\\\\": \\\\\\"string\\\\\\",\\\\n \\\\\\"description\\\\\\": \\\\\\"操作结果,\'ok\' 表示成功\\\\\\"\\\\n }\\\\n }\\\\n}\\"\\n }\\n ]\\n },\\n \\"request\\": {\\n \\"headerParameters\\": [\\n {\\n \\"name\\": \\"userId\\",\\n \\"required\\": true,\\n \\"type\\": \\"String\\",\\n \\"defaultValue\\": \\"123\\",\\n \\"exampleValue\\": \\"123\\",\\n \\"description\\": \\"用户ID\\"\\n }\\n ],\\n \\"queryParameters\\": [\\n {\\n \\"name\\": \\"userId\\",\\n \\"required\\": true,\\n \\"type\\": \\"String\\",\\n \\"defaultValue\\": \\"123\\",\\n \\"exampleValue\\": \\"123\\",\\n \\"description\\": \\"用户ID\\"\\n }\\n ],\\n \\"pathParameters\\": [\\n {\\n \\"name\\": \\"userId\\",\\n \\"required\\": true,\\n \\"type\\": \\"String\\",\\n \\"defaultValue\\": \\"123\\",\\n \\"exampleValue\\": \\"123\\",\\n \\"description\\": \\"用户ID\\"\\n }\\n ],\\n \\"body\\": {\\n \\"description\\": \\"body参数描述\\",\\n \\"example\\": \\"{\\\\\\"result\\\\\\":\\\\\\"ok\\\\\\"}\\",\\n \\"contentType\\": \\"application/json\\",\\n \\"jsonSchema\\": \\"{\\\\n \\\\\\"type\\\\\\": \\\\\\"object\\\\\\",\\\\n \\\\\\"required\\\\\\": [\\\\n \\\\\\"result\\\\\\"\\\\n ],\\\\n \\\\\\"properties\\\\\\": {\\\\n \\\\\\"result\\\\\\": {\\\\n \\\\\\"type\\\\\\": \\\\\\"string\\\\\\",\\\\n \\\\\\"description\\\\\\": \\\\\\"操作结果,\'ok\' 表示成功\\\\\\"\\\\n }\\\\n }\\\\n}\\\\n\\"\\n }\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"Mock测试\\"\\n },\\n \\"createTimestamp\\": 1719386834548,\\n \\"enableAuth\\": true,\\n \\"authConfig\\": {\\n \\"authType\\": \\"Jwt\\",\\n \\"authMode\\": \\"NoAuth\\"\\n },\\n \\"status\\": \\"Deployed\\",\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"Mock测试\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"envDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"INQUIRY\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 80,\\n \\"protocol\\": \\"HTTP\\",\\n \\"gatewayServiceId\\": \\"gw-svc-abc123\\",\\n \\"name\\": \\"Qwen-Max-Service\\",\\n \\"version\\": \\"V2\\",\\n \\"multiServiceRouteStrategy\\": \\"ByWeight\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"LeastBusy\\",\\n \\"rateLimit\\": 0.8,\\n \\"queueSize\\": 100\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {}\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cshee6dlhtgk******\\",\\n \\"name\\": \\"hello-server.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"envDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-env-xxx\\",\\n \\"name\\": \\"api.example.com\\",\\n \\"protocol\\": \\"HTTPS\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-csmn42um******\\",\\n \\"name\\": \\"test\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Intranet\\"\\n }\\n ],\\n \\"builtinRouteNames\\": [\\n \\"[\\\\\\"chat\\\\\\",\\\\\\"completions\\\\\\"]\\"\\n ]\\n }\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
+ ],
+ ],
+ 'ListHttpApiRoutes' => [
+ 'summary' => 'Queries the route list of an HTTP API.',
+ 'path' => '/v1/http-apis/{httpApiId}/routes',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'get',
+ 'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '262557',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayOZOKBY',
- ],
+ 'abilityTreeCode' => '237771',
+ 'abilityTreeNodes' => ['FEATUREapigateway910B7T'],
],
'parameters' => [
[
- 'name' => 'policyAttachmentId',
+ 'name' => 'httpApiId',
'in' => 'path',
+ 'schema' => ['description' => 'HTTP API ID。', 'type' => 'string', 'required' => false, 'example' => 'api-cr68g1dlhtgm31f***', 'title' => ''],
+ ],
+ [
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number, starting from 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page size. Valid values: 1 to 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
+ ],
+ [
+ 'name' => 'environmentId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The environment ID.', 'type' => 'string', 'required' => false, 'example' => 'env-cpqnr6tlhtgubc***', 'title' => ''],
+ ],
+ [
+ 'name' => 'deployStatuses',
+ 'in' => 'query',
'schema' => [
- 'title' => '策略挂载ID',
- 'description' => 'Policy Attachment ID',
+ 'description' => 'The deployment status of the route.',
+ 'enumValueTitles' => ['Deploying' => 'deploying.', 'DeployedWithChanges' => 'deployed with changes.', 'Undeploying' => 'undeploying.', 'NotDeployed' => 'not deployed.', 'Deployed' => 'deployed.', 'UndeployFailed' => 'undeploy failed.', 'DeployFailed' => 'deploy failed.'],
'type' => 'string',
- 'required' => true,
- 'example' => 'pr-ctd4j9mmahko5fb4***',
+ 'required' => false,
+ 'example' => 'NotDeployed',
+ 'title' => '',
],
],
+ [
+ 'name' => 'name',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The route name.', 'type' => 'string', 'required' => false, 'example' => 'itemcenter-gateway', 'title' => ''],
+ ],
+ [
+ 'name' => 'nameLike',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Fuzzy match by route name.', 'type' => 'string', 'required' => false, 'example' => 'item', 'title' => ''],
+ ],
+ [
+ 'name' => 'pathLike',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Fuzzy match by route path.', 'type' => 'string', 'required' => false, 'example' => '/v1', 'title' => ''],
+ ],
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The cloud-native API gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-cpv4sqdl****', 'title' => ''],
+ ],
+ [
+ 'name' => 'withConsumerInfoById',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Includes the authorization rule list of the specified consumer ID for each route in the response.', 'type' => 'string', 'required' => false, 'example' => 'cs-xxx', 'title' => ''],
+ ],
+ [
+ 'name' => 'consumerAuthorizationRuleId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Filters the API list by a specific consumer authorization rule ID. The response only includes authorized APIs.', 'type' => 'string', 'required' => false, 'example' => 'cas-xxx', 'title' => ''],
+ ],
+ [
+ 'name' => 'withAuthPolicyInfo',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Includes consumer authorization information in the response.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ [
+ 'name' => 'withPluginAttachmentByPluginId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Includes the mount information of the specified plug-in ID for each route in the response.', 'type' => 'string', 'required' => false, 'example' => 'pl-xxx', 'title' => ''],
+ ],
+ [
+ 'name' => 'domainId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Filters route information by domain name ID.', 'type' => 'string', 'required' => false, 'example' => 'd-xxx', 'title' => ''],
+ ],
+ [
+ 'name' => 'forDeploy',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Specifies whether the request is for a deployment scenario.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ [
+ 'name' => 'backendServiceName',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The backend service name. You can use this name to filter routes.', 'type' => 'string', 'example' => 'test-svc', 'required' => false],
+ ],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Response Schema',
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'ID of the request',
- 'type' => 'string',
- 'example' => '2C3B9A12-3868-5EB9-fBEA-F99E03DD1***',
- ],
- 'code' => [
- 'description' => 'Response code.',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'message' => [
- 'description' => 'Response message.',
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CBEEB8C1-108E-50F0-9BEA-DED79553C309'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'Response data.',
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'policyAttachmentId' => [
- 'title' => '策略挂载ID',
- 'description' => 'Policy Attachment ID',
- 'type' => 'string',
- 'example' => 'pr-cqoojualhtgquuj***',
- ],
- 'policyId' => [
- 'title' => '策略ID',
- 'description' => 'Policy ID',
- 'type' => 'string',
- 'example' => 'p-cq7l5s5bblhtgi6qas***'."\n",
- ],
- 'attachResourceId' => [
- 'title' => '挂载资源ID',
- 'description' => 'Attached Resource ID',
- 'type' => 'string',
- 'example' => 'op-csbkd9llhtgqhqua***',
- ],
- 'attachResourceType' => [
- 'title' => '挂载资源类型,HttpApi、GatewayRoute、Operation、GatewayService、GatewayServicePort、Gateway、Domain',
- 'description' => 'Attached resource type, HttpApi, GatewayRoute, Operation, GatewayService, GatewayServicePort, Gateway, Domain',
- 'type' => 'string',
- 'example' => 'Operation',
- ],
- 'environmentId' => [
- 'title' => '环境ID',
- 'description' => 'Environment ID',
- 'type' => 'string',
- 'example' => 'env-cq7l5s5lhtgi6qa***',
- ],
- 'gatewayId' => [
- 'title' => '网关实例ID',
- 'description' => 'Gateway Instance ID',
- 'type' => 'string',
- 'example' => 'gw-cq2vundlhtg***',
- ],
- 'config' => [
- 'title' => '挂载策略配置',
- 'description' => 'Policy attachment configuration',
- 'type' => 'string',
- 'example' => '{"unitNum":1,"timeUnit":"s","enable":true}',
+ 'pageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'pageSize' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''],
+ 'totalSize' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '9', 'title' => ''],
+ 'items' => [
+ 'description' => 'The route list.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The route information.', '$ref' => '#/components/schemas/HttpRoute', 'title' => '', 'example' => ''],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"2C3B9A12-3868-5EB9-fBEA-F99E03DD1***\\",\\n \\"code\\": \\"200\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"policyAttachmentId\\": \\"pr-cqoojualhtgquuj***\\",\\n \\"policyId\\": \\"p-cq7l5s5bblhtgi6qas***\\\\n\\",\\n \\"attachResourceId\\": \\"op-csbkd9llhtgqhqua***\\",\\n \\"attachResourceType\\": \\"Operation\\",\\n \\"environmentId\\": \\"env-cq7l5s5lhtgi6qa***\\",\\n \\"gatewayId\\": \\"gw-cq2vundlhtg***\\",\\n \\"config\\": \\"{\\\\\\"unitNum\\\\\\":1,\\\\\\"timeUnit\\\\\\":\\\\\\"s\\\\\\",\\\\\\"enable\\\\\\":true}\\"\\n }\\n}","type":"json"}]',
- 'title' => 'GetPolicyAttachment',
- 'translator' => 'machine',
- ],
- 'DeletePolicyAttachment' => [
- 'summary' => 'Deletes a policy attachment.',
- 'path' => '/v1/policy-attachments/{policyAttachmentId}',
- 'methods' => [
- 'delete',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CBEEB8C1-108E-50F0-9BEA-DED79553C309\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 20,\\n \\"totalSize\\": 9,\\n \\"items\\": [\\n {\\n \\"routeId\\": \\"hr-crf5l7tlhtgp91t***\\",\\n \\"name\\": \\"itemcenter-pre-route\\",\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"description\\": \\"商品中心预发路由\\",\\n \\"match\\": {\\n \\"ignoreUriCase\\": true,\\n \\"path\\": {\\n \\"type\\": \\"Prefix\\",\\n \\"value\\": \\"/user\\"\\n },\\n \\"headers\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"dev\\",\\n \\"value\\": \\"true\\"\\n }\\n ],\\n \\"methods\\": [\\n \\"GET\\"\\n ],\\n \\"queryParams\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"age\\",\\n \\"value\\": \\"17\\"\\n }\\n ]\\n },\\n \\"backend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"env-crhq1u5lhtgju***\\",\\n \\"name\\": \\"itemcenter-pre\\",\\n \\"alias\\": \\"商品中心预发环境\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cqoohqtlh***\\",\\n \\"name\\": \\"itemcenter-gateway\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-cqu19hdlhtgjuv4***\\",\\n \\"name\\": \\"env-crmic3llht***-cn-hangzhou-vpc.alicloudapi.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n },\\n \\"createTimestamp\\": 1726649310593,\\n \\"updateTimestamp\\": 1726819895636,\\n \\"mcpServerInfo\\": {\\n \\"importInstanceId\\": \\"import-001\\",\\n \\"importNamespace\\": \\"default\\",\\n \\"importMcpServerId\\": \\"mcp-002\\",\\n \\"createFromType\\": \\"Nacos\\",\\n \\"mcpServerConfig\\": \\"{\\\\\\\\\\\\\\"config\\\\\\\\\\\\\\":{}}\\",\\n \\"mcpRouteConfig\\": {\\n \\"protocol\\": \\"SSE\\",\\n \\"exposedUriPath\\": \\"/mcp\\"\\n }\\n },\\n \\"domainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cr3v7dllhtgi9s***\\",\\n \\"name\\": \\"itemcenter.dev\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"gatewayStatus\\": {\\n \\"key\\": \\"Running\\"\\n },\\n \\"builtin\\": \\"true\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => 'Query route list',
+ 'changeSet' => [
+ ['createdAt' => '2026-05-14T01:54:21.000Z', 'description' => 'Request parameters changed'],
],
- 'schemes' => [
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHttpApiRoutes'],
+ ],
],
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'apig:ListHttpApiRoutes',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'ListHttpApis' => [
+ 'path' => '/v1/http-apis',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'delete',
- 'riskType' => 'high',
+ 'operationType' => 'list',
+ 'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '262556',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayOZOKBY',
- ],
+ 'abilityTreeCode' => '219000',
+ 'abilityTreeNodes' => ['FEATUREapigateway910B7T'],
+ 'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'policyAttachmentId',
- 'in' => 'path',
+ 'name' => 'keyword',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The search keyword. Supports fuzzy match by API name or exact search by API ID.', 'type' => 'string', 'required' => false, 'example' => 'test-'],
+ ],
+ [
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The page number, starting from 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The number of entries per page. Valid values: 1 to 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'],
+ ],
+ [
+ 'name' => 'name',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The exact name to search for.', 'type' => 'string', 'required' => false, 'example' => 'login'],
+ ],
+ [
+ 'name' => 'types',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The type of the HTTP API. You can specify multiple types separated by commas (,). Valid values:'."\n"
+ .'- Http'."\n"
+ .'- Rest'."\n"
+ .'- WebSocket'."\n"
+ .'- HttpIngress', 'type' => 'string', 'required' => false, 'example' => 'Http,Rest', 'title' => ''],
+ ],
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The ID of the cloud-native API gateway.', 'type' => 'string', 'required' => false, 'example' => 'gw-cq2avtllh****', 'title' => ''],
+ ],
+ [
+ 'name' => 'withAuthPolicyInEnvironmentId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The environment ID. If specified, the response includes consumer authentication policy information for each API in the specified environment.', 'type' => 'string', 'required' => false, 'example' => 'env-xxx', 'title' => ''],
+ ],
+ [
+ 'name' => 'withConsumerInfoById',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The consumer ID. If specified, the response includes the authorization rule list for the specified consumer for each API.', 'type' => 'string', 'required' => false, 'example' => 'cs-xxx', 'title' => ''],
+ ],
+ [
+ 'name' => 'withEnvironmentInfo',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The environment context.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ [
+ 'name' => 'withPluginAttachmentByPluginId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The plug-in ID. If specified, the response includes the plug-in publishing information for the specified plug-in.', 'type' => 'string', 'required' => false, 'example' => 'pl-ct9qn3um1hktue8dqol0', 'title' => ''],
+ ],
+ [
+ 'name' => 'resourceGroupId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-ahr5uil8raz0rq3b', 'title' => ''],
+ ],
+ [
+ 'name' => 'withEnvironmentInfoById',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The environment ID.', 'type' => 'string', 'required' => false, 'example' => 'env-ctovu5mm1hksb4q8ln40', 'title' => ''],
+ ],
+ [
+ 'name' => 'withAuthPolicyList',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Specifies whether authentication policies are enabled.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ [
+ 'name' => 'withIngressInfo',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Specifies whether to include ingress information.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
+ ],
+ [
+ 'name' => 'withPolicyConfigs',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Specifies whether to include policy information.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
+ ],
+ [
+ 'name' => 'withAPIsPublishedToEnvironment',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Specifies whether to return information about APIs published to the specified environment.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ [
+ 'name' => 'gatewayType',
+ 'in' => 'query',
'schema' => [
- 'title' => '策略挂载ID',
- 'description' => 'Policy Attachment ID',
+ 'description' => 'The gateway type filter. Valid values: **AI** and **API**.',
+ 'enumValueTitles' => ['AI' => 'AI', 'API' => 'API'],
'type' => 'string',
- 'required' => true,
- 'example' => 'pr-ctd4j9mmahko5fb4***',
+ 'required' => false,
+ 'example' => 'API',
+ 'title' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
+ 'title' => '',
+ 'description' => 'The response body.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'ID of the request',
- 'type' => 'string',
- 'example' => 'CE857A85-251D-5018-8103-A38957D71***',
- ],
- 'code' => [
- 'description' => 'Response status code.',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'message' => [
- 'description' => 'Response message.',
- 'type' => 'string',
- 'example' => 'success',
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '585657D2-1C20-5B8A-AF17-D727C6490BE4'],
+ 'code' => ['title' => '', 'description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok'],
+ 'message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'success'],
+ 'data' => [
+ 'title' => '',
+ 'description' => 'The API list.',
+ 'type' => 'object',
+ 'properties' => [
+ 'pageNumber' => ['title' => '', 'description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'],
+ 'pageSize' => ['title' => '', 'description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10'],
+ 'totalSize' => ['title' => '', 'description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '10'],
+ 'items' => [
+ 'title' => '',
+ 'description' => 'The API information.',
+ 'type' => 'array',
+ 'items' => ['title' => '', 'description' => 'The API information grouped by API name.', '$ref' => '#/components/schemas/HttpApiInfoByName', 'example' => ''],
+ 'example' => '',
+ ],
+ ],
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CE857A85-251D-5018-8103-A38957D71***\\",\\n \\"code\\": \\"200\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'DeletePolicyAttachment',
- 'translator' => 'machine',
- ],
- 'ListPlugins' => [
- 'summary' => 'Queries plug-ins.',
- 'path' => '/v1/plugins',
- 'methods' => [
- 'get',
+ 'title' => 'Retrieve HTTP API list',
+ 'summary' => 'Retrieves a list of HTTP APIs.',
+ 'changeSet' => [
+ ['createdAt' => '2025-04-24T16:41:33.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-03-31T08:14:19.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-12-26T11:51:24.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-11-28T12:56:58.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-11-20T04:02:26.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-11-18T13:36:05.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-10-24T05:48:18.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-09-11T08:21:12.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-09-06T08:03:00.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-08-05T11:39:48.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-07-26T14:58:54.000Z', 'description' => 'Request parameters changed'],
],
- 'schemes' => [
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHttpApis'],
+ ],
],
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'apig:ListHttpApis',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/*'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C6490BE4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 10,\\n \\"items\\": [\\n {\\n \\"name\\": \\"test-api\\",\\n \\"versionEnabled\\": true,\\n \\"versionedHttpApis\\": [\\n {\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"basePath\\": \\"/v1\\",\\n \\"description\\": \\"测试专用API\\",\\n \\"versionInfo\\": {\\n \\"enable\\": true,\\n \\"scheme\\": \\"Query\\",\\n \\"headerName\\": \\"my-version\\",\\n \\"queryName\\": \\"myVersion\\",\\n \\"version\\": \\"v1\\"\\n },\\n \\"ingressInfo\\": {\\n \\"sourceId\\": \\"src-xxx\\",\\n \\"ingressClass\\": \\"mse\\",\\n \\"watchNamespace\\": \\"default\\",\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"env-xxx\\"\\n },\\n \\"k8sClusterInfo\\": {\\n \\"clusterId\\": \\"ca435c77cba1547cca9311957bcxxxxxx\\"\\n },\\n \\"overrideIngressIp\\": true\\n },\\n \\"type\\": \\"Rest\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"enableAuth\\": false,\\n \\"authConfig\\": {\\n \\"authType\\": \\"Jwt\\",\\n \\"authMode\\": \\"NoAuth\\"\\n },\\n \\"gatewayId\\": \\"gw-cpv4sqdl****\\",\\n \\"modelCategory\\": \\"Text\\",\\n \\"protocols\\": [\\n \\"HTTP\\"\\n ],\\n \\"environments\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"backendType\\": \\"Service\\",\\n \\"serviceConfigs\\": [\\n {\\n \\"gatewayServiceId\\": \\"gs-xxx\\",\\n \\"name\\": \\"demo-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": \\"8080\\",\\n \\"weight\\": 100,\\n \\"version\\": \\"v1\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"serviceId\\": \\"svc-xxx\\"\\n }\\n ],\\n \\"customDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"test\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n }\\n ],\\n \\"aiProtocols\\": [\\n \\"OpenAI/v1\\"\\n ],\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"Mock测试\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"envDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"INQUIRY\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 80,\\n \\"protocol\\": \\"HTTP\\",\\n \\"gatewayServiceId\\": \\"gw-svc-abc123\\",\\n \\"name\\": \\"Qwen-Max-Service\\",\\n \\"version\\": \\"V2\\",\\n \\"multiServiceRouteStrategy\\": \\"ByWeight\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"LeastBusy\\",\\n \\"rateLimit\\": 0.8,\\n \\"queueSize\\": 100\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {}\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cshee6dlhtgk******\\",\\n \\"name\\": \\"hello-server.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"envDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-env-xxx\\",\\n \\"name\\": \\"api.example.com\\",\\n \\"protocol\\": \\"HTTPS\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-csmn42um******\\",\\n \\"name\\": \\"test\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Intranet\\"\\n }\\n ],\\n \\"builtinRouteNames\\": [\\n \\"[\\\\\\"chat\\\\\\",\\\\\\"completions\\\\\\"]\\"\\n ]\\n }\\n ],\\n \\"deployCntMap\\": {\\n \\"key\\": {\\n \\"deployedCnt\\": 3,\\n \\"cnt\\": 0\\n }\\n },\\n \\"agentProtocols\\": [\\n \\"DashScope\\"\\n ]\\n }\\n ],\\n \\"type\\": \\"Http\\",\\n \\"GatewayId\\": \\"gw-xx\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
+ ],
+ ],
+ 'ListMcpServers' => [
+ 'summary' => 'Retrieves a list of MCP servers.',
+ 'path' => '/v1/mcp-servers',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '231543',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway216K2A',
- 'FEATUREapigateway2AMEZG',
- 'FEATUREapigateway3F24ZP',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '281128',
+ 'abilityTreeNodes' => ['FEATUREapigatewayMD7H1W'],
],
'parameters' => [
[
'name' => 'gatewayId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The gateway instance ID for filtering.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-csrhgn6m1hkt65qbxxgg',
- ],
- ],
- [
- 'name' => 'pluginClassId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The plug-in type ID for filtering.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'pls-dn82a9djd8z****',
- ],
- ],
- [
- 'name' => 'pageNumber',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The page number to return. Pages start from 1. Default value: 1.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => true, 'example' => 'gw-co370icmjeu****', 'title' => ''],
],
[
- 'name' => 'pageSize',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries per page. Default value: 10.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
- ],
- [
- 'name' => 'pluginClassName',
+ 'name' => 'nameLike',
'in' => 'query',
- 'schema' => [
- 'description' => 'The plug-in type name for filtering.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'key-auth',
- ],
+ 'schema' => ['description' => 'The fuzzy match keyword for searching MCP servers by API name.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''],
],
[
- 'name' => 'withAttachmentInfo',
+ 'name' => 'type',
'in' => 'query',
- 'schema' => [
- 'description' => 'Specifies whether the returned results should include plug-in attachment information corresponding to the attachResourceId.',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => 'The MCP server type.', 'type' => 'string', 'required' => false, 'example' => 'RealMCP', 'title' => ''],
],
[
- 'name' => 'attachResourceId',
+ 'name' => 'pageNumber',
'in' => 'query',
- 'schema' => [
- 'description' => 'The resource attachment ID.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'api-cuip2pum1hksng6oni3g',
- ],
+ 'schema' => ['description' => 'The page number, starting from 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1', 'title' => ''],
],
[
- 'name' => 'attachResourceType',
+ 'name' => 'pageSize',
'in' => 'query',
- 'schema' => [
- 'description' => 'The resource attachment type.'."\n"
- ."\n"
- .'- HttpApi: HttpApi.'."\n"
- .'- Operation: Operation of HttpApi.'."\n"
- .'- GatewayRoute: Gateway route.'."\n"
- .'- GatewayService: Gateway service.'."\n"
- .'- GatewayServicePort: Gateway service port.'."\n"
- .'- Domain: Gateway domain.'."\n"
- .'- Gateway: Gateway.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'HttpApi',
- ],
+ 'schema' => ['description' => 'The number of entries per page. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '10', 'title' => ''],
],
[
- 'name' => 'gatewayType',
+ 'name' => 'createFromTypes',
'in' => 'query',
- 'schema' => [
- 'description' => 'The instance type. Valid values: **AI** and **API**.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'AI',
- ],
+ 'schema' => ['description' => 'The creation source type.', 'type' => 'string', 'required' => false, 'example' => 'ApiGatewayHttpToMCP', 'title' => ''],
],
[
- 'name' => 'includeBuiltinAiGateway',
+ 'name' => 'deployStatuses',
'in' => 'query',
- 'schema' => [
- 'description' => 'Specifies whether to include built-in AI plug-ins in the returned results. Default: false.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => 'The deployment status of the MCP server.', 'type' => 'string', 'required' => false, 'example' => 'Deployed', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
+ 'title' => '',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => '168BA42D-F822-569D-A67F-FC59E6ABC2B1',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '585657D2-1C20-5B8A-AF17-D727C6490BE4'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'The response payload.'."\n",
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'pageNumber' => [
- 'description' => 'The page number.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'pageSize' => [
- 'description' => 'The page size.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
- 'totalSize' => [
- 'description' => 'The total number of entries returned.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
+ 'pageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'pageSize' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'totalSize' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '25', 'title' => ''],
'items' => [
- 'description' => 'The list of plug-in information.',
+ 'description' => 'The list of MCP servers.',
'type' => 'array',
'items' => [
- 'description' => 'The plug-in information.',
+ 'description' => 'The service information.',
'type' => 'object',
'properties' => [
- 'pluginId' => [
- 'description' => 'The plug-in ID.',
- 'type' => 'string',
- 'example' => 'pl-cvu6r4um1hko3b3ti0a0',
+ 'mcpServerPath' => ['description' => 'The MCP server access path provided by the gateway.', 'type' => 'string', 'example' => '/mcp-servers/test-mcp', 'title' => ''],
+ 'mcpServerConfig' => ['description' => 'The HTTP-to-MCP configuration.', 'type' => 'string', 'example' => 'HTTP转MCP Config base64值', 'title' => ''],
+ 'match' => ['description' => 'The route match rule.', '$ref' => '#/components/schemas/HttpRouteMatch', 'title' => '', 'example' => ''],
+ 'description' => ['description' => 'The description.', 'type' => 'string', 'example' => '这是xxx的xx项目测试环境', 'title' => ''],
+ 'type' => ['description' => 'The MCP server type.', 'type' => 'string', 'example' => '可选值:RealMCP、AssemblyMCP', 'title' => ''],
+ 'createFromType' => ['description' => 'The creation source type. Valid values:'."\n"
+ ."\n"
+ .'- ApiGatewayHttpToMCP: gateway-managed HTTP-to-MCP conversion.'."\n"
+ .'- ApiGatewayMcpHosting: gateway-managed MCP direct proxy.'."\n"
+ .'- ApiGatewayAssembly: gateway MCP assembly.'."\n"
+ .'- NacosHttpToMCP: gateway-managed Nacos-synced HTTP-to-MCP conversion.'."\n"
+ .'- NacosMcpHosting: gateway-managed Nacos-synced MCP direct proxy.', 'type' => 'string', 'example' => 'ApiGatewayHttpToMCP', 'title' => ''],
+ 'domainIds' => [
+ 'description' => 'The list of domain name IDs.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The list of domain name IDs.', 'type' => 'string', 'example' => 'd-faefqfargz', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
],
- 'gatewayInfo' => [
- 'description' => 'The gateway instance information.',
- 'type' => 'object',
- 'properties' => [
- 'gatewayId' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'example' => 'gw-cq7og15lhtxx6qasrj60',
- ],
- 'name' => [
- 'description' => 'The instance name.'."\n",
- 'type' => 'string',
- 'example' => 'apitest-gw',
+ 'protocol' => ['description' => 'The service protocol.', 'type' => 'string', 'example' => 'HTTP', 'title' => ''],
+ 'environmentId' => ['description' => 'The environment ID.', 'type' => 'string', 'example' => 'env-cq7l5s5lhtgi6qasrdc0', 'title' => ''],
+ 'routeId' => ['description' => 'The route ID associated with the MCP server.', 'type' => 'string', 'example' => 'hr-d11cj86m1hkvop6mp42g', 'title' => ''],
+ 'mcpStatisticsEnable' => ['description' => 'Indicates whether MCP observability is enabled. Default value: false.', 'type' => 'boolean', 'example' => 'false', 'title' => ''],
+ 'name' => ['description' => 'The MCP server name.', 'type' => 'string', 'example' => 'itemcenter-dev-cluster', 'title' => ''],
+ 'exposedUriPath' => ['description' => 'The exposed URI path. This parameter is required when protocol is SSE or StreamableHTTP and type is RealMCP.', 'type' => 'string', 'example' => '/sse', 'title' => ''],
+ 'assembledSources' => [
+ 'description' => 'The list of assembly sources. This parameter is required when type is AssemblyMCP.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list of assembly sources. This parameter is required when type is AssemblyMCP.',
+ 'type' => 'object',
+ 'properties' => [
+ 'mcpServerName' => ['description' => 'The MCP server name.', 'type' => 'string', 'example' => 'test-mcp', 'title' => ''],
+ 'mcpServerId' => ['description' => 'MCP Server ID', 'type' => 'string', 'example' => 'mcp-adfef2334fa', 'title' => ''],
+ 'tools' => [
+ 'description' => 'The list of MCP tools.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The list of MCP tools.', 'type' => 'string', 'example' => 'tool-1', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
- 'pluginClassInfo' => [
- 'description' => 'The plug-in type information.',
+ 'backend' => ['description' => 'The backend service of the route.', '$ref' => '#/components/schemas/Backend', 'title' => '', 'example' => ''],
+ 'mcpServerId' => ['description' => 'MCP Server ID', 'type' => 'string', 'example' => 'mcp-feaff34va', 'title' => ''],
+ 'nacosMcpSyncInfo' => [
+ 'description' => 'The Nacos-synced managed MCP information.',
'type' => 'object',
'properties' => [
- 'version' => [
- 'description' => 'The version.',
- 'type' => 'string',
- 'example' => '2.0.3',
- ],
- 'versionDescription' => [
- 'description' => 'The description of the version.',
- 'type' => 'string',
- 'example' => 'version description',
- ],
- 'executeStage' => [
- 'description' => 'The execution stage.',
- 'type' => 'string',
- 'example' => 'AUTHZ',
- ],
- 'executePriority' => [
- 'description' => 'The execution priority.',
- 'type' => 'string',
- 'example' => '999',
- ],
- 'name' => [
- 'description' => 'The name of the plug-in.',
- 'type' => 'string',
- 'example' => 'key-rate-limit',
- ],
- 'alias' => [
- 'description' => 'The alias.',
- 'type' => 'string',
- 'example' => 'key-based rate limit',
- ],
- 'source' => [
- 'description' => 'The source of the plug-in.',
- 'type' => 'string',
- 'example' => 'HigressOfficial',
- ],
- 'pluginClassId' => [
- 'description' => 'The plug-in type ID.',
- 'type' => 'string',
- 'example' => 'pls-cqebrgh46ppatmpri',
- ],
+ 'importMcpServerId' => ['description' => 'The synced MCP server ID.', 'type' => 'string', 'example' => '同步的MCP Server ID'."\n"
+ ."\n", 'title' => ''],
+ 'importNamespace' => ['description' => 'The Nacos namespace.', 'type' => 'string', 'example' => 'test-ns', 'title' => ''],
+ 'importInstanceId' => ['description' => 'The Nacos instance.', 'type' => 'string', 'example' => 'mse-faefrefxz', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
- 'attachmentInfo' => [
- 'description' => 'The attachment information.',
- 'type' => 'object',
- 'properties' => [
- 'pluginAttachmentId' => [
- 'description' => 'The attachment ID.'."\n",
- 'type' => 'string',
- 'example' => 'pa-ct2irn6m1hkreaen0t40',
- ],
- 'enable' => [
- 'description' => 'Indicates if enabled.',
- 'type' => 'string',
- 'example' => 'false',
- ],
- ],
+ 'gatewayId' => ['description' => 'The gateway instance ID.', 'type' => 'string', 'example' => 'gw-cpv54p5***', 'title' => ''],
+ 'domainInfos' => [
+ 'description' => 'The list of domain name information.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The list of domain name information.', '$ref' => '#/components/schemas/HttpApiDomainInfo', 'title' => '', 'example' => ''],
+ 'title' => '',
+ 'example' => '',
],
+ 'deployStatus' => ['description' => 'The deployment status of the API in the current environment.', 'type' => 'string', 'example' => 'Deployed', 'title' => ''],
+ 'apiId' => ['description' => 'API ID。', 'type' => 'string', 'example' => 'api-xxx', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"168BA42D-F822-569D-A67F-FC59E6ABC2B1\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 10,\\n \\"items\\": [\\n {\\n \\"pluginId\\": \\"pl-cvu6r4um1hko3b3ti0a0\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtxx6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\"\\n },\\n \\"pluginClassInfo\\": {\\n \\"version\\": \\"2.0.3\\",\\n \\"versionDescription\\": \\"版本描述\\",\\n \\"executeStage\\": \\"AUTHZ\\",\\n \\"executePriority\\": \\"999\\",\\n \\"name\\": \\"key-rate-limit\\",\\n \\"alias\\": \\"基于 Key 限流\\",\\n \\"source\\": \\"HigressOfficial\\",\\n \\"pluginClassId\\": \\"pls-cqebrgh46ppatmpri\\"\\n },\\n \\"attachmentInfo\\": {\\n \\"pluginAttachmentId\\": \\"pa-ct2irn6m1hkreaen0t40\\",\\n \\"enable\\": \\"false\\"\\n }\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'ListPlugins',
- ],
- 'CreatePluginAttachment' => [
- 'summary' => 'Attaches a plug-in.',
- 'path' => '/v1/plugin-attachments',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'List MCP servers',
+ 'description' => 'The operation supports creating multiple services.',
+ 'changeSet' => [
+ ['createdAt' => '2025-10-29T07:31:47.000Z', 'description' => 'Response parameters changed'],
],
- 'schemes' => [
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListMcpServers',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C6490BE4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 25,\\n \\"items\\": [\\n {\\n \\"mcpServerPath\\": \\"/mcp-servers/test-mcp\\",\\n \\"mcpServerConfig\\": \\"HTTP转MCP Config base64值\\",\\n \\"match\\": {\\n \\"ignoreUriCase\\": true,\\n \\"path\\": {\\n \\"type\\": \\"Prefix\\",\\n \\"value\\": \\"/user\\"\\n },\\n \\"headers\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"dev\\",\\n \\"value\\": \\"true\\"\\n }\\n ],\\n \\"methods\\": [\\n \\"GET\\"\\n ],\\n \\"queryParams\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"age\\",\\n \\"value\\": \\"17\\"\\n }\\n ]\\n },\\n \\"description\\": \\"这是xxx的xx项目测试环境\\",\\n \\"type\\": \\"可选值:RealMCP、AssemblyMCP\\",\\n \\"createFromType\\": \\"ApiGatewayHttpToMCP\\",\\n \\"domainIds\\": [\\n \\"d-faefqfargz\\"\\n ],\\n \\"protocol\\": \\"HTTP\\",\\n \\"environmentId\\": \\"env-cq7l5s5lhtgi6qasrdc0\\",\\n \\"routeId\\": \\"hr-d11cj86m1hkvop6mp42g\\",\\n \\"mcpStatisticsEnable\\": false,\\n \\"name\\": \\"itemcenter-dev-cluster\\",\\n \\"exposedUriPath\\": \\"/sse\\",\\n \\"assembledSources\\": [\\n {\\n \\"mcpServerName\\": \\"test-mcp\\",\\n \\"mcpServerId\\": \\"mcp-adfef2334fa\\",\\n \\"tools\\": [\\n \\"tool-1\\"\\n ]\\n }\\n ],\\n \\"backend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"mcpServerId\\": \\"mcp-feaff34va\\",\\n \\"nacosMcpSyncInfo\\": {\\n \\"importMcpServerId\\": \\"同步的MCP Server ID\\\\n\\\\n\\",\\n \\"importNamespace\\": \\"test-ns\\",\\n \\"importInstanceId\\": \\"mse-faefrefxz\\"\\n },\\n \\"gatewayId\\": \\"gw-cpv54p5***\\",\\n \\"domainInfos\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"apiId\\": \\"api-xxx\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ ],
+ 'ListPluginAttachments' => [
+ 'path' => '/v1/plugin-attachments',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '231606',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayIRO3QE',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '231615',
+ 'abilityTreeNodes' => ['FEATUREapigateway910B7T'],
],
'parameters' => [
[
- 'name' => 'body',
- 'in' => 'body',
- 'style' => 'json',
+ 'name' => 'attachResourceId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The mount resource ID.', 'type' => 'string', 'required' => false, 'example' => 'hr-cv2h58em1hkg7c6vt43g', 'title' => ''],
+ ],
+ [
+ 'name' => 'attachResourceType',
+ 'in' => 'query',
'schema' => [
- 'description' => 'The request data.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'pluginId' => [
- 'description' => 'The plug-in ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'pl-cvo8udem1hkob1qd67i0',
- ],
- 'pluginConfig' => [
- 'description' => 'The Base64-encoded configurations of the plug-in.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cHJlcGVuZDoKLSByb2xlOiBzeXN0ZW0KICBjb250ZW50OiDor7fkvb/nlKjoi7Hor63lm57nrZTpl67popgKYXBwZW5kOgotIHJvbGU6IHVzZXIKICBjb250ZW50OiDmr4/mrKHlm57nrZTlrozpl67popjvvIzlsJ3or5Xov5vooYzlj43pl64K',
- ],
- 'attachResourceIds' => [
- 'description' => 'The attachment IDs.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The attachment ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'api-xafjieoafpjb',
- ],
- 'required' => false,
- ],
- 'attachResourceType' => [
- 'description' => 'The type of the resource to which the plug-in is attached. Valid values: GatewayRoute, Gateway, GatewayDomain, HttpApi, and Operation.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'HttpApi',
- ],
- 'environmentId' => [
- 'description' => 'The environment ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'env-xxx',
- ],
- 'gatewayId' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cq7l5s5lhtg***',
- ],
- 'enable' => [
- 'description' => 'Specifies whether to enable the plug-in. Default value: false.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
- ],
+ 'description' => 'The plug-in mount point type. This parameter is not yet enabled.',
+ 'enumValueTitles' => ['GatewayDomain' => 'GatewayDomain', 'Gateway' => 'Gateway', 'GatewayRoute' => 'GatewayRoute', 'HttpApi' => 'HttpApi', 'Operation' => 'Operation'],
+ 'type' => 'string',
'required' => false,
+ 'example' => 'GatewayRoute',
+ 'title' => '',
],
],
+ [
+ 'name' => 'environmentId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The environment ID.', 'type' => 'string', 'required' => false, 'example' => 'env-crlnqhtlhtgqflkqislg', 'title' => ''],
+ ],
+ [
+ 'name' => 'pluginId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The plug-in ID.', 'type' => 'string', 'required' => false, 'example' => 'pl-ct8181um1hkiqns9f6e0', 'title' => ''],
+ ],
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-cr79f75lhtgme744084g', 'title' => ''],
+ ],
+ [
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
+ ],
+ [
+ 'name' => 'attachResourceTypes',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The mount point types. Separate multiple types with commas.', 'type' => 'string', 'required' => false, 'example' => 'GatewayRoute', 'title' => ''],
+ ],
+ [
+ 'name' => 'withParentResource',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Specifies whether to return parent resource mounts.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
+ ],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => 'EBCB8485-24F9-54CD-B258-CB15FDB27677',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '9640D776-794A-5077-9184-A247CA4B45C1'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'The returned data.'."\n",
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'pluginAttachmentId' => [
- 'description' => 'The plug-in ID.'."\n",
- 'type' => 'string',
- 'example' => 'pa-cvs7jpmm1hkgihaqv4a0',
+ 'pageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'pageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'totalSize' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'items' => [
+ 'description' => 'The item details.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The result object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'pluginAttachmentId' => ['description' => 'The plug-in mount ID.', 'type' => 'string', 'example' => 'pa-d0j9t5em1hkncrlo51mg', 'title' => ''],
+ 'parentResourceInfo' => ['description' => 'The parent resource information.', '$ref' => '#/components/schemas/ParentResourceInfo', 'title' => '', 'example' => ''],
+ 'resourceInfos' => [
+ 'description' => 'The mount resource information.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The mount resource information.', '$ref' => '#/components/schemas/ResourceInfo', 'title' => '', 'example' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'environmentInfo' => ['description' => 'The environment context.', '$ref' => '#/components/schemas/EnvironmentInfo', 'title' => '', 'example' => ''],
+ 'enable' => ['description' => 'Indicates whether the plug-in mount is enabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ 'pluginId' => ['description' => 'The plug-in ID.', 'type' => 'string', 'example' => 'pl-cvu6r4um1hko3b3ti0a0', 'title' => ''],
+ 'pluginConfig' => ['description' => 'The Base64-encoded content of the original plug-in configuration.', 'type' => 'string', 'example' => 'bGltaXRfYnlfaGVhZGVyOiB4LWFwaS1rZXkKbGltaXRfa2V5czoKLSBrZXk6IGV4YW1wbGUta2V5LWEKICBxdWVyeV9wZXJfc2Vjb25kOiAxMAotIGtleTogZXhhbXBsZS1rZXktYgogIHF1ZXJ5X3Blcl9zZWNvbmQ6IDEK', 'title' => ''],
+ 'pluginClassInfo' => ['description' => 'The plug-in type information.', '$ref' => '#/components/schemas/PluginClassInfo', 'title' => '', 'example' => ''],
+ 'attachResourceType' => ['description' => 'The plug-in mount resource type. Valid values: GatewayRoute, Gateway, GatewayDomain, HttpApi, and Operation.', 'type' => 'string', 'example' => 'GatewayRoute', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"EBCB8485-24F9-54CD-B258-CB15FDB27677\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pluginAttachmentId\\": \\"pa-cvs7jpmm1hkgihaqv4a0\\"\\n }\\n}","type":"json"}]',
- 'title' => 'CreatePluginAttachment',
- ],
- 'GetPluginAttachment' => [
- 'summary' => 'Queries a plug-in attachment.',
- 'path' => '/v1/plugin-attachments/{pluginAttachmentId}',
- 'methods' => [
- 'get',
+ 'title' => 'Retrieve plug-in mount list',
+ 'summary' => 'Retrieves the list of plug-in mounts.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListPluginAttachments'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListPluginAttachments',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"9640D776-794A-5077-9184-A247CA4B45C1\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 10,\\n \\"items\\": [\\n {\\n \\"pluginAttachmentId\\": \\"pa-d0j9t5em1hkncrlo51mg\\",\\n \\"parentResourceInfo\\": {\\n \\"resourceType\\": \\"Gateway\\",\\n \\"apiInfo\\": {\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"basePath\\": \\"/v1\\",\\n \\"description\\": \\"测试专用API\\",\\n \\"versionInfo\\": {\\n \\"enable\\": true,\\n \\"scheme\\": \\"Query\\",\\n \\"headerName\\": \\"my-version\\",\\n \\"queryName\\": \\"myVersion\\",\\n \\"version\\": \\"v1\\"\\n },\\n \\"ingressInfo\\": {\\n \\"sourceId\\": \\"src-xxx\\",\\n \\"ingressClass\\": \\"mse\\",\\n \\"watchNamespace\\": \\"default\\",\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"env-xxx\\"\\n },\\n \\"k8sClusterInfo\\": {\\n \\"clusterId\\": \\"ca435c77cba1547cca9311957bcxxxxxx\\"\\n },\\n \\"overrideIngressIp\\": true\\n },\\n \\"type\\": \\"Rest\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"enableAuth\\": false,\\n \\"authConfig\\": {\\n \\"authType\\": \\"Jwt\\",\\n \\"authMode\\": \\"NoAuth\\"\\n },\\n \\"gatewayId\\": \\"gw-cpv4sqdl****\\",\\n \\"modelCategory\\": \\"Text\\",\\n \\"protocols\\": [\\n \\"HTTP\\"\\n ],\\n \\"environments\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"backendType\\": \\"Service\\",\\n \\"serviceConfigs\\": [\\n {\\n \\"gatewayServiceId\\": \\"gs-xxx\\",\\n \\"name\\": \\"demo-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": \\"8080\\",\\n \\"weight\\": 100,\\n \\"version\\": \\"v1\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"serviceId\\": \\"svc-xxx\\"\\n }\\n ],\\n \\"customDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"test\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n }\\n ],\\n \\"aiProtocols\\": [\\n \\"OpenAI/v1\\"\\n ],\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"Mock测试\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"envDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"INQUIRY\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 80,\\n \\"protocol\\": \\"HTTP\\",\\n \\"gatewayServiceId\\": \\"gw-svc-abc123\\",\\n \\"name\\": \\"Qwen-Max-Service\\",\\n \\"version\\": \\"V2\\",\\n \\"multiServiceRouteStrategy\\": \\"ByWeight\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"LeastBusy\\",\\n \\"rateLimit\\": 0.8,\\n \\"queueSize\\": 100\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {}\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cshee6dlhtgk******\\",\\n \\"name\\": \\"hello-server.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"envDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-env-xxx\\",\\n \\"name\\": \\"api.example.com\\",\\n \\"protocol\\": \\"HTTPS\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-csmn42um******\\",\\n \\"name\\": \\"test\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Intranet\\"\\n }\\n ],\\n \\"builtinRouteNames\\": [\\n \\"[\\\\\\"chat\\\\\\",\\\\\\"completions\\\\\\"]\\"\\n ]\\n }\\n ],\\n \\"deployCntMap\\": {\\n \\"key\\": {\\n \\"deployedCnt\\": 3,\\n \\"cnt\\": 0\\n }\\n },\\n \\"agentProtocols\\": [\\n \\"DashScope\\"\\n ]\\n }\\n },\\n \\"resourceInfos\\": [\\n {\\n \\"resourceType\\": \\"HttpApi\\",\\n \\"resourceId\\": \\"api-1nsu2d****\\",\\n \\"resourceName\\": \\"test1023\\",\\n \\"resourceVersion\\": \\"1.0.0\\"\\n }\\n ],\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"env-cq7l5s5lhtgi6qasrdc0\\",\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"测试环境\\",\\n \\"description\\": \\"这是xxx的xx项目测试环境\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"subDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cpudb0llhtgl2djvq2sg\\",\\n \\"name\\": \\"abc.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Intranet\\"\\n }\\n ],\\n \\"default\\": false,\\n \\"createTimestamp\\": 1721116090326,\\n \\"updateTimestamp\\": 1721116090326,\\n \\"resourceGroupId\\": \\"rg-xxxx\\"\\n },\\n \\"enable\\": true,\\n \\"pluginId\\": \\"pl-cvu6r4um1hko3b3ti0a0\\",\\n \\"pluginConfig\\": \\"bGltaXRfYnlfaGVhZGVyOiB4LWFwaS1rZXkKbGltaXRfa2V5czoKLSBrZXk6IGV4YW1wbGUta2V5LWEKICBxdWVyeV9wZXJfc2Vjb25kOiAxMAotIGtleTogZXhhbXBsZS1rZXktYgogIHF1ZXJ5X3Blcl9zZWNvbmQ6IDEK\\",\\n \\"pluginClassInfo\\": {\\n \\"pluginClassId\\": \\"cls-xxx\\",\\n \\"type\\": \\"AI\\",\\n \\"mode\\": \\"Wasm\\",\\n \\"name\\": \\"ai-security-guard\\",\\n \\"alias\\": \\"AI安全护栏\\",\\n \\"description\\": \\"AI请求内容安全检测插件\\",\\n \\"source\\": \\"HigressOfficial\\",\\n \\"version\\": \\"1.0.0\\",\\n \\"versionDescription\\": \\"初始版本\\",\\n \\"executeStage\\": \\"AUTHN\\",\\n \\"executePriority\\": 100,\\n \\"configExample\\": \\"{\\\\\\"checkRequest\\\\\\":true}\\",\\n \\"imageName\\": \\"higress-registry.tencentcloudcr.com/ai-security-guard\\",\\n \\"wasmLanguage\\": \\"Rust\\",\\n \\"supportedMinGatewayVersion\\": \\"2.1.11\\",\\n \\"wasmUrl\\": \\"https://...\\",\\n \\"innerPlugin\\": false\\n },\\n \\"attachResourceType\\": \\"GatewayRoute\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ ],
+ 'ListPluginClasses' => [
+ 'path' => '/v1/plugin-classes',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'get',
- 'abilityTreeCode' => '253923',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayIRO3QE',
- ],
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '231537',
+ 'abilityTreeNodes' => ['FEATUREapigateway216K2A'],
],
'parameters' => [
[
- 'name' => 'pluginAttachmentId',
- 'in' => 'path',
- 'schema' => [
- 'description' => 'The attachment ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'pa-cvl541em1hkk7n8vq810',
- ],
+ 'name' => 'nameLike',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The plug-in name. Fuzzy match is supported.', 'type' => 'string', 'required' => false, 'example' => 'oauth', 'title' => ''],
+ ],
+ [
+ 'name' => 'aliasLike',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The plug-in alias. Fuzzy match is supported.', 'type' => 'string', 'required' => false, 'example' => 'OAuth2 认证', 'title' => ''],
+ ],
+ [
+ 'name' => 'type',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The plug-in type.', 'type' => 'string', 'required' => false, 'example' => 'Auth', 'title' => ''],
+ ],
+ [
+ 'name' => 'source',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The plug-in source. Valid values:'."\n"
+ .'- HigressOfficial: Higress official.'."\n"
+ .'- HigressCommunity: Higress community.'."\n"
+ .'- Custom: custom.', 'type' => 'string', 'required' => false, 'example' => 'HigressOfficial', 'title' => ''],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
+ ],
+ [
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-d1j8tjum1hkhxxxxxxxx', 'title' => ''],
+ ],
+ [
+ 'name' => 'installed',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Specifies whether the plug-in is installed.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
+ ],
+ [
+ 'name' => 'direction',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The inbound or outbound direction. Valid values:'."\n"
+ .'- OutBound: outbound.'."\n"
+ .'- InBound: inbound.'."\n"
+ .'- Both: both directions.', 'type' => 'string', 'required' => false, 'example' => 'InBound', 'title' => ''],
+ ],
+ [
+ 'name' => 'excludeBuiltinAiProxy',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => ['description' => 'Specifies whether to exclude built-in plug-ins.', 'type' => 'boolean', 'default' => 'false', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ [
+ 'name' => 'gatewayType',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The gateway type filter. Currently, **AI** and **API** gateway types are supported.', 'type' => 'string', 'required' => false, 'example' => 'API', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'The response information.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request'."\n",
- 'type' => 'string',
- 'example' => 'C61E30D3-579A-5B43-994E-31E02EDC9129',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '61EBF577-1601-51E1-B136-9CD6xxxxxxxx'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => '200', 'title' => ''],
+ 'message' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'The response payload.'."\n",
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'pluginAttachmentId' => [
- 'description' => 'The attachment ID.'."\n",
- 'type' => 'string',
- 'example' => 'pa-d05f1tmm1hku195dd8j0',
- ],
- 'parentResourceInfo' => [
- 'description' => 'The information about the parent resource to which the plug-in is attached.'."\n",
- '$ref' => '#/components/schemas/ParentResourceInfo',
- ],
- 'resourceInfos' => [
- 'description' => 'The resource information.'."\n",
+ 'pageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'pageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'totalSize' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'items' => [
+ 'description' => 'The result objects.',
'type' => 'array',
'items' => [
- 'description' => 'The resource details.'."\n",
- '$ref' => '#/components/schemas/ResourceInfo',
+ 'description' => 'The plug-in information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'pluginClassId' => ['description' => 'The plug-in type ID.', 'type' => 'string', 'example' => 'pls-d4ghv6em1hkixxxxxxxx', 'title' => ''],
+ 'name' => ['description' => 'The plug-in name.', 'type' => 'string', 'example' => 'oauth', 'title' => ''],
+ 'alias' => ['description' => 'The plug-in alias.', 'type' => 'string', 'example' => 'OAuth2 认证', 'title' => ''],
+ 'description' => ['description' => 'The plug-in description.', 'type' => 'string', 'example' => '基于 OAuth2 实现身份认证和鉴权。', 'title' => ''],
+ 'version' => ['description' => 'The plug-in version.', 'type' => 'string', 'example' => '1.0.0', 'title' => ''],
+ 'type' => ['description' => 'The plug-in type.', 'type' => 'string', 'example' => 'Auth', 'title' => ''],
+ 'source' => ['description' => 'The plug-in source.', 'type' => 'string', 'example' => 'HigressOfficial', 'title' => ''],
+ 'supportedMinGatewayVersion' => ['description' => 'The minimum gateway version supported by the plug-in.', 'type' => 'string', 'example' => '2.0.0', 'title' => ''],
+ 'publishStatus' => ['description' => 'The publish status.', 'type' => 'string', 'example' => 'Success', 'title' => ''],
+ 'pluginId' => ['description' => 'The plug-in ID.', 'type' => 'string', 'example' => 'pl-cvu6r4um1hkoxxxxxxxx', 'title' => ''],
+ 'installed' => ['description' => 'Indicates whether the plug-in is installed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
- ],
- 'environmentInfo' => [
- 'description' => 'The environment information.'."\n",
- '$ref' => '#/components/schemas/EnvironmentInfo',
- ],
- 'pluginConfig' => [
- 'description' => 'The Base64-encoded configurations of the plug-in.'."\n",
- 'type' => 'string',
- 'example' => 'cHJlcGVuZDoKLSByb2xlOiBzeXN0ZW0KICBjb250ZW50OiDor7fkvb/nlKjoi7Hor63lm57nrZTpl67popgKYXBwZW5kOgotIHJvbGU6IHVzZXIKICBjb250ZW50OiDmr4/mrKHlm57nrZTlrozpl67popjvvIzlsJ3or5Xov5vooYzlj43pl64K',
- ],
- 'enable' => [
- 'description' => 'Indicates whether the plug-in is enabled.'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'pluginId' => [
- 'description' => 'The plug-in ID.'."\n",
- 'type' => 'string',
- 'example' => 'pl-cvo8ub6m1hkvgv03r3k0',
- ],
- 'pluginClassInfo' => [
- 'description' => 'The plug-in type information.'."\n",
- '$ref' => '#/components/schemas/PluginClassInfo',
- ],
- 'gatewayInfo' => [
- 'description' => 'The instance information.'."\n",
- '$ref' => '#/components/schemas/GatewayInfo',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'title' => 'Get plug-in list',
+ 'summary' => 'Retrieves plug-ins.',
+ 'description' => 'The operation supports creating multiple services.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"C61E30D3-579A-5B43-994E-31E02EDC9129\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pluginAttachmentId\\": \\"pa-d05f1tmm1hku195dd8j0\\",\\n \\"parentResourceInfo\\": {\\n \\"resourceType\\": \\"\\",\\n \\"apiInfo\\": {\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"basePath\\": \\"/v1\\",\\n \\"description\\": \\"\\",\\n \\"versionInfo\\": {\\n \\"enable\\": true,\\n \\"scheme\\": \\"Query\\",\\n \\"headerName\\": \\"my-version\\",\\n \\"queryName\\": \\"myVersion\\",\\n \\"version\\": \\"v1\\"\\n },\\n \\"ingressInfo\\": {\\n \\"sourceId\\": \\"\\",\\n \\"ingressClass\\": \\"\\",\\n \\"watchNamespace\\": \\"\\",\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"\\"\\n },\\n \\"k8sClusterInfo\\": {\\n \\"clusterId\\": \\"\\"\\n },\\n \\"overrideIngressIp\\": true\\n },\\n \\"type\\": \\"Rest\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"enabelAuth\\": true,\\n \\"authConfig\\": {\\n \\"authType\\": \\"\\",\\n \\"authMode\\": \\"\\"\\n },\\n \\"gatewayId\\": \\"\\",\\n \\"modelCategory\\": \\"\\",\\n \\"protocols\\": [\\n \\"HTTP\\"\\n ],\\n \\"environments\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"backendType\\": \\"Service\\",\\n \\"serviceConfigs\\": [\\n {\\n \\"gatewayServiceId\\": \\"gs-xxx\\",\\n \\"name\\": \\"demo-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": \\"8080\\",\\n \\"weight\\": 100,\\n \\"version\\": \\"v1\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"serviceId\\": \\"svc-xxx\\"\\n }\\n ],\\n \\"customDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"test\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-xxx\\",\\n \\"name\\": \\"test\\"\\n },\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n }\\n ],\\n \\"aiProtocols\\": [\\n \\"\\"\\n ],\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 0,\\n \\"protocol\\": \\"\\",\\n \\"gatewayServiceId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"version\\": \\"\\",\\n \\"multiServiceRouteStrategy\\": \\"\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"\\",\\n \\"rateLimit\\": 0,\\n \\"queueSize\\": 0\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {\\n \\"type\\": \\"AiFallback\\",\\n \\"enable\\": true,\\n \\"aiFallbackConfig\\": {\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"\\",\\n \\"targetModelName\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiSecurityGuardConfig\\": {\\n \\"serviceAddress\\": \\"\\",\\n \\"checkRequest\\": true,\\n \\"checkResponse\\": true,\\n \\"checkRequestImage\\": true,\\n \\"checkResponseImage\\": true,\\n \\"requestCheckService\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"riskAlertLevel\\": \\"\\",\\n \\"riskConfig\\": [\\n {\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\",\\n \\"consumerRules\\": {\\n \\"pattern\\": \\"\\",\\n \\"matchType\\": \\"\\"\\n }\\n }\\n ],\\n \\"bufferLimit\\": 0,\\n \\"consumerRequestCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"requestCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerResponseCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerRiskLevel\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiTokenRateLimitConfig\\": {\\n \\"rules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"globalRules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"enableGlobalRules\\": true\\n }\\n }\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"deployCntMap\\": {\\n \\"key\\": {\\n \\"deployedCnt\\": 0,\\n \\"Cnt\\": 0\\n }\\n },\\n \\"agentProtocols\\": [\\n \\"\\"\\n ]\\n }\\n },\\n \\"resourceInfos\\": [\\n {\\n \\"resourceType\\": \\"\\",\\n \\"resourceId\\": \\"\\",\\n \\"resourceName\\": \\"\\",\\n \\"resourceVersion\\": \\"\\"\\n }\\n ],\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"alias\\": \\"\\",\\n \\"description\\": \\"\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"subDomainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"\\"\\n }\\n ],\\n \\"default\\": true,\\n \\"createTimestamp\\": 0,\\n \\"updateTimestamp\\": 0,\\n \\"resourceGroupId\\": \\"rg-xxxx\\"\\n },\\n \\"pluginConfig\\": \\"cHJlcGVuZDoKLSByb2xlOiBzeXN0ZW0KICBjb250ZW50OiDor7fkvb/nlKjoi7Hor63lm57nrZTpl67popgKYXBwZW5kOgotIHJvbGU6IHVzZXIKICBjb250ZW50OiDmr4/mrKHlm57nrZTlrozpl67popjvvIzlsJ3or5Xov5vooYzlj43pl64K\\",\\n \\"enable\\": true,\\n \\"pluginId\\": \\"pl-cvo8ub6m1hkvgv03r3k0\\",\\n \\"pluginClassInfo\\": {\\n \\"pluginClassId\\": \\"\\",\\n \\"type\\": \\"\\",\\n \\"mode\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"alias\\": \\"\\",\\n \\"description\\": \\"\\",\\n \\"source\\": \\"\\",\\n \\"version\\": \\"\\",\\n \\"versionDescription\\": \\"\\",\\n \\"executeStage\\": \\"\\",\\n \\"executePriority\\": 0,\\n \\"configExample\\": \\"\\",\\n \\"imageName\\": \\"\\",\\n \\"wasmLanguage\\": \\"\\",\\n \\"supportedMinGatewayVersion\\": \\"\\",\\n \\"wasmUrl\\": \\"\\",\\n \\"innerPlugin\\": true\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n }\\n }\\n}","type":"json"}]',
- 'title' => 'GetPluginAttachment',
- ],
- 'ListPluginAttachments' => [
- 'summary' => 'Retrieves a list of plug-in attachments.',
- 'path' => '/v1/plugin-attachments',
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListPluginClasses',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"61EBF577-1601-51E1-B136-9CD6xxxxxxxx\\",\\n \\"code\\": \\"200\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 10,\\n \\"items\\": [\\n {\\n \\"pluginClassId\\": \\"pls-d4ghv6em1hkixxxxxxxx\\",\\n \\"name\\": \\"oauth\\",\\n \\"alias\\": \\"OAuth2 认证\\",\\n \\"description\\": \\"基于 OAuth2 实现身份认证和鉴权。\\",\\n \\"version\\": \\"1.0.0\\",\\n \\"type\\": \\"Auth\\",\\n \\"source\\": \\"HigressOfficial\\",\\n \\"supportedMinGatewayVersion\\": \\"2.0.0\\",\\n \\"publishStatus\\": \\"Success\\",\\n \\"pluginId\\": \\"pl-cvu6r4um1hkoxxxxxxxx\\",\\n \\"installed\\": true\\n }\\n ]\\n }\\n}","type":"json"}]',
+ ],
+ 'ListPlugins' => [
+ 'path' => '/v1/plugins',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '231615',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway910B7T',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '231543',
+ 'abilityTreeNodes' => ['FEATUREapigateway216K2A', 'FEATUREapigateway2AMEZG', 'FEATUREapigateway3F24ZP'],
],
'parameters' => [
[
- 'name' => 'attachResourceId',
+ 'name' => 'gatewayId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The resource attachment ID.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'hr-cv2h58em1hkg7c6vt43g',
- ],
+ 'schema' => ['description' => 'The ID of the gateway instance used to filter results.', 'type' => 'string', 'required' => false, 'example' => 'gw-csrhgn6m1hkt65qbxxgg', 'title' => ''],
],
[
- 'name' => 'attachResourceType',
+ 'name' => 'pluginClassId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The resource attachment type (not yet in use).',
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'GatewayDomain' => 'GatewayDomain',
- 'Gateway' => 'Gateway',
- 'GatewayRoute' => 'GatewayRoute',
- 'HttpApi' => 'HttpApi',
- 'Operation' => 'Operation',
- ],
- 'example' => 'GatewayRoute',
- ],
+ 'schema' => ['description' => 'The ID of the plugin type used to filter results.', 'type' => 'string', 'required' => false, 'example' => 'pls-dn82a9djd8z****', 'title' => ''],
],
[
- 'name' => 'environmentId',
+ 'name' => 'pageNumber',
'in' => 'query',
- 'schema' => [
- 'description' => 'The environment ID.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'env-crlnqhtlhtgqflkqislg',
- ],
+ 'schema' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
],
[
- 'name' => 'pluginId',
+ 'name' => 'pageSize',
'in' => 'query',
- 'schema' => [
- 'description' => 'The plug-in ID.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'pl-ct8181um1hkiqns9f6e0',
- ],
+ 'schema' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
],
[
- 'name' => 'gatewayId',
+ 'name' => 'pluginClassName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The gateway ID.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cr79f75lhtgme744084g',
- ],
+ 'schema' => ['description' => 'The name of the plugin type used to filter results.', 'type' => 'string', 'required' => false, 'example' => 'key-auth', 'title' => ''],
],
[
- 'name' => 'pageNumber',
+ 'name' => 'withAttachmentInfo',
'in' => 'query',
- 'schema' => [
- 'description' => 'The page number to return. Pages start from 1. Default value: 1.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'Specifies whether the response includes the plugin attachment information corresponding to attachResourceId.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
],
[
- 'name' => 'pageSize',
+ 'name' => 'attachResourceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries per page. Default value: 10.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
+ 'schema' => ['description' => 'The ID of the attached resource.', 'type' => 'string', 'required' => false, 'example' => 'api-cuip2pum1hksng6oni3g', 'title' => ''],
],
[
- 'name' => 'attachResourceTypes',
+ 'name' => 'attachResourceType',
'in' => 'query',
- 'schema' => [
- 'description' => 'The resource attachment types, separated by commas.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'GatewayRoute',
- ],
+ 'schema' => ['description' => 'The type of the attachment point supported by the policy.'."\n"
+ ."\n"
+ .'- HttpApi: HttpApi.'."\n"
+ .'- Operation: Operation of HttpApi.'."\n"
+ .'- GatewayRoute: gateway route.'."\n"
+ .'- GatewayService: gateway service.'."\n"
+ .'- GatewayServicePort: gateway service port.'."\n"
+ .'- Domain: gateway domain name.'."\n"
+ .'- Gateway: gateway.', 'type' => 'string', 'required' => false, 'example' => 'HttpApi', 'title' => ''],
],
[
- 'name' => 'withParentResource',
+ 'name' => 'gatewayType',
'in' => 'query',
- 'schema' => [
- 'description' => 'Specifies whether to return parent resource attachments.',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
+ 'schema' => ['description' => 'The gateway type used to filter results. Valid values: **AI** and **API**.', 'type' => 'string', 'required' => false, 'example' => 'AI', 'title' => ''],
+ ],
+ [
+ 'name' => 'includeBuiltinAiGateway',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Specifies whether the response includes built-in AI plugins installed by the system. Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => '9640D776-794A-5077-9184-A247CA4B45C1',
- ],
- 'code' => [
- 'description' => 'The status code.',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.',
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '168BA42D-F822-569D-A67F-FC59E6ABC2B1'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'The response payload.',
+ 'description' => 'The returned data.',
'type' => 'object',
'properties' => [
- 'pageNumber' => [
- 'description' => 'The page number.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'pageSize' => [
- 'description' => 'The page size.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
- 'totalSize' => [
- 'description' => 'The total number of entries returned.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
+ 'pageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'pageSize' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'totalSize' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
'items' => [
- 'description' => 'The details of resource attachments.',
+ 'description' => 'The plugin list.',
'type' => 'array',
'items' => [
- 'description' => 'The details of the resource attachment.',
+ 'description' => 'The plugin information.',
'type' => 'object',
'properties' => [
- 'pluginAttachmentId' => [
- 'description' => 'The ID of the resource attachment.',
- 'type' => 'string',
- 'example' => 'pa-d0j9t5em1hkncrlo51mg',
- ],
- 'parentResourceInfo' => [
- 'description' => 'The parent resource metadata.'."\n",
- '$ref' => '#/components/schemas/ParentResourceInfo',
- ],
- 'resourceInfos' => [
- 'description' => 'The information of resource attachments.',
- 'type' => 'array',
- 'items' => [
- 'description' => 'The information of the resource attachment.',
- '$ref' => '#/components/schemas/ResourceInfo',
+ 'pluginId' => ['description' => 'The plugin ID.', 'type' => 'string', 'example' => 'pl-cvu6r4um1hko3b3ti0a0', 'title' => ''],
+ 'gatewayInfo' => [
+ 'description' => 'The gateway information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'gatewayId' => ['description' => 'The gateway ID.', 'type' => 'string', 'example' => 'gw-cq7og15lhtxx6qasrj60', 'title' => ''],
+ 'name' => ['description' => 'The gateway name.', 'type' => 'string', 'example' => 'apitest-gw', 'title' => ''],
],
- ],
- 'environmentInfo' => [
- 'description' => 'The environment metadata.'."\n",
- '$ref' => '#/components/schemas/EnvironmentInfo',
- ],
- 'enable' => [
- 'description' => 'Indicates if enabled.'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'pluginId' => [
- 'description' => 'The plug-in ID.',
- 'type' => 'string',
- 'example' => 'pl-cvu6r4um1hko3b3ti0a0',
- ],
- 'pluginConfig' => [
- 'description' => 'The plug-in configurations (Base64-encoded).',
- 'type' => 'string',
- 'example' => 'bGltaXRfYnlfaGVhZGVyOiB4LWFwaS1rZXkKbGltaXRfa2V5czoKLSBrZXk6IGV4YW1wbGUta2V5LWEKICBxdWVyeV9wZXJfc2Vjb25kOiAxMAotIGtleTogZXhhbXBsZS1rZXktYgogIHF1ZXJ5X3Blcl9zZWNvbmQ6IDEK',
+ 'title' => '',
+ 'example' => '',
],
'pluginClassInfo' => [
- 'description' => 'The plug-in type metadata.'."\n",
- '$ref' => '#/components/schemas/PluginClassInfo',
+ 'description' => 'The plugin type information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'pluginClassId' => ['description' => 'The plugin type ID.', 'type' => 'string', 'example' => 'pls-cqebrgh46ppatmpri', 'title' => ''],
+ 'name' => ['description' => 'The plugin name.', 'type' => 'string', 'example' => 'key-rate-limit', 'title' => ''],
+ 'version' => ['description' => 'The version.', 'type' => 'string', 'example' => '2.0.3', 'title' => ''],
+ 'versionDescription' => ['description' => 'The version description.', 'type' => 'string', 'example' => '版本描述', 'title' => ''],
+ 'executeStage' => ['description' => 'The execution stage.', 'type' => 'string', 'example' => 'AUTHZ', 'title' => ''],
+ 'executePriority' => ['description' => 'The execution priority.', 'type' => 'string', 'example' => '999', 'title' => ''],
+ 'alias' => ['description' => 'The alias.', 'type' => 'string', 'example' => '基于 Key 限流', 'title' => ''],
+ 'source' => ['description' => 'The plugin source.', 'type' => 'string', 'example' => 'HigressOfficial', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
- 'attachResourceType' => [
- 'description' => 'The types of resource attachments.'."\n"
- .'- HttpApi'."\n"
- .'- Operation'."\n"
- .'- GatewayRoute'."\n"
- .'- GatewayDomain'."\n"
- .'- Gateway',
- 'type' => 'string',
- 'example' => 'GatewayRoute',
+ 'attachmentInfo' => [
+ 'description' => 'The plugin attachment information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'pluginAttachmentId' => ['description' => 'The plugin attachment ID.', 'type' => 'string', 'example' => 'pa-ct2irn6m1hkreaen0t40', 'title' => ''],
+ 'enable' => ['description' => 'Indicates whether the plugin is enabled.', 'type' => 'string', 'example' => 'false', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"9640D776-794A-5077-9184-A247CA4B45C1\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 10,\\n \\"items\\": [\\n {\\n \\"pluginAttachmentId\\": \\"pa-d0j9t5em1hkncrlo51mg\\",\\n \\"parentResourceInfo\\": {\\n \\"resourceType\\": \\"\\",\\n \\"apiInfo\\": {\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"basePath\\": \\"/v1\\",\\n \\"description\\": \\"\\",\\n \\"versionInfo\\": {\\n \\"enable\\": true,\\n \\"scheme\\": \\"Query\\",\\n \\"headerName\\": \\"my-version\\",\\n \\"queryName\\": \\"myVersion\\",\\n \\"version\\": \\"v1\\"\\n },\\n \\"ingressInfo\\": {\\n \\"sourceId\\": \\"\\",\\n \\"ingressClass\\": \\"\\",\\n \\"watchNamespace\\": \\"\\",\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"\\"\\n },\\n \\"k8sClusterInfo\\": {\\n \\"clusterId\\": \\"\\"\\n },\\n \\"overrideIngressIp\\": true\\n },\\n \\"type\\": \\"Rest\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"enabelAuth\\": true,\\n \\"authConfig\\": {\\n \\"authType\\": \\"\\",\\n \\"authMode\\": \\"\\"\\n },\\n \\"gatewayId\\": \\"\\",\\n \\"modelCategory\\": \\"\\",\\n \\"protocols\\": [\\n \\"HTTP\\"\\n ],\\n \\"environments\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"backendType\\": \\"Service\\",\\n \\"serviceConfigs\\": [\\n {\\n \\"gatewayServiceId\\": \\"gs-xxx\\",\\n \\"name\\": \\"demo-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": \\"8080\\",\\n \\"weight\\": 100,\\n \\"version\\": \\"v1\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"serviceId\\": \\"svc-xxx\\"\\n }\\n ],\\n \\"customDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"test\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-xxx\\",\\n \\"name\\": \\"test\\"\\n },\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n }\\n ],\\n \\"aiProtocols\\": [\\n \\"\\"\\n ],\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 0,\\n \\"protocol\\": \\"\\",\\n \\"gatewayServiceId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"version\\": \\"\\",\\n \\"multiServiceRouteStrategy\\": \\"\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"\\",\\n \\"rateLimit\\": 0,\\n \\"queueSize\\": 0\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {\\n \\"type\\": \\"AiFallback\\",\\n \\"enable\\": true,\\n \\"aiFallbackConfig\\": {\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"\\",\\n \\"targetModelName\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiSecurityGuardConfig\\": {\\n \\"serviceAddress\\": \\"\\",\\n \\"checkRequest\\": true,\\n \\"checkResponse\\": true,\\n \\"checkRequestImage\\": true,\\n \\"checkResponseImage\\": true,\\n \\"requestCheckService\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"riskAlertLevel\\": \\"\\",\\n \\"riskConfig\\": [\\n {\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\",\\n \\"consumerRules\\": {\\n \\"pattern\\": \\"\\",\\n \\"matchType\\": \\"\\"\\n }\\n }\\n ],\\n \\"bufferLimit\\": 0,\\n \\"consumerRequestCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"requestCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerResponseCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerRiskLevel\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiTokenRateLimitConfig\\": {\\n \\"rules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"globalRules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"enableGlobalRules\\": true\\n }\\n }\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"deployCntMap\\": {\\n \\"key\\": {\\n \\"deployedCnt\\": 0,\\n \\"Cnt\\": 0\\n }\\n },\\n \\"agentProtocols\\": [\\n \\"\\"\\n ]\\n }\\n },\\n \\"resourceInfos\\": [\\n {\\n \\"resourceType\\": \\"\\",\\n \\"resourceId\\": \\"\\",\\n \\"resourceName\\": \\"\\",\\n \\"resourceVersion\\": \\"\\"\\n }\\n ],\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"alias\\": \\"\\",\\n \\"description\\": \\"\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"subDomainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"\\"\\n }\\n ],\\n \\"default\\": true,\\n \\"createTimestamp\\": 0,\\n \\"updateTimestamp\\": 0,\\n \\"resourceGroupId\\": \\"rg-xxxx\\"\\n },\\n \\"enable\\": true,\\n \\"pluginId\\": \\"pl-cvu6r4um1hko3b3ti0a0\\",\\n \\"pluginConfig\\": \\"bGltaXRfYnlfaGVhZGVyOiB4LWFwaS1rZXkKbGltaXRfa2V5czoKLSBrZXk6IGV4YW1wbGUta2V5LWEKICBxdWVyeV9wZXJfc2Vjb25kOiAxMAotIGtleTogZXhhbXBsZS1rZXktYgogIHF1ZXJ5X3Blcl9zZWNvbmQ6IDEK\\",\\n \\"pluginClassInfo\\": {\\n \\"pluginClassId\\": \\"\\",\\n \\"type\\": \\"\\",\\n \\"mode\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"alias\\": \\"\\",\\n \\"description\\": \\"\\",\\n \\"source\\": \\"\\",\\n \\"version\\": \\"\\",\\n \\"versionDescription\\": \\"\\",\\n \\"executeStage\\": \\"\\",\\n \\"executePriority\\": 0,\\n \\"configExample\\": \\"\\",\\n \\"imageName\\": \\"\\",\\n \\"wasmLanguage\\": \\"\\",\\n \\"supportedMinGatewayVersion\\": \\"\\",\\n \\"wasmUrl\\": \\"\\",\\n \\"innerPlugin\\": true\\n },\\n \\"attachResourceType\\": \\"GatewayRoute\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'ListPluginAttachments',
- ],
- 'UpdatePluginAttachment' => [
- 'summary' => 'Updates a plug-in attachment.',
- 'path' => '/v1/plugin-attachments/{pluginAttachmentId}',
- 'methods' => [
- 'put',
+ 'title' => 'Retrieve plugin list',
+ 'summary' => 'Retrieves a list of plugins.',
+ 'changeSet' => [
+ ['createdAt' => '2025-06-03T12:43:26.000Z', 'description' => 'Request parameters changed'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListPlugins'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListPlugins',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"168BA42D-F822-569D-A67F-FC59E6ABC2B1\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 10,\\n \\"items\\": [\\n {\\n \\"pluginId\\": \\"pl-cvu6r4um1hko3b3ti0a0\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtxx6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\"\\n },\\n \\"pluginClassInfo\\": {\\n \\"pluginClassId\\": \\"pls-cqebrgh46ppatmpri\\",\\n \\"name\\": \\"key-rate-limit\\",\\n \\"version\\": \\"2.0.3\\",\\n \\"versionDescription\\": \\"版本描述\\",\\n \\"executeStage\\": \\"AUTHZ\\",\\n \\"executePriority\\": \\"999\\",\\n \\"alias\\": \\"基于 Key 限流\\",\\n \\"source\\": \\"HigressOfficial\\"\\n },\\n \\"attachmentInfo\\": {\\n \\"pluginAttachmentId\\": \\"pa-ct2irn6m1hkreaen0t40\\",\\n \\"enable\\": \\"false\\"\\n }\\n }\\n ]\\n }\\n}","type":"json"}]',
+ ],
+ 'ListPolicies' => [
+ 'path' => '/v1/policies',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '231611',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway216K2A',
- 'FEATUREapigateway2AMEZG',
- 'FEATUREapigateway3F24ZP',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '228407',
+ 'abilityTreeNodes' => ['FEATUREapigatewayOZOKBY'],
],
'parameters' => [
[
- 'name' => 'pluginAttachmentId',
- 'in' => 'path',
- 'schema' => [
- 'description' => 'The attachment ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'pa-cri2uq5lhtgkq0ldllj0',
- ],
+ 'name' => 'withAttachments',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Specifies whether to return attachment information.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
],
[
- 'name' => 'body',
- 'in' => 'body',
- 'style' => 'json',
+ 'name' => 'attachResourceId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The ID of the attachment point.', 'type' => 'string', 'required' => false, 'example' => 'api-cq7l5s5lhtgi6qasrdc0', 'title' => ''],
+ ],
+ [
+ 'name' => 'attachResourceType',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The type of the attachment point supported by the policy.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'- HttpApi: HTTP API.'."\n"
+ .'- Operation: Operation of an HTTP API.'."\n"
+ .'- GatewayRoute: Gateway route.'."\n"
+ .'- GatewayService: Gateway service.'."\n"
+ .'- GatewayServicePort: Gateway service port.'."\n"
+ .'- Domain: Gateway domain name.'."\n"
+ .'- Gateway: Gateway.', 'type' => 'string', 'required' => false, 'example' => 'HttpApi', 'title' => ''],
+ ],
+ [
+ 'name' => 'environmentId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The environment ID.', 'type' => 'string', 'required' => false, 'example' => 'env-cq7l5s5lhtgi6qasrdc0', 'title' => ''],
+ ],
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-cq2fm65lhtgm9nrrl7ag', 'title' => ''],
+ ],
+ [
+ 'name' => 'withSystemPolicy',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Specifies whether the policy is a system policy.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The request data.'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'attachResourceIds' => [
- 'description' => 'The IDs of the resources to which the plug-in is attached.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The resource ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'api-axvafaefafxx',
+ 'requestId' => ['title' => '', 'description' => 'The request ID, which is used to trace the API call chain.', 'type' => 'string', 'example' => '393E2630-DBE7-5221-AB35-9E740675491A'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'pageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'pageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'totalSize' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '18', 'title' => ''],
+ 'items' => [
+ 'description' => 'The list of policies.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The policy information.', '$ref' => '#/components/schemas/PolicyInfo', 'title' => '', 'example' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
],
- 'required' => false,
- ],
- 'pluginConfig' => [
- 'description' => 'The Base64-encoded configurations of the plug-in.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cHJlcGVuZDoKLSByb2xlOiBzeXN0ZW0KICBjb250ZW50OiDor7fkvb/nlKjoi7Hor63lm57nrZTpl67popgKYXBwZW5kOgotIHJvbGU6IHVzZXIKICBjb250ZW50OiDmr4/mrKHlm57nrZTlrozpl67popjvvIzlsJ3or5Xov5vooYzlj43pl64K',
- ],
- 'enable' => [
- 'description' => 'Specifies whether to enable the plug-in.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
+ 'title' => '',
+ 'example' => '',
],
],
- 'required' => false,
+ 'example' => '',
],
],
],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Query policy list',
+ 'summary' => 'Queries a list of policies.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListPolicies',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"393E2630-DBE7-5221-AB35-9E740675491A\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 18,\\n \\"items\\": [\\n {\\n \\"policyId\\": \\"p-cq7l5s5lhtgi6qasrdc0\\",\\n \\"direction\\": \\"InBound\\",\\n \\"className\\": \\"RateLimit\\",\\n \\"classAlias\\": \\"流量控制\\",\\n \\"config\\": \\"{\\\\\\"enable\\\\\\":false}\\",\\n \\"attachments\\": [\\n {\\n \\"policyAttachmentId\\": \\"pr-cq7l5s5lhtgi6qasrdc0\\",\\n \\"attachResourceId\\": \\"gw-xxx\\",\\n \\"attachResourceType\\": \\"HttpApi\\",\\n \\"environmentId\\": \\"env-cq7l5s5lhtgi6qasrdc0\\",\\n \\"gatewayId\\": \\"gw-cpr4f9dlhtgq5ksfgmb0\\",\\n \\"attachResourceIds\\": [\\n \\"api-cq7l5s5lhtgi6qasrdc0\\"\\n ],\\n \\"attachResourceParentIds\\": [\\n \\"[\\\\\\"api-xxx\\\\\\"]\\"\\n ]\\n }\\n ],\\n \\"name\\": \\"test-policy\\",\\n \\"type\\": \\"策略类型\\",\\n \\"executeStage\\": \\"PluginPost\\",\\n \\"executePriority\\": \\"310\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ ],
+ 'ListPolicyClasses' => [
+ 'summary' => 'Retrieves policy templates.',
+ 'path' => '/v1/policy-classes',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '223018',
+ 'abilityTreeNodes' => ['FEATUREapigatewayE6KZ22'],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'type',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The policy templatetype.', 'type' => 'string', 'required' => false, 'example' => 'FlowControl', 'title' => ''],
+ ],
+ [
+ 'name' => 'direction',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The direction of the policy. Valid values:'."\n"
+ .'- OutBound: outbound.'."\n"
+ .'- InBound: inbound.'."\n"
+ .'- Both: both directions.', 'type' => 'string', 'required' => false, 'example' => 'InBound', 'title' => ''],
+ ],
+ [
+ 'name' => 'attachResourceType',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The type of the resource to which the policy can be attached. Valid values:'."\n"
+ .'- HttpApi: HttpApi.'."\n"
+ .'- Operation: an operation of an HttpApi.'."\n"
+ .'- GatewayRoute: a gateway route.'."\n"
+ .'- GatewayService: a gateway service.'."\n"
+ .'- GatewayServicePort: a gateway service port.'."\n"
+ .'- Domain: a gateway domain name.'."\n"
+ .'- Gateway: a gateway.', 'type' => 'string', 'required' => false, 'example' => 'Operation', 'title' => ''],
+ ],
+ [
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
+ ],
+ [
+ 'name' => 'attachResourceId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The ID of the attached resource.', 'type' => 'string', 'required' => false, 'example' => 'route-001', 'title' => ''],
+ ],
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-001', 'title' => ''],
+ ],
+ ],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'The response struct.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => 'F330090D-80F8-557B-8610-7EC7E386B4A4',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.',
- 'type' => 'string',
- 'example' => 'success',
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '23B45FA9-7208-5E55-B5CE-B6B2567DD822'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The policy template information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'pageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'pageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'totalSize' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'items' => [
+ 'description' => 'The list of policy templates.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The policy template information.', '$ref' => '#/components/schemas/PolicyClassInfo', 'title' => '', 'example' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Retrieve policy templates',
+ 'changeSet' => [
+ ['createdAt' => '2025-07-25T02:07:37.000Z', 'description' => 'Request parameters changed'],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"F330090D-80F8-557B-8610-7EC7E386B4A4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'UpdatePluginAttachment',
- ],
- 'DeletePluginAttachment' => [
- 'summary' => 'Deletes a plug-in attachment.',
- 'path' => '/v1/plugin-attachments/{pluginAttachmentId}',
- 'methods' => [
- 'delete',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListPolicyClasses'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListPolicyClasses',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"23B45FA9-7208-5E55-B5CE-B6B2567DD822\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 10,\\n \\"items\\": [\\n {\\n \\"classId\\": \\"pc-cpqm0s94ckt1displ8ng\\",\\n \\"name\\": \\"ConcurrencyLimit\\",\\n \\"alias\\": \\"并发控制\\",\\n \\"version\\": \\"1.0.0\\",\\n \\"description\\": \\"通过控制并发线程数以保证系统的稳定性。适用于应用内部或下游依赖出现不稳定的场景,例如慢SQL、下游应用响应时间变长等。\\",\\n \\"type\\": \\"FlowControl\\",\\n \\"direction\\": \\"InBound\\",\\n \\"attachableResourceTypes\\": [\\n \\"Gateway\\"\\n ],\\n \\"executeStage\\": \\"POST\\",\\n \\"executePriority\\": \\"1\\",\\n \\"enableLog\\": true,\\n \\"deprecated\\": false,\\n \\"configExample\\": \\"{}\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ ],
+ 'ListSecretReferences' => [
+ 'summary' => 'Lists secret references.',
+ 'path' => '/v1/secrets/{secretId}/references',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '280247',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
+ 'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'pluginAttachmentId',
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number. Pages start from 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
+ ],
+ [
+ 'name' => 'secretId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The attachment ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'pa-cvlkefmm1hkkc90m8vq0',
- ],
+ 'schema' => ['description' => 'The secret ID.', 'type' => 'string', 'required' => false, 'example' => 'sec-d5e6shmm1hkoxxxxxxxx', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => '76BDFFC7-0764-5168-B047-92EE0BC7FDDE',
- ],
- 'code' => [
- 'description' => 'The response code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'CE857A85-251D-5018-8103-A38957D71***'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'totalSize' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '25', 'title' => ''],
+ 'pageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'pageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'items' => [
+ 'description' => 'The list of reference details.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The reference details.',
+ 'type' => 'object',
+ 'properties' => [
+ 'gatewayId' => ['description' => 'The gateway instance ID.', 'type' => 'string', 'example' => 'gw-xxxx', 'title' => ''],
+ 'resourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'Plugin', 'title' => ''],
+ 'mcpServerConfig' => [
+ 'description' => 'The MCP server information that references the current secret.',
+ 'type' => 'object',
+ 'properties' => [
+ 'routeId' => ['description' => 'The route ID.', 'type' => 'string', 'example' => 'hr-cv0i5oum1hkhxxxxxxxx', 'title' => ''],
+ 'name' => ['description' => 'The route name.', 'type' => 'string', 'example' => 'mcp', 'title' => ''],
+ 'httpApiId' => ['description' => 'HTTP API ID。', 'type' => 'string', 'example' => 'api-d2vv43em201hxxxxxxxx', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'consumerConfig' => [
+ 'description' => 'The consumer information that references the current secret.',
+ 'type' => 'object',
+ 'properties' => [
+ 'consumerId' => ['description' => 'The consumer ID.', 'type' => 'string', 'example' => 'cs-d0iltnem1hkhxxxxxxxx', 'title' => ''],
+ 'name' => ['description' => 'The consumer name.', 'type' => 'string', 'example' => 'myconsumer', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'PluginConfig' => [
+ 'description' => 'The plug-in information that references the current secret.',
+ 'type' => 'object',
+ 'properties' => [
+ 'pluginId' => ['description' => 'The plug-in ID.', 'type' => 'string', 'example' => 'pl-d4ijk56m1hkhxxxxxxxx', 'title' => ''],
+ 'name' => ['description' => 'The plug-in name.', 'type' => 'string', 'example' => 'oauth', 'title' => ''],
+ 'pluginClassId' => ['description' => 'The plug-in type ID.', 'type' => 'string', 'example' => 'pls-xxxxxxxx', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'ServiceConfig' => [
+ 'description' => 'The service information that references the current secret.',
+ 'type' => 'object',
+ 'properties' => [
+ 'serviceId' => ['description' => 'The service ID.', 'type' => 'string', 'example' => 'svc-cvgbtcmm1hkmxxxxxxxx', 'title' => ''],
+ 'name' => ['description' => 'The service name.', 'type' => 'string', 'example' => 'myService', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'List secret references',
+ 'description' => 'This operation supports creating multiple services.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"76BDFFC7-0764-5168-B047-92EE0BC7FDDE\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'DeletePluginAttachment',
- ],
- 'InstallPlugin' => [
- 'summary' => 'Installs a plug-in.',
- 'path' => '/v1/plugins/',
- 'methods' => [
- 'post',
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'apig:ListSecretReferences',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:secret/{#SecretId}'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'https',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CE857A85-251D-5018-8103-A38957D71***\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"totalSize\\": 25,\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"items\\": [\\n {\\n \\"gatewayId\\": \\"gw-xxxx\\",\\n \\"resourceType\\": \\"Plugin\\",\\n \\"mcpServerConfig\\": {\\n \\"routeId\\": \\"hr-cv0i5oum1hkhxxxxxxxx\\",\\n \\"name\\": \\"mcp\\",\\n \\"httpApiId\\": \\"api-d2vv43em201hxxxxxxxx\\"\\n },\\n \\"consumerConfig\\": {\\n \\"consumerId\\": \\"cs-d0iltnem1hkhxxxxxxxx\\",\\n \\"name\\": \\"myconsumer\\"\\n },\\n \\"PluginConfig\\": {\\n \\"pluginId\\": \\"pl-d4ijk56m1hkhxxxxxxxx\\",\\n \\"name\\": \\"oauth\\",\\n \\"pluginClassId\\": \\"pls-xxxxxxxx\\"\\n },\\n \\"ServiceConfig\\": {\\n \\"serviceId\\": \\"svc-cvgbtcmm1hkmxxxxxxxx\\",\\n \\"name\\": \\"myService\\"\\n }\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
+ ],
+ 'ListSecrets' => [
+ 'summary' => 'Lists keys.',
+ 'path' => '/v1/secrets',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'none',
- 'abilityTreeCode' => '231541',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway3F24ZP',
- 'FEATUREapigateway2AMEZG',
- 'FEATUREapigateway216K2A',
- ],
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '280145',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
+ 'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'body',
- 'in' => 'body',
- 'style' => 'json',
- 'schema' => [
- 'description' => 'The request body.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'pluginClassId' => [
- 'description' => 'The plug-in type ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'pls-csqmjndlhtguk0loef21',
- ],
- 'gatewayIds' => [
- 'description' => 'The list of gateway IDs.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The gateway ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-d28mjcmm1hkub84mdbi0'."\n",
- ],
- 'required' => false,
- ],
- ],
- 'required' => false,
- ],
+ 'name' => 'nameLike',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The key name. Fuzzy match is supported.', 'type' => 'string', 'required' => false, 'example' => 'my_secret', 'title' => ''],
+ ],
+ [
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page size. Valid values: 1 to 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
+ ],
+ [
+ 'name' => 'gatewayType',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The gateway type used to filter results. Valid values: **AI** and **API**.', 'type' => 'string', 'required' => false, 'example' => 'AI', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => '201CFCA0-3AF5-52D0-A0F3-FBA697AF55CB',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.'."\n",
- 'type' => 'string',
- 'example' => 'Success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '3A3D1392-0F71-5A10-9AE8-89C434696966'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'The response payload.'."\n",
+ 'description' => 'The list of key information.',
'type' => 'object',
'properties' => [
- 'installPluginResults' => [
- 'description' => 'The installation result.'."\n",
+ 'totalSize' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'pageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'pageSize' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'items' => [
+ 'description' => 'The list of key details.',
'type' => 'array',
'items' => [
+ 'description' => 'The key details.',
'type' => 'object',
'properties' => [
- 'pluginId' => [
- 'description' => 'The plug-in ID.'."\n",
- 'type' => 'string',
- 'example' => 'pl-cvs7gbum1hkhs6us6vbg',
- ],
- 'gatewayId' => [
- 'description' => 'The gateway ID.'."\n",
- 'type' => 'string',
- 'example' => 'gw-d28mjcmm1hkub84mdbi0',
- ],
+ 'secretId' => ['description' => 'The key ID.', 'type' => 'string', 'example' => 'sec-d5e6shmm1hkoxxxxxxxx', 'title' => ''],
+ 'name' => ['description' => 'The key name.', 'type' => 'string', 'example' => 'my_secret', 'title' => ''],
+ 'secretSource' => ['description' => 'The key source.', 'type' => 'string', 'example' => 'KMS', 'title' => ''],
+ 'createTimestamp' => ['description' => 'The creation timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1725617840096', 'title' => ''],
+ 'updateTimestamp' => ['description' => 'The update timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1721116090326', 'title' => ''],
+ 'kmsConfig' => ['description' => 'The KMS configuration information.', '$ref' => '#/components/schemas/KMSConfig', 'title' => '', 'example' => ''],
+ 'gatewayType' => ['description' => 'The gateway type.', 'type' => 'string', 'example' => 'API', 'title' => ''],
+ 'status' => ['description' => 'The key status. Valid values:'."\n"
+ .'- ENABLE: Enabled.'."\n"
+ .'- DISABLE: Disabled.'."\n"
+ .'- DELETED: Deleted.', 'type' => 'string', 'example' => 'ENABLE', 'title' => ''],
+ 'referenceCount' => ['description' => 'The resource count that references the current key.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''],
],
- 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'List keys',
+ 'description' => 'The operation supports creating multiple services.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"201CFCA0-3AF5-52D0-A0F3-FBA697AF55CB\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"Success\\",\\n \\"data\\": {\\n \\"installPluginResults\\": [\\n {\\n \\"pluginId\\": \\"pl-cvs7gbum1hkhs6us6vbg\\",\\n \\"gatewayId\\": \\"gw-d28mjcmm1hkub84mdbi0\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'InstallPlugin',
- ],
- 'UninstallPlugin' => [
- 'summary' => 'Uninstalls a plug-in.',
- 'path' => '/v1/plugins/{pluginId}',
- 'methods' => [
- 'delete',
+ 'ramActions' => [
+ [
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'apig:ListSecrets',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'https',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3A3D1392-0F71-5A10-9AE8-89C434696966\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"totalSize\\": 10,\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"items\\": [\\n {\\n \\"secretId\\": \\"sec-d5e6shmm1hkoxxxxxxxx\\",\\n \\"name\\": \\"my_secret\\",\\n \\"secretSource\\": \\"KMS\\",\\n \\"createTimestamp\\": 1725617840096,\\n \\"updateTimestamp\\": 1721116090326,\\n \\"kmsConfig\\": {\\n \\"kmsInstanceId\\": \\"kst-xxxxxxxx\\",\\n \\"kmsKeyId\\": \\"key-xxxxxxxx\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"status\\": \\"ENABLE\\",\\n \\"referenceCount\\": 3\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
+ ],
+ 'ListServices' => [
+ 'path' => '/v1/services',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '237750',
+ 'abilityTreeNodes' => ['FEATUREapigatewayNPQVBL'],
],
'parameters' => [
[
- 'name' => 'pluginId',
- 'in' => 'path',
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number. Pages start from 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
+ ],
+ [
+ 'name' => 'name',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The service name for exact match query.', 'type' => 'string', 'required' => false, 'example' => 'user-service', 'title' => ''],
+ ],
+ [
+ 'name' => 'sourceType',
+ 'in' => 'query',
'schema' => [
- 'description' => 'The plug-in ID.'."\n",
+ 'description' => 'The source type of the service. Valid values:'."\n"
+ .'- MSE_NACOS: services from MSE Nacos.'."\n"
+ .'- K8S: services from a Kubernetes cluster in Container Service.'."\n"
+ .'- FC3: services from Function Compute.'."\n"
+ .'- VIP: services with a fixed address.'."\n"
+ .'- DNS: services with a domain name.',
+ 'enumValueTitles' => ['K8S' => 'Container service.', 'FC3' => 'Function Compute service.', 'DNS' => 'DNS domain name.', 'VIP' => 'Fixed address.', 'MSE_NACOS' => 'MSE Nacos'],
'type' => 'string',
'required' => false,
- 'example' => 'pl-cvd2b36m1hkhdosfhar0',
+ 'example' => 'MSE_NACOS',
+ 'title' => '',
],
],
+ [
+ 'name' => 'sourceTypes',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The list of service source types.', 'type' => 'string', 'required' => false, 'example' => '["K8S", "FC3"]', 'title' => ''],
+ ],
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The ID of the cloud-native API gateway.', 'type' => 'string', 'required' => false, 'example' => 'gw-cpv4sqdl*****', 'title' => ''],
+ ],
+ [
+ 'name' => 'resourceGroupId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmxxe5rc6cvla', 'title' => ''],
+ ],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'The response body.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.',
- 'type' => 'string',
- 'example' => 'F61D96E8-4E6D-5896-86E7-F1202AC31280',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The status message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '585657D2-1C20-5B8A-AF17-D727C6490BE4'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'data' => [
+ 'description' => 'The response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'pageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'pageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'totalSize' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '18', 'title' => ''],
+ 'items' => [
+ 'description' => 'The list of services.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The service information.', '$ref' => '#/components/schemas/Service', 'title' => '', 'example' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"F61D96E8-4E6D-5896-86E7-F1202AC31280\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'UninstallPlugin',
+ 'title' => 'Query service list',
+ 'summary' => 'Retrieves a list of services.',
+ 'changeSet' => [
+ ['createdAt' => '2025-04-14T12:43:31.000Z', 'description' => 'Request parameters changed'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListServices'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListServices',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Service', 'arn' => 'acs:apig:{#regionId}:{#accountId}:service/*'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C6490BE4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 18,\\n \\"items\\": [\\n {\\n \\"serviceId\\": \\"svc-cr6pk4tlhtgm***\\",\\n \\"sourceType\\": \\"MSE_NACOS\\",\\n \\"name\\": \\"user-service\\",\\n \\"namespace\\": \\"PUBLIC\\",\\n \\"healthCheck\\": {\\n \\"protocol\\": \\"TCP\\",\\n \\"timeout\\": 5,\\n \\"interval\\": 10,\\n \\"healthyThreshold\\": 2,\\n \\"unhealthyThreshold\\": 3,\\n \\"httpPath\\": \\"/health\\",\\n \\"httpHost\\": \\"example.com\\",\\n \\"enable\\": true\\n },\\n \\"healthStatus\\": \\"Healthy\\",\\n \\"qualifier\\": \\"LATEST\\",\\n \\"createTimestamp\\": 1725617840096,\\n \\"updateTimestamp\\": 1725868548440,\\n \\"protocol\\": \\"HTTP\\",\\n \\"gatewayId\\": \\"gw-xxxx\\",\\n \\"modelProviderId\\": \\"mp-xxxx\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"groupName\\": \\"publich\\",\\n \\"aiServiceConfig\\": {\\n \\"provider\\": \\"qwen\\\\nmoonshot\\\\nbaichuan\\\\nyi\\\\nzhipuai\\\\n360ai\\\\nhunyuan\\\\nstepfun\\\\nspark\\\\nopenai\\\\nclaude\\\\nanthropic\\\\ndoubao\\\\nminimax\\\\ngemini\\\\nazure\\\\ndeepseek\\\\ncustom\\\\npai-eas\\\\nbedrock\\\\nvertex\\",\\n \\"address\\": \\"https://dashscope.aliyun.com\\",\\n \\"enableHealthCheck\\": true,\\n \\"paiEASServiceConfig\\": {\\n \\"workspaceId\\": \\"cb89d4de30042df4459442589664e00d\\",\\n \\"serviceId\\": \\"svc-cvaeb0um1hkqp79k72v0\\",\\n \\"serviceName\\": \\"auto-ai-service\\",\\n \\"endpointType\\": \\"\\\\\\"public\\\\\\",\\\\\\"private\\\\\\"\\"\\n },\\n \\"bedrockServiceConfig\\": {\\n \\"awsRegion\\": \\"us-east-1\\",\\n \\"awsAccessKey\\": \\"AKIAIOSFODNN7EXAMPLE\\",\\n \\"awsSecretKey\\": \\"wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY\\"\\n },\\n \\"ApiKeyGenerateMode\\": \\"Custom\\",\\n \\"defaultModelName\\": \\"gpt-4\\",\\n \\"enableOutlierDetection\\": true,\\n \\"vertexServiceConfig\\": {\\n \\"vertexAuthKey\\": \\"{\\\\\\\\\\\\\\"type\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"service_account\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"project_id\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"my-project\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"private_key\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"-----BEGIN PRIVATE KEY-----...\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"client_email\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"xxx@xxx.iam.gserviceaccount.com\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"token_uri\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"https://oauth2.googleapis.com/token\\\\\\\\\\\\\\"}\\",\\n \\"vertexRegion\\": \\"us-central1\\",\\n \\"vertexProjectId\\": \\"my-project\\",\\n \\"vertexAuthServiceName\\": \\"google-oauth2\\",\\n \\"geminiSafetySetting\\": {\\n \\"key\\": \\"{\\\\\\"BLOCK_NONE\\\\\\": \\\\\\"true\\\\\\"}\\"\\n },\\n \\"vertexTokenRefreshAhead\\": 300\\n },\\n \\"protocols\\": [\\n \\"OpenAI/v1\\"\\n ],\\n \\"apiKeys\\": [\\n \\"sk-xxx\\"\\n ],\\n \\"compatibleProtocols\\": [\\n \\"\\\\\\"openai\\\\\\", \\\\\\"anthropic\\\\\\"\\"\\n ]\\n },\\n \\"agentServiceConfig\\": {\\n \\"address\\": \\"https://dashscope.aliyuncs.com/api/v1\\",\\n \\"dashScopeConfig\\": {\\n \\"appCredentials\\": [\\n {\\n \\"apiKey\\": \\"sk-xxx\\",\\n \\"appId\\": \\"app-xxx\\"\\n }\\n ]\\n },\\n \\"enableHealthCheck\\": true,\\n \\"provider\\": \\"qwen\\",\\n \\"difyConfig\\": {\\n \\"botType\\": \\"chatbot\\",\\n \\"apiKey\\": \\"app-xxx\\"\\n },\\n \\"enableOutlierDetection\\": true,\\n \\"customConfig\\": {\\n \\"apiKey\\": \\"app-xxx\\\\n\\",\\n \\"apiKeyGenerateMode\\": \\"Reference\\"\\n },\\n \\"protocols\\": [\\n \\"DashScope\\"\\n ]\\n },\\n \\"expressType\\": \\"StartExecution\\",\\n \\"addresses\\": [\\n \\"127.0.0.1:8080\\"\\n ],\\n \\"ports\\": [\\n {\\n \\"port\\": 8080,\\n \\"name\\": \\"user-service\\",\\n \\"protocol\\": \\"TCP\\"\\n }\\n ],\\n \\"unhealthyEndpoints\\": [\\n \\"192.168.1.12:8080\\"\\n ],\\n \\"outlierEndpoints\\": [\\n \\"[\\\\\\"10.0.0.2:8080\\\\\\"]\\"\\n ],\\n \\"labelDetails\\": [\\n {\\n \\"key\\": \\"version\\",\\n \\"values\\": [\\n \\"[\\\\\\"v1.0.0\\\\\\", \\\\\\"v2.0.0\\\\\\"]\\"\\n ]\\n }\\n ],\\n \\"runtimeDetailStatus\\": \\"Available\\",\\n \\"runtimeDetailErrorCode\\": \\"RuntimeEndpointTimeout\\",\\n \\"versions\\": [\\n {\\n \\"name\\": \\"v1\\",\\n \\"labels\\": [\\n {\\n \\"key\\": \\"version\\",\\n \\"value\\": \\"v1\\"\\n }\\n ]\\n }\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]',
],
'ListSslCerts' => [
- 'summary' => 'Queries SSL certificates.',
+ 'summary' => 'Retrieves a list of certificates.',
'path' => '/v1/ssl/certs',
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -21765,584 +15115,310 @@
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREapigatewayLPOSXV'],
],
'parameters' => [
[
'name' => 'certNameLike',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name keyword for matching.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'ali',
- ],
+ 'schema' => ['description' => 'The keyword for fuzzy match of the certificate name.', 'type' => 'string', 'required' => false, 'example' => 'ali', 'title' => ''],
],
[
'name' => 'domainName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The domain name.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'fun.iot.evideocloud.com.cn',
- ],
+ 'schema' => ['description' => 'The domain name.', 'type' => 'string', 'required' => false, 'example' => 'fun.iot.evideocloud.com.cn', 'title' => ''],
],
[
'name' => 'pageNumber',
'in' => 'query',
- 'schema' => [
- 'description' => 'The page number of the page to return. Default value: 1.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'The page number. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'pageSize',
'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries per page. Default value: 10.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
+ 'schema' => ['description' => 'The number of entries per page. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response parameters.'."\n",
+ 'title' => '',
+ 'description' => 'The response struct.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'AADF7197-3384-52AF-A2DE-A66696734129',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'AADF7197-3384-52AF-A2DE-A66696734129'],
'data' => [
- 'description' => 'The data returned.'."\n",
+ 'description' => 'The returned data.',
'type' => 'object',
'properties' => [
- 'pageNumber' => [
- 'description' => 'The page number of the returned page.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'pageSize' => [
- 'description' => 'The number of entries per page.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
- 'totalSize' => [
- 'description' => 'The total number of entries returned.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '2',
- ],
+ 'pageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'pageSize' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
+ 'totalSize' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''],
'items' => [
- 'description' => 'The list of certificate information.'."\n",
+ 'description' => 'The list of certificates.',
'type' => 'array',
- 'items' => [
- 'description' => 'The certificate information.'."\n",
- '$ref' => '#/components/schemas/SslCertMetaInfo',
- ],
+ 'items' => ['description' => 'The certificate information.', '$ref' => '#/components/schemas/SslCertMetaInfo', 'title' => '', 'example' => ''],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"AADF7197-3384-52AF-A2DE-A66696734129\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 2,\\n \\"items\\": [\\n {\\n \\"certIdentifier\\": \\"\\",\\n \\"isChainCompleted\\": true,\\n \\"instanceId\\": \\"\\",\\n \\"domain\\": \\"\\",\\n \\"fingerprint\\": \\"\\",\\n \\"certName\\": \\"\\",\\n \\"certId\\": 0,\\n \\"commonName\\": \\"\\",\\n \\"domainMatchCert\\": true,\\n \\"sans\\": \\"\\",\\n \\"notBeforeTimestamp\\": 0,\\n \\"notAfterTimestamp\\": 0,\\n \\"algorithm\\": \\"\\",\\n \\"keySize\\": \\"\\",\\n \\"issuer\\": \\"\\",\\n \\"serialNo\\": \\"\\",\\n \\"md5\\": \\"\\",\\n \\"sha2\\": \\"\\",\\n \\"signAlgorithm\\": \\"\\"\\n }\\n ]\\n },\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'ListSslCerts',
- 'translator' => 'machine',
- ],
- 'GetDomain' => [
- 'summary' => 'Queries the information about a domain name.',
- 'path' => '/v1/domains/{domainId}',
- 'methods' => [
- 'get',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Retrieve certificate list',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListSslCerts'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListSslCerts',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"AADF7197-3384-52AF-A2DE-A66696734129\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 2,\\n \\"items\\": [\\n {\\n \\"certIdentifier\\": \\"cert-123\\",\\n \\"isChainCompleted\\": true,\\n \\"instanceId\\": \\"i-bp1234567890\\",\\n \\"domain\\": \\"api.example.com\\",\\n \\"fingerprint\\": \\"A1:B2:C3:D4:E5:F6:78:90:AB:CD:EF:12:34:56:78:90\\",\\n \\"certName\\": \\"example.com\\",\\n \\"certId\\": 1234567890,\\n \\"commonName\\": \\"example.com\\",\\n \\"domainMatchCert\\": true,\\n \\"sans\\": \\"*.example.com,api.example.com,www.example.com\\",\\n \\"notBeforeTimestamp\\": 1234567890000,\\n \\"notAfterTimestamp\\": 1234567890000,\\n \\"algorithm\\": \\"RSA2048\\",\\n \\"keySize\\": \\"2048\\",\\n \\"issuer\\": \\"DigiCert Inc\\",\\n \\"serialNo\\": \\"03:A1:B2:C3:D4:E5:F6:78:90:AB:CD:EF:12:34:56:78:90\\",\\n \\"md5\\": \\"A1B2C3D4E5F67890ABCDEF1234567890\\",\\n \\"sha2\\": \\"A1B2C3D4E5F67890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890\\",\\n \\"signAlgorithm\\": \\"sha256WithRSAEncryption\\"\\n }\\n ]\\n },\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'ListTagResources' => [
+ 'summary' => 'Retrieves the list of resource labels.',
+ 'path' => '/v1/tags',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'get',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '219001',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayLPOSXV',
- ],
+ 'abilityTreeCode' => '248803',
+ 'abilityTreeNodes' => ['FEATUREapigatewayUWNKMC'],
],
'parameters' => [
[
- 'name' => 'domainId',
- 'in' => 'path',
+ 'name' => 'ResourceType',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The resource type.', 'type' => 'string', 'required' => false, 'example' => 'Gateway', 'default' => 'Gateway'],
+ ],
+ [
+ 'name' => 'ResourceId',
+ 'in' => 'query',
+ 'style' => 'json',
'schema' => [
- 'description' => 'The ID of the domain name.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'd-cpqnfn5lhtgqbga95sv1',
+ 'title' => '',
+ 'description' => 'The resource ID. You can specify up to 50 subkeys.',
+ 'type' => 'array',
+ 'items' => ['description' => 'string', 'type' => 'string', 'required' => false, 'example' => '["gw-xxx","gw-yyy"]', 'title' => ''],
+ 'required' => false,
+ 'example' => '["gw-xxx","gw-yyy"]',
],
],
[
- 'name' => 'withStatistics',
+ 'name' => 'Tag',
'in' => 'query',
+ 'style' => 'json',
'schema' => [
- 'description' => 'Specifies whether to return online resource information.'."\n",
- 'type' => 'boolean',
+ 'title' => '',
+ 'description' => 'The list of labels to add. You can specify up to 20 subkeys.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'object',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => ['title' => '', 'description' => 'The label key.', 'type' => 'string', 'required' => false, 'example' => 'env'],
+ 'Value' => ['title' => '', 'description' => 'The label value.', 'type' => 'string', 'required' => false, 'example' => 'prod'],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
'required' => false,
- 'example' => 'true',
+ 'example' => '[{"key":"env","value":"prod"}]',
],
],
+ [
+ 'name' => 'NextToken',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The token for the next query.', 'type' => 'string', 'required' => false, 'example' => 'caeb235b-xxx'],
+ ],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The returned body.'."\n",
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID, which is used to trace the API call link.'."\n",
- 'type' => 'string',
- 'example' => '3ACFC7A7-45A9-58CF-B2D5-765B60254695',
- ],
- 'data' => [
- 'description' => 'The response data.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'domainId' => [
- 'description' => 'The ID of the domain name.'."\n",
- 'type' => 'string',
- 'example' => 'd-cq1m3utlhtgvgkv7sitg',
- ],
- 'name' => [
- 'description' => 'The domain name.'."\n",
- 'type' => 'string',
- 'example' => 'abc.com',
- ],
- 'protocol' => [
- 'description' => 'The supported protocol. Valid values:'."\n"
- ."\n"
- .'* HTTP: Only HTTP is supported.'."\n"
- .'* HTTPS: Only HTTPS is supported.'."\n",
- 'type' => 'string',
- 'example' => 'HTTP',
- ],
- 'createFrom' => [
- 'description' => 'The creation source.'."\n"
- ."\n"
- .'Valid values:'."\n"
- ."\n"
- .'* Console'."\n"
- .'* Ingress'."\n",
- 'type' => 'string',
- 'enumValueTitles' => [
- 'Console' => 'Console',
- 'Ingress' => 'Ingress',
- ],
- 'example' => 'Console',
- ],
- 'forceHttps' => [
- 'description' => 'Indicates whether forcible HTTPS redirection is enabled.'."\n",
- 'type' => 'boolean',
- 'example' => 'false',
- ],
- 'certIdentifier' => [
- 'description' => 'The certificate ID.'."\n",
- 'type' => 'string',
- 'example' => '645****-cn-hangzhou',
- ],
- 'caCertIdentifier' => [
- 'description' => 'The CA certificate ID.'."\n",
- 'type' => 'string',
- 'example' => '876****-cn-hangzhou',
- ],
- 'default' => [
- 'description' => 'Indicates whether the domain name is the default domain name.'."\n",
- 'type' => 'boolean',
- 'example' => 'false',
- ],
- 'http2Option' => [
- 'description' => 'The HTTP/2 configuration.'."\n"
- ."\n"
- .'Valid values:'."\n"
- ."\n"
- .'* GlobalConfig'."\n"
- .'* Close'."\n"
- .'* Open'."\n",
- 'type' => 'string',
- 'enumValueTitles' => [
- 'GlobalConfig' => 'GlobalConfig',
- 'Close' => 'Close',
- 'Open' => 'Open',
- ],
- 'example' => 'Open',
- ],
- 'tlsMax' => [
- 'description' => 'The maximum version of the TLS protocol. Up to TLS 1.3 is supported.'."\n",
- 'type' => 'string',
- 'example' => 'TLS 1.3',
- ],
- 'tlsMin' => [
- 'description' => 'The minimum version of the TLS protocol. Down to TLS 1.0 is supported.'."\n",
- 'type' => 'string',
- 'example' => 'TLS 1.0'."\n",
- ],
- 'createTimestamp' => [
- 'description' => 'The creation timestamp.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- ],
- 'updatetimestamp' => [
- 'description' => 'The update timestamp.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- ],
- 'certName' => [
- 'description' => 'The certificate name.'."\n",
- 'type' => 'string',
- 'example' => 'test-cert',
- ],
- 'sans' => [
- 'description' => 'All domain names that are bound to the certificate.'."\n",
- 'type' => 'string',
- 'example' => 'aliyun.com',
- ],
- 'notAfterTimstamp' => [
- 'description' => 'The expiration time of the certificate.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- ],
- 'notBeforeTimestamp' => [
- 'description' => 'The time when the certificate started to take effect.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- ],
- 'algorithm' => [
- 'description' => 'The encryption algorithm.'."\n",
- 'type' => 'string',
- 'example' => 'RSA',
- ],
- 'issuer' => [
- 'description' => 'The certificate issuer.'."\n",
- 'type' => 'string',
- 'example' => 'Alibaba',
- ],
- 'resourceGroupId' => [
- 'description' => 'The resource group ID.'."\n",
- 'type' => 'string',
- 'example' => 'rg-aekzvlxzgo5b4si',
- ],
- 'statisticsInfo' => [
- 'description' => 'The information about online resources.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'totalCount' => [
- 'description' => 'The total number of resources.'."\n",
- 'type' => 'string',
- 'example' => '1',
- ],
- 'resourceStatistics' => [
- 'description' => 'The resource statistics.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'The resource statistics.'."\n",
- '$ref' => '#/components/schemas/ResourceStatistic',
- ],
- ],
- ],
- ],
- 'tlsCipherSuitesConfig' => [
- 'description' => 'The cipher suite configuration.'."\n",
- '$ref' => '#/components/schemas/TlsCipherSuitesConfig',
- ],
- 'mTLSEnabled' => [
- 'description' => 'Indicates whether mutual authentication is enabled.'."\n"
- ."\n"
- .'Valid values:'."\n"
- ."\n"
- .'* false'."\n"
- .'* true'."\n",
- 'type' => 'boolean',
- 'enumValueTitles' => [
- 'false' => 'false',
- 'true' => 'true',
- ],
- 'example' => 'false',
- ],
- 'clientCACert' => [
- 'description' => 'The client CA certificate.'."\n",
- 'type' => 'string',
- 'example' => '-----BEGIN CERTIFICATE-----'."\n"
- .'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/mpTQwDQYJKoZIhvcNAQEL'."\n"
- .'BxSbrGeJ8i0576Gn7Qezyho9abZOUhGaPeoB'."\n"
- .'AIHWWl428uUSG/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'."\n"
- .'yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy+ZMJ8r4swA4swHwYDVR0jBBgwFoAU'."\n"
- .'qroVyYKk7ylhcSn+ZMJ8r4swA4swDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0B'."\n"
- .'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx='."\n"
- .'-----END CERTIFICATE-----',
+ 'NextToken' => ['title' => '', 'description' => 'The token for the next query. An empty NextToken indicates that no more results exist.', 'type' => 'string', 'example' => 'caeb235b-xxx'],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '59F86F37-787A-52DB-9475-DB5A255517F0', 'title' => ''],
+ 'TagResources' => [
+ 'title' => '',
+ 'description' => 'The list of resources.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'object',
+ 'type' => 'object',
+ 'properties' => [
+ 'ResourceType' => ['title' => '', 'description' => 'The resource type.', 'type' => 'string', 'example' => 'gateway'],
+ 'TagValue' => ['title' => '', 'description' => 'The label value.', 'type' => 'string', 'example' => 'prod'],
+ 'ResourceId' => ['title' => '', 'description' => 'The resource ID.', 'type' => 'string', 'example' => 'gw-xxx'],
+ 'TagKey' => ['title' => '', 'description' => 'The label key.', 'type' => 'string', 'example' => 'env'],
],
+ 'title' => '',
+ 'example' => '',
],
- ],
- 'code' => [
- 'description' => 'The status code returned.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3ACFC7A7-45A9-58CF-B2D5-765B60254695\\",\\n \\"data\\": {\\n \\"domainId\\": \\"d-cq1m3utlhtgvgkv7sitg\\",\\n \\"name\\": \\"abc.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"createFrom\\": \\"Console\\",\\n \\"forceHttps\\": false,\\n \\"certIdentifier\\": \\"2382***-cn-hangzhou\\",\\n \\"caCertIdentifier\\": \\"8237***-cn-hangzhou\\",\\n \\"default\\": false,\\n \\"http2Option\\": \\"Open\\",\\n \\"tlsMax\\": \\"TLS 1.3\\",\\n \\"tlsMin\\": \\"TLS 1.0\\\\n\\",\\n \\"createTimestamp\\": 1719386834548,\\n \\"updatetimestamp\\": 1719386834548,\\n \\"certName\\": \\"test-cert\\",\\n \\"sans\\": \\"aliyun.com\\",\\n \\"notAfterTimstamp\\": 1719386834548,\\n \\"notBeforeTimestamp\\": 1719386834548,\\n \\"algorithm\\": \\"RSA\\",\\n \\"issuer\\": \\"Alibaba\\",\\n \\"resourceGroupId\\": \\"rg-aekztduhoagat4y\\",\\n \\"statisticsInfo\\": {\\n \\"totalCount\\": \\"30\\",\\n \\"resourceStatistics\\": [\\n {\\n \\"resourceType\\": \\"\\",\\n \\"resourceCount\\": 0\\n }\\n ]\\n },\\n \\"tlsCipherSuitesConfig\\": {\\n \\"configType\\": \\"\\",\\n \\"tlsCipherSuite\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"supportVersions\\": [\\n \\"\\"\\n ]\\n }\\n ]\\n },\\n \\"mTLSEnabled\\": false,\\n \\"clientCACert\\": \\"-----BEGIN CERTIFICATE-----\\\\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/mpTQwDQYJKoZIhvcNAQEL\\\\nBxSbrGeJ8i0576Gn7Qezyho9abZOUhGaPeoB\\\\nAIHWWl428uUSG/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\\\\nyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy+ZMJ8r4swA4swHwYDVR0jBBgwFoAU\\\\nqroVyYKk7ylhcSn+ZMJ8r4swA4swDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0B\\\\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=\\\\n-----END CERTIFICATE-----\\"\\n },\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'GetDomain',
- 'translator' => 'machine',
- ],
- 'CreateDomain' => [
- 'summary' => 'Creates a domain name.',
- 'path' => '/v1/domains',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Retrieve resource label list',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListTagResources',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"caeb235b-xxx\\",\\n \\"RequestId\\": \\"59F86F37-787A-52DB-9475-DB5A255517F0\\",\\n \\"TagResources\\": [\\n {\\n \\"ResourceType\\": \\"gateway\\",\\n \\"TagValue\\": \\"prod\\",\\n \\"ResourceId\\": \\"gw-xxx\\",\\n \\"TagKey\\": \\"env\\"\\n }\\n ]\\n}","type":"json"}]',
+ ],
+ 'ListZones' => [
+ 'summary' => 'Retrieves the zones available for a cloud-native API gateway in a specific region.',
+ 'path' => '/v1/zones',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'write',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '218988',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayLPOSXV',
- ],
- 'tenantRelevance' => 'publicInformation',
+ 'abilityTreeCode' => '226563',
+ 'abilityTreeNodes' => ['FEATUREapigatewayC93I4Z'],
],
'parameters' => [
[
- 'name' => 'body',
- 'in' => 'body',
- 'style' => 'json',
- 'schema' => [
- 'description' => 'The request body parameters.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'name' => [
- 'description' => 'The domain name.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'abc.com',
- ],
- 'protocol' => [
- 'description' => 'The protocol type supported by the domain name.'."\n"
- ."\n"
- .'* HTTP: HTTP only'."\n"
- .'* HTTPS: HTTPS only'."\n",
- 'type' => 'string',
- 'required' => true,
- 'enumValueTitles' => [
- 'HTTPS' => 'HTTPS',
- 'HTTP' => 'HTTP',
- ],
- 'example' => 'HTTP',
- ],
- 'forceHttps' => [
- 'description' => 'Specifies whether to enable forced HTTP to HTTPS redirection.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
- 'mTLSEnabled' => [
- 'title' => '是否开启mtls双向认证,true | false',
- 'description' => 'Specifies whether to enable mutual Transport Layer Security (mTLS) authentication.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- ],
- 'certIdentifier' => [
- 'description' => 'The certificate identifier.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '1ef1da5f-38ed-69b3-****-037781890265'."\n",
- ],
- 'caCertIdentifier' => [
- 'description' => 'The CA certificate ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '1ef1da5f-38ed-69b3-****-037781890265'."\n",
- ],
- 'clientCACert' => [
- 'title' => '客户端CA证书',
- 'description' => 'The client CA certificate content.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '-----BEGIN CERTIFICATE-----'."\n"
- .'MIIFBTCCAu2gAwIBAgIUORLpYPGSFD1YOP6PMbE7Wd/mpTQwDQYJKoZIhvcNAQEL'."\n"
- .'BQAwE************************************************2VwVOJ2gqX3'."\n"
- .'YuGaxvIbDy0iQJ1GMerPRyzJTeVEtdIKT29u0PdFRr4KZWom35qX7G4='."\n"
- .'-----END CERTIFICATE-----',
- ],
- 'http2Option' => [
- 'description' => 'HTTP/2 configuration options.'."\n"
- ."\n"
- .'Valid values:'."\n"
- ."\n"
- .'* GlobalConfig'."\n"
- .'* Close'."\n"
- .'* Open'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'GlobalConfig' => 'GlobalConfig',
- 'Close' => 'Close',
- 'Open' => 'Open',
- ],
- 'example' => 'Open',
- ],
- 'tlsMax' => [
- 'description' => 'The maximum TLS protocol version (up to TLS 1.3).'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TLS1.3',
- ],
- 'tlsMin' => [
- 'description' => 'The minimum TLS protocol version (minimum TLS 1.0).'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TLS1.0',
- ],
- 'resourceGroupId' => [
- 'description' => 'The [resource group ID](~~151181~~).'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rg-aekzoiafjtr7zyq',
- ],
- 'tlsCipherSuitesConfig' => [
- 'description' => 'The cipher suite configuration.'."\n",
- 'required' => false,
- '$ref' => '#/components/schemas/TlsCipherSuitesConfig',
- ],
- 'gatewayType' => [
- 'description' => 'The gateway type.'."\n"
- ."\n"
- .'Valid values:'."\n"
- ."\n"
- .'* AI'."\n"
- .'* API'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'AI' => 'AI',
- 'API' => 'API',
- ],
- 'example' => 'API',
- ],
- ],
- 'required' => false,
- ],
+ 'name' => 'gatewayEdition',
+ 'in' => 'query',
+ 'schema' => ['title' => '', 'description' => 'The target gateway edition for querying zones. Valid values:'."\n"
+ .'- Professional: standard gateway. This is the default value.'."\n"
+ .'- ServerlessV2: API multi-tenant Serverless V2.'."\n"
+ ."\n"
+ .'If this parameter is not specified, Professional is used.', 'type' => 'string', 'required' => false, 'example' => 'ServerlessV2'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'The response struct.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID, which is used to trace the API call link.'."\n",
- 'type' => 'string',
- 'example' => '0C2D1C68-0D93-5561-8EE6-FDB7BF067A30',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'E8079207-B651-592A-A565-23E9EE5673B0'],
+ 'code' => ['title' => '', 'description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok'],
+ 'message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'success'],
'data' => [
- 'description' => 'The response data.'."\n",
+ 'title' => '',
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'domainId' => [
- 'description' => 'The ID of the domain name.'."\n",
- 'type' => 'string',
- 'example' => 'd-cpu1aullhtgkidg7sa4g',
+ 'items' => [
+ 'title' => '',
+ 'description' => 'The list of zones.',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '',
+ 'description' => 'The zone ID.',
+ 'type' => 'object',
+ 'properties' => [
+ 'zoneId' => ['title' => '', 'description' => 'The zone ID.', 'type' => 'string', 'example' => 'cn-shenzhen-c'],
+ 'supportQat' => ['description' => 'Indicates whether QuickAssist Technology (QAT) is supported.', 'type' => 'string', 'example' => 'true', 'title' => ''],
+ ],
+ 'example' => '',
+ ],
+ 'example' => '',
],
],
- ],
- 'code' => [
- 'description' => 'The status code returned.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"0C2D1C68-0D93-5561-8EE6-FDB7BF067A30\\",\\n \\"data\\": {\\n \\"domainId\\": \\"d-cpu1aullhtgkidg7sa4g\\"\\n },\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'CreateDomain',
- 'description' => 'Create Domain.',
- 'translator' => 'machine',
- ],
- 'ListDomains' => [
- 'summary' => 'Queries a list of domain names.',
- 'path' => '/v1/domains',
- 'methods' => [
- 'get',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"E8079207-B651-592A-A565-23E9EE5673B0\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"items\\": [\\n {\\n \\"zoneId\\": \\"cn-shenzhen-c\\",\\n \\"supportQat\\": \\"true\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => 'Get zones',
+ 'changeSet' => [
+ ['createdAt' => '2025-07-03T11:00:33.000Z', 'description' => 'Response parameters changed'],
],
- 'schemes' => [
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListZones'],
+ ],
],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListZones',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'QueryConsumerAuthorizationRules' => [
+ 'summary' => 'Queries the list of consumer authorization rules.',
+ 'path' => '/v1/authorization-rules',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -22352,154 +15428,177 @@
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '219198',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayLPOSXV',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '260503',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
],
'parameters' => [
[
- 'name' => 'nameLike',
+ 'name' => 'apiNameLike',
'in' => 'query',
- 'schema' => [
- 'description' => 'The domain name keyword for fuzzy search.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test',
- ],
+ 'schema' => ['description' => 'The API name.', 'type' => 'string', 'required' => false, 'example' => 'api-xx', 'title' => ''],
+ ],
+ [
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'pageSize',
'in' => 'query',
- 'schema' => [
- 'description' => 'The number of entries per page. Default value: 10.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
+ 'schema' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''],
],
[
- 'name' => 'pageNumber',
+ 'name' => 'consumerId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The page number of the page to return. Default value: 1.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'The consumer ID.', 'type' => 'string', 'required' => false, 'example' => 'cs-ct21c16m1hkp64hk6qmg', 'title' => ''],
],
[
- 'name' => 'gatewayId',
+ 'name' => 'principalType',
'in' => 'query',
- 'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-xxx',
- ],
+ 'schema' => ['title' => '', 'description' => 'The principal type. Valid values: Consumer or ConsumerGroup.', 'type' => 'string', 'example' => 'ConsumerGroup', 'required' => false],
],
[
- 'name' => 'resourceGroupId',
+ 'name' => 'consumerGroupId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The ID of the resource group.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rg-ahr5uil8raz0rq3b',
- ],
+ 'schema' => ['title' => '', 'description' => 'The consumer group ID. If specified, the authorization rules of the consumer group are queried.', 'type' => 'string', 'example' => 'csg-8c13d2b4f8a1', 'required' => false],
],
[
- 'name' => 'gatewayType',
+ 'name' => 'resourceId',
'in' => 'query',
- 'schema' => [
- 'description' => 'The gateway type to filter. Valid values: **AI** and **API**.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'AI' => 'AI',
- 'API' => 'API',
- ],
- 'example' => 'API',
- ],
+ 'schema' => ['description' => 'The resource ID.', 'type' => 'string', 'required' => false, 'example' => 'ha-cn-li942gy8p03', 'title' => ''],
+ ],
+ [
+ 'name' => 'resourceType',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The resource type.', 'type' => 'string', 'required' => false, 'example' => 'HttpApiRoute', 'title' => ''],
+ ],
+ [
+ 'name' => 'environmentId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The environment ID.', 'type' => 'string', 'required' => false, 'example' => 'env-cpqnr6tlhtgubc***', 'title' => ''],
+ ],
+ [
+ 'name' => 'groupByApi',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Specifies whether to group results by API.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ [
+ 'name' => 'parentResourceId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The parent resource ID.', 'type' => 'string', 'required' => false, 'example' => 'ha-cn-li942gy8p01', 'title' => ''],
+ ],
+ [
+ 'name' => 'consumerNameLike',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The consumer name.', 'type' => 'string', 'required' => false, 'example' => 'consumer-xxx', 'title' => ''],
+ ],
+ [
+ 'name' => 'resourceTypes',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The service source type.', 'type' => 'string', 'required' => false, 'example' => 'K8S', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response body.'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID, which is used to trace the API call link.'."\n",
- 'type' => 'string',
- 'example' => 'C61E30D3-579A-5B43-994E-31E02EDC9129',
- ],
- 'code' => [
- 'description' => 'The status code returned.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'A60EE5CA-1294-532A-9775-8D2FD1C6EFBF'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'Response parameters.'."\n",
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'pageNumber' => [
- 'description' => 'The page number of the returned page.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'pageSize' => [
- 'description' => 'The number of entries per page.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
- 'totalSize' => [
- 'description' => 'The total number of entries returned.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '9',
- ],
+ 'totalSize' => ['description' => 'The total number of entries.', 'type' => 'string', 'example' => '6', 'title' => ''],
+ 'pageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''],
+ 'pageSize' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''],
'items' => [
- 'description' => 'The list of domain information.'."\n",
+ 'description' => 'The list of consumer rules.',
'type' => 'array',
'items' => [
- 'description' => 'A domain name.'."\n",
- '$ref' => '#/components/schemas/DomainInfo',
+ 'description' => 'The details of the consumer authentication rule.',
+ 'type' => 'object',
+ 'properties' => [
+ 'consumerAuthorizationRuleId' => ['description' => 'The consumer authorization rule ID.', 'type' => 'string', 'example' => 'car-csgeka5lhtggrjcprok0', 'title' => ''],
+ 'principalType' => ['title' => '', 'description' => 'The principal type. Valid values: Consumer or ConsumerGroup.', 'type' => 'string', 'example' => 'ConsumerGroup'],
+ 'consumerId' => ['description' => 'The consumer ID.', 'type' => 'string', 'example' => 'cs-csheiftlhtgmp0j0hp4g', 'title' => ''],
+ 'consumerGroupId' => ['title' => '', 'description' => 'The consumer group ID. This field is returned for consumer group authorization rules.', 'type' => 'string', 'example' => 'csg-8c13d2b4f8a1'],
+ 'apiInfo' => ['description' => 'The API information.', '$ref' => '#/components/schemas/HttpApiApiInfo', 'title' => '', 'example' => ''],
+ 'environmentInfo' => ['description' => 'The environment context.', '$ref' => '#/components/schemas/EnvironmentInfo', 'title' => '', 'example' => ''],
+ 'gatewayInfo' => ['description' => 'The gateway information.', '$ref' => '#/components/schemas/GatewayInfo', 'title' => '', 'example' => ''],
+ 'resourceId' => ['description' => 'The resource ID.', 'type' => 'string', 'example' => '2351944', 'title' => ''],
+ 'resourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'HttpApiRoute', 'title' => ''],
+ 'expireStatus' => ['description' => 'The expiration status.', 'type' => 'string', 'example' => 'InEffect', 'title' => ''],
+ 'expireMode' => ['description' => 'The expiration mode. Valid values:'."\n"
+ .'- LongTerm'."\n"
+ .'- ShortTerm', 'type' => 'string', 'example' => 'ShortTerm', 'title' => ''],
+ 'expireTimestamp' => ['description' => 'The expiration time.', 'type' => 'integer', 'format' => 'int64', 'example' => '172086834548', 'title' => ''],
+ 'createTimestamp' => ['description' => 'The creation timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548', 'title' => ''],
+ 'updateTimestamp' => ['description' => 'The update timestamp. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719386834548', 'title' => ''],
+ 'deployStatus' => ['description' => 'The publish status of the API in the current environment.', 'type' => 'string', 'example' => '{}', 'title' => ''],
+ 'consumerInfo' => ['description' => 'The consumer information.', '$ref' => '#/components/schemas/ConsumerInfo', 'title' => '', 'example' => ''],
+ 'consumerGroupInfo' => ['title' => '', 'description' => 'The consumer group information. This field is returned for consumer group authorization rules.', '$ref' => '#/components/schemas/ConsumerGroupInfo', 'example' => ''],
+ 'resourceInfo' => [
+ 'description' => 'The resource information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'route' => ['description' => 'The routing rule.', '$ref' => '#/components/schemas/HttpRoute', 'title' => '', 'example' => ''],
+ 'operationInfo' => ['description' => 'The API operation information.', '$ref' => '#/components/schemas/HttpApiOperationInfo', 'title' => '', 'example' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"A60EE5CA-1294-532A-9775-8D2FD1C6EFBF\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"totalSize\\": \\"6\\",\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"items\\": [\\n {\\n \\"consumerAuthorizationRuleId\\": \\"car-csgeka5lhtggrjcprok0\\",\\n \\"principalType\\": \\"ConsumerGroup\\",\\n \\"consumerId\\": \\"cs-csheiftlhtgmp0j0hp4g\\",\\n \\"consumerGroupId\\": \\"csg-8c13d2b4f8a1\\",\\n \\"apiInfo\\": {\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"basePath\\": \\"/v1\\",\\n \\"description\\": \\"测试专用API\\",\\n \\"versionInfo\\": {\\n \\"enable\\": true,\\n \\"scheme\\": \\"Query\\",\\n \\"headerName\\": \\"my-version\\",\\n \\"queryName\\": \\"myVersion\\",\\n \\"version\\": \\"v1\\"\\n },\\n \\"ingressInfo\\": {\\n \\"sourceId\\": \\"src-xxx\\",\\n \\"ingressClass\\": \\"mse\\",\\n \\"watchNamespace\\": \\"default\\",\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"env-xxx\\"\\n },\\n \\"k8sClusterInfo\\": {\\n \\"clusterId\\": \\"ca435c77cba1547cca9311957bcxxxxxx\\"\\n },\\n \\"overrideIngressIp\\": true\\n },\\n \\"type\\": \\"Rest\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"enableAuth\\": false,\\n \\"authConfig\\": {\\n \\"authType\\": \\"Jwt\\",\\n \\"authMode\\": \\"NoAuth\\"\\n },\\n \\"gatewayId\\": \\"gw-cpv4sqdl****\\",\\n \\"modelCategory\\": \\"Text\\",\\n \\"protocols\\": [\\n \\"HTTP\\"\\n ],\\n \\"environments\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"backendType\\": \\"Service\\",\\n \\"serviceConfigs\\": [\\n {\\n \\"gatewayServiceId\\": \\"gs-xxx\\",\\n \\"name\\": \\"demo-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": \\"8080\\",\\n \\"weight\\": 100,\\n \\"version\\": \\"v1\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"serviceId\\": \\"svc-xxx\\"\\n }\\n ],\\n \\"customDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"test\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n }\\n ],\\n \\"aiProtocols\\": [\\n \\"OpenAI/v1\\"\\n ],\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"Mock测试\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"envDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"INQUIRY\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 80,\\n \\"protocol\\": \\"HTTP\\",\\n \\"gatewayServiceId\\": \\"gw-svc-abc123\\",\\n \\"name\\": \\"Qwen-Max-Service\\",\\n \\"version\\": \\"V2\\",\\n \\"multiServiceRouteStrategy\\": \\"ByWeight\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"LeastBusy\\",\\n \\"rateLimit\\": 0.8,\\n \\"queueSize\\": 100\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {}\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cshee6dlhtgk******\\",\\n \\"name\\": \\"hello-server.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"envDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-env-xxx\\",\\n \\"name\\": \\"api.example.com\\",\\n \\"protocol\\": \\"HTTPS\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-csmn42um******\\",\\n \\"name\\": \\"test\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Intranet\\"\\n }\\n ],\\n \\"builtinRouteNames\\": [\\n \\"[\\\\\\"chat\\\\\\",\\\\\\"completions\\\\\\"]\\"\\n ]\\n }\\n ],\\n \\"deployCntMap\\": {\\n \\"key\\": {\\n \\"deployedCnt\\": 3,\\n \\"cnt\\": 0\\n }\\n },\\n \\"agentProtocols\\": [\\n \\"DashScope\\"\\n ]\\n },\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"env-cq7l5s5lhtgi6qasrdc0\\",\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"测试环境\\",\\n \\"description\\": \\"这是xxx的xx项目测试环境\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"subDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cpudb0llhtgl2djvq2sg\\",\\n \\"name\\": \\"abc.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Intranet\\"\\n }\\n ],\\n \\"default\\": false,\\n \\"createTimestamp\\": 1721116090326,\\n \\"updateTimestamp\\": 1721116090326,\\n \\"resourceGroupId\\": \\"rg-xxxx\\"\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cq7og15lhtgi6qasrj60\\",\\n \\"name\\": \\"apitest-gw\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"vpc-uf664nyle5kh***\\",\\n \\"name\\": \\"商品中心预发环境专有网络\\"\\n },\\n \\"engineVersion\\": \\"2.0.7\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"resourceId\\": \\"2351944\\",\\n \\"resourceType\\": \\"HttpApiRoute\\",\\n \\"expireStatus\\": \\"InEffect\\",\\n \\"expireMode\\": \\"ShortTerm\\",\\n \\"expireTimestamp\\": 172086834548,\\n \\"createTimestamp\\": 1719386834548,\\n \\"updateTimestamp\\": 1719386834548,\\n \\"deployStatus\\": \\"{}\\",\\n \\"consumerInfo\\": {\\n \\"consumerId\\": \\"cs-ctd4l1um1hkph7ki1k80\\",\\n \\"name\\": \\"test\\",\\n \\"enable\\": false\\n },\\n \\"consumerGroupInfo\\": {\\n \\"consumerGroupId\\": \\"csg-8c13d2b4f8a1\\",\\n \\"name\\": \\"api-consumer-group\\",\\n \\"gatewayType\\": \\"API\\"\\n },\\n \\"resourceInfo\\": {\\n \\"route\\": {\\n \\"routeId\\": \\"hr-crf5l7tlhtgp91t***\\",\\n \\"name\\": \\"itemcenter-pre-route\\",\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"description\\": \\"商品中心预发路由\\",\\n \\"match\\": {\\n \\"ignoreUriCase\\": true,\\n \\"path\\": {\\n \\"type\\": \\"Prefix\\",\\n \\"value\\": \\"/user\\"\\n },\\n \\"headers\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"dev\\",\\n \\"value\\": \\"true\\"\\n }\\n ],\\n \\"methods\\": [\\n \\"GET\\"\\n ],\\n \\"queryParams\\": [\\n {\\n \\"type\\": \\"Exact\\",\\n \\"name\\": \\"age\\",\\n \\"value\\": \\"17\\"\\n }\\n ]\\n },\\n \\"backend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"env-crhq1u5lhtgju***\\",\\n \\"name\\": \\"itemcenter-pre\\",\\n \\"alias\\": \\"商品中心预发环境\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-cqoohqtlh***\\",\\n \\"name\\": \\"itemcenter-gateway\\",\\n \\"gatewayEdition\\": \\"MultiTenantServerless\\"\\n },\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-cqu19hdlhtgjuv4***\\",\\n \\"name\\": \\"env-crmic3llht***-cn-hangzhou-vpc.alicloudapi.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n },\\n \\"createTimestamp\\": 1726649310593,\\n \\"updateTimestamp\\": 1726819895636,\\n \\"mcpServerInfo\\": {\\n \\"importInstanceId\\": \\"import-001\\",\\n \\"importNamespace\\": \\"default\\",\\n \\"importMcpServerId\\": \\"mcp-002\\",\\n \\"createFromType\\": \\"Nacos\\",\\n \\"mcpServerConfig\\": \\"{\\\\\\\\\\\\\\"config\\\\\\\\\\\\\\":{}}\\",\\n \\"mcpRouteConfig\\": {\\n \\"protocol\\": \\"SSE\\",\\n \\"exposedUriPath\\": \\"/mcp\\"\\n }\\n },\\n \\"domainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cr3v7dllhtgi9s***\\",\\n \\"name\\": \\"itemcenter.dev\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"gatewayStatus\\": {\\n \\"key\\": \\"Running\\"\\n },\\n \\"builtin\\": \\"true\\"\\n },\\n \\"operationInfo\\": {\\n \\"operationId\\": \\"op-xxx\\",\\n \\"method\\": \\"GET\\",\\n \\"name\\": \\"GetUserInfo\\",\\n \\"path\\": \\"/user/123\\",\\n \\"description\\": \\"获取用户信息\\",\\n \\"response\\": {\\n \\"contentType\\": \\"application/json\\",\\n \\"items\\": [\\n {\\n \\"code\\": 200,\\n \\"example\\": \\"{\\\\\\"result\\\\\\": \\\\\\"ok\\\\\\"}\\",\\n \\"description\\": \\"正常接口响应\\",\\n \\"jsonSchema\\": \\"{\\\\n \\\\\\"type\\\\\\": \\\\\\"object\\\\\\",\\\\n \\\\\\"required\\\\\\": [\\\\n \\\\\\"result\\\\\\"\\\\n ],\\\\n \\\\\\"properties\\\\\\": {\\\\n \\\\\\"result\\\\\\": {\\\\n \\\\\\"type\\\\\\": \\\\\\"string\\\\\\",\\\\n \\\\\\"description\\\\\\": \\\\\\"操作结果,\'ok\' 表示成功\\\\\\"\\\\n }\\\\n }\\\\n}\\"\\n }\\n ]\\n },\\n \\"request\\": {\\n \\"headerParameters\\": [\\n {\\n \\"name\\": \\"userId\\",\\n \\"required\\": true,\\n \\"type\\": \\"String\\",\\n \\"defaultValue\\": \\"123\\",\\n \\"exampleValue\\": \\"123\\",\\n \\"description\\": \\"用户ID\\"\\n }\\n ],\\n \\"queryParameters\\": [\\n {\\n \\"name\\": \\"userId\\",\\n \\"required\\": true,\\n \\"type\\": \\"String\\",\\n \\"defaultValue\\": \\"123\\",\\n \\"exampleValue\\": \\"123\\",\\n \\"description\\": \\"用户ID\\"\\n }\\n ],\\n \\"pathParameters\\": [\\n {\\n \\"name\\": \\"userId\\",\\n \\"required\\": true,\\n \\"type\\": \\"String\\",\\n \\"defaultValue\\": \\"123\\",\\n \\"exampleValue\\": \\"123\\",\\n \\"description\\": \\"用户ID\\"\\n }\\n ],\\n \\"body\\": {\\n \\"description\\": \\"body参数描述\\",\\n \\"example\\": \\"{\\\\\\"result\\\\\\":\\\\\\"ok\\\\\\"}\\",\\n \\"contentType\\": \\"application/json\\",\\n \\"jsonSchema\\": \\"{\\\\n \\\\\\"type\\\\\\": \\\\\\"object\\\\\\",\\\\n \\\\\\"required\\\\\\": [\\\\n \\\\\\"result\\\\\\"\\\\n ],\\\\n \\\\\\"properties\\\\\\": {\\\\n \\\\\\"result\\\\\\": {\\\\n \\\\\\"type\\\\\\": \\\\\\"string\\\\\\",\\\\n \\\\\\"description\\\\\\": \\\\\\"操作结果,\'ok\' 表示成功\\\\\\"\\\\n }\\\\n }\\\\n}\\\\n\\"\\n }\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"Mock测试\\"\\n },\\n \\"createTimestamp\\": 1719386834548,\\n \\"enableAuth\\": true,\\n \\"authConfig\\": {\\n \\"authType\\": \\"Jwt\\",\\n \\"authMode\\": \\"NoAuth\\"\\n },\\n \\"status\\": \\"Deployed\\",\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"Mock测试\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"envDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"INQUIRY\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 80,\\n \\"protocol\\": \\"HTTP\\",\\n \\"gatewayServiceId\\": \\"gw-svc-abc123\\",\\n \\"name\\": \\"Qwen-Max-Service\\",\\n \\"version\\": \\"V2\\",\\n \\"multiServiceRouteStrategy\\": \\"ByWeight\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"LeastBusy\\",\\n \\"rateLimit\\": 0.8,\\n \\"queueSize\\": 100\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {}\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-cshee6dlhtgk******\\",\\n \\"name\\": \\"hello-server.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"envDomainInfos\\": [\\n {\\n \\"domainId\\": \\"d-env-xxx\\",\\n \\"name\\": \\"api.example.com\\",\\n \\"protocol\\": \\"HTTPS\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-csmn42um******\\",\\n \\"name\\": \\"test\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Intranet\\"\\n }\\n ],\\n \\"builtinRouteNames\\": [\\n \\"[\\\\\\"chat\\\\\\",\\\\\\"completions\\\\\\"]\\"\\n ]\\n }\\n ]\\n }\\n }\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"C61E30D3-579A-5B43-994E-31E02EDC9129\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 9,\\n \\"items\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"status\\": \\"\\",\\n \\"createFrom\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"forceHttps\\": true,\\n \\"updateTimestamp\\": 0,\\n \\"createTimestamp\\": 0,\\n \\"certIdentifier\\": \\"\\",\\n \\"resourceGroupId\\": \\"rg-xxxx\\",\\n \\"mTLSEnabled\\": true,\\n \\"clientCACert\\": \\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'ListDomains',
- 'translator' => 'machine',
- ],
- 'DeleteDomain' => [
- 'summary' => 'Deletes a domain name.',
- 'path' => '/v1/domains/{domainId}',
- 'methods' => [
- 'delete',
+ 'title' => 'Query consumer authorization rules',
+ 'changeSet' => [
+ ['createdAt' => '2025-07-24T12:32:03.000Z', 'description' => 'Request parameters changed'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:QueryConsumerAuthorizationRules',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'RemoveConsumerAuthorizationRule' => [
+ 'path' => '/v1/authorization-rules/{consumerAuthorizationRuleId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -22509,924 +15608,964 @@
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '260504',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
],
'parameters' => [
[
- 'name' => 'domainId',
+ 'name' => 'consumerAuthorizationRuleId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The domain name ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'd-cpqnfn5lhtgqbga95svg',
- ],
+ 'schema' => ['description' => 'The ID of the API consumer authorization rule.', 'type' => 'string', 'required' => false, 'example' => 'car-ctgdn8em1hko5krqq03g', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID, which is used to trace the API call link.'."\n",
- 'type' => 'string',
- 'example' => 'A60EE5CA-1294-532A-9775-8D2FD1C6EFBF',
- ],
- 'code' => [
- 'description' => 'The status code returned.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '5B626361-070A-56A7-B127-ADAC8F3655DB'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Delete an API consumer authorization rule',
+ 'summary' => 'Deletes an API consumer authorization rule.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"A60EE5CA-1294-532A-9775-8D2FD1C6EFBF\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'DeleteDomain',
- 'translator' => 'machine',
- ],
- 'UpdateDomain' => [
- 'summary' => 'Updates a domain name.',
- 'path' => '/v1/domains/{domainId}',
- 'methods' => [
- 'put',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:RemoveConsumerAuthorizationRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'https',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"5B626361-070A-56A7-B127-ADAC8F3655DB\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
+ ],
+ 'ResetGatewayQuotaRule' => [
+ 'summary' => 'Resets a quota throttling rule on a gateway.',
+ 'path' => '/v1/gateways/{gatewayId}/quota-rules/{ruleId}/reset',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '219210',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayLPOSXV',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '222348',
+ 'abilityTreeNodes' => ['FEATUREapigatewayC93I4Z'],
+ 'tenantRelevance' => 'tenant',
],
'parameters' => [
[
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The unique identifier of the gateway.', 'type' => 'string', 'required' => false, 'example' => 'gw-123456'],
+ ],
+ [
+ 'name' => 'ruleId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The ID of the rule.', 'type' => 'string', 'required' => false, 'example' => 'qr-d8j7fpmm1hksxxxxxx'],
+ ],
+ [
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
- 'description' => 'The request body.'."\n",
+ 'title' => '',
+ 'description' => 'The request body.',
'type' => 'object',
'properties' => [
- 'protocol' => [
- 'description' => 'The protocol type to be supported by the domain name. Valid values:'."\n"
- ."\n"
- .'* HTTP'."\n"
- .'* HTTPS'."\n",
- 'type' => 'string',
- 'required' => true,
- 'enumValueTitles' => [
- 'HTTPS' => 'HTTPS',
- 'HTTP' => 'HTTP',
- ],
- 'example' => 'HTTP',
- ],
- 'forceHttps' => [
- 'description' => 'Specifies whether to enable forcible HTTPS redirection. If protocol is set to HTTPS, forceHttps is required.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
- ],
- 'mTLSEnabled' => [
- 'title' => '是否支持mTLS双向认证,true | false',
- 'description' => 'Specifies whether to enable mutual TLS (mTLS) authentication.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- ],
- 'certIdentifier' => [
- 'description' => 'The certificate ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '1ef1da5f-38ed-69b3-****-037781890265'."\n",
- ],
- 'caCertIdentifier' => [
- 'description' => 'The CA certificate ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '1ef1da5f-38ed-69b3-****-037781890265'."\n",
- ],
- 'clientCACert' => [
- 'title' => '客户端CA证书公钥',
- 'description' => 'The client CA certificate.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '-----BEGIN CERTIFICATE-----'."\n"
- .'MIIFBTCCAu2gAwIBAgIUORLpYPGSFD1YOP6PMbE7Wd/mpTQwDQYJKoZIhvcNAQEL'."\n"
- .'BQAwE************************************************2VwVOJ2gqX3'."\n"
- .'YuGaxvIbDy0iQJ1GMerPRyzJTeVEtdIKT29u0PdFRr4KZWom35qX7G4='."\n"
- .'-----END CERTIFICATE-----',
- ],
- 'http2Option' => [
- 'description' => 'The HTTP/2 configuration.'."\n"
- ."\n"
- .'Enumerated values:'."\n"
- ."\n"
- .'* GlobalConfig'."\n"
- .'* Close'."\n"
- .'* Open'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'GlobalConfig' => 'GlobalConfig',
- 'Close' => 'Close',
- 'Open' => 'Open',
- ],
- 'example' => 'Open',
- ],
- 'tlsMax' => [
- 'description' => 'The maximum TLS version. Up to TLS 1.3 is supported.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TLS 1.3',
- ],
- 'tlsMin' => [
- 'description' => 'The minimum TLS version. Down to TLS 1.0 is supported.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'TLS 1.0',
- ],
- 'tlsCipherSuitesConfig' => [
- 'description' => 'The cipher suite configuration.'."\n",
- 'required' => false,
- '$ref' => '#/components/schemas/TlsCipherSuitesConfig',
- ],
+ 'quotaLimit' => ['title' => '', 'description' => 'The total available quota per period after the reset.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1000'],
+ 'windowAlignment' => ['title' => '', 'description' => 'The period alignment type after the reset. Valid values:'."\n"
+ .'- calendar: calendar period.'."\n"
+ .'- epoch: custom period. Custom periods are supported only on dedicated instances running version 2.1.19 or later.', 'type' => 'string', 'required' => false, 'example' => 'calendar'],
+ 'periodType' => ['title' => '', 'description' => 'The period type. Calendar periods support daily, weekly, and monthly statistics. Valid values: day, week, and month. Custom periods support only daily statistics. The value is fixed to day.', 'type' => 'string', 'required' => false, 'example' => 'week'],
+ 'periodMultiplier' => ['title' => '', 'description' => 'The period multiplier, which specifies the number of periods after which the quota is reset. This parameter is returned when the rule uses a custom period. Minimum value: 1. Maximum value: 60.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1'],
+ 'timezone' => ['title' => '', 'description' => 'The time zone for the calendar period, in UTC+x format.', 'type' => 'string', 'required' => false, 'example' => 'UTC+8'],
+ 'dryRun' => ['title' => '', 'description' => 'Specifies whether to perform only a dry run without persisting or applying the configuration. A dry run checks whether conflicting rules exist on the bound consumers. For example, a consumer that already has a calendar-day quota cannot have another calendar-day quota rule added.', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
+ 'overwrite' => ['title' => '', 'description' => 'Specifies whether to allow overwriting when conflicts exist. If overwriting is allowed, the conflicting entity (consumer) is unbound from the old rule and bound to the new rule.', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
+ 'conflictHash' => ['title' => '', 'description' => 'The conflict snapshot hash, used to prevent concurrent dirty overwrites during a confirmed overwrite. Obtain this value from the response of a previous dry run (dryRun=true).'."\n"
+ ."\n"
+ .'You do not need to specify this parameter in the following cases: no conflicts exist, you are performing a dry run (dryRun=true), or you set overwrite to false.'."\n"
+ ."\n"
+ .'If dryRun is set to false and overwrite is set to true but this parameter is not specified or the value has expired, the backend returns accepted=false with a new conflict preview. You must perform a new dry run to confirm the updated conflicts.', 'type' => 'string', 'required' => false, 'example' => 'f8f44dc6cf369a017d56b7197eb4fb5ac4bbb6b09a92b9b41999541fxxxxxxxx'],
],
'required' => false,
- ],
- ],
- [
- 'name' => 'domainId',
- 'in' => 'path',
- 'schema' => [
- 'description' => 'The domain ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'd-cpqnfn5lhtgqbga95sv1',
+ 'example' => '{\'key\': \'value\'}',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response body.'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID. You can use this value to trace the API call.'."\n",
- 'type' => 'string',
- 'example' => '4BACB05C-3FE2-588F-9148-700C5C026B74',
- ],
- 'code' => [
- 'description' => 'The status code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The returned message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The unique identifier of the request.', 'type' => 'string', 'example' => '1234567890'],
+ 'code' => ['title' => '', 'description' => 'The status code or error code.', 'type' => 'string', 'example' => '200, 404, 500'],
+ 'message' => ['title' => '', 'description' => 'The message content.', 'type' => 'string', 'example' => '你好,世界!'],
'data' => [
- 'description' => 'The response parameters.'."\n",
+ 'title' => '',
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'deployRevisionId' => [
- 'description' => 'The released version ID.'."\n",
- 'type' => 'string',
- 'example' => 'apr-xxx',
+ 'ruleId' => ['title' => '', 'description' => 'The ID of the rule.', 'type' => 'string', 'example' => 'qr-d8j7fpmm1hks65xxxx'],
+ 'dryRun' => ['title' => '', 'description' => 'Indicates whether this is a dry run.', 'type' => 'boolean', 'example' => 'false'],
+ 'accepted' => ['title' => '', 'description' => 'Indicates whether the write request is accepted by the system. A value of false typically indicates a retryable scenario, such as an unconfirmed conflict overwrite.', 'type' => 'boolean', 'example' => 'true'],
+ 'conflictPreview' => [
+ 'title' => '',
+ 'description' => 'The conflict preview.',
+ 'type' => 'object',
+ 'properties' => [
+ 'totalConflictCount' => ['title' => '', 'description' => 'The total number of conflicts.', 'type' => 'integer', 'format' => 'int32', 'example' => '20'],
+ 'conflictHash' => ['title' => '', 'description' => 'The hash of the conflict snapshot.', 'type' => 'string', 'example' => 'f8f44dc6cf369a017d56b7197eb4fb5ac4bbb6b09a92b9b41999541fxxxxxxxx'],
+ 'items' => [
+ 'description' => 'The list of conflicting entities (consumers).',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The details of a conflicting entity (consumer).',
+ 'type' => 'object',
+ 'properties' => [
+ 'consumerId' => ['description' => 'The consumer ID.', 'type' => 'string', 'example' => 'cs-d82n1g6m1hkm3xxxxxxx', 'title' => ''],
+ 'consumerName' => ['description' => 'The consumer name.', 'type' => 'string', 'example' => 'consumer-a', 'title' => ''],
+ 'conflictType' => ['title' => '', 'description' => 'The type of the existing conflicting rule on the consumer. Valid values:'."\n"
+ .'- calendar: The existing conflicting rule uses a calendar period.'."\n"
+ .'- epoch: The existing conflicting rule uses a custom period.', 'type' => 'string', 'example' => 'calendar'],
+ 'conflictPeriodType' => ['title' => '', 'description' => 'The period type of the existing conflicting rule on the consumer. Valid values:'."\n"
+ .'- day: daily period.'."\n"
+ .'- week: weekly period.'."\n"
+ .'- month: monthly period.', 'type' => 'string', 'example' => 'week'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'example' => '',
],
],
+ 'example' => '{\'key\': \'value\'}',
],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"4BACB05C-3FE2-588F-9148-700C5C026B74\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"deployRevisionId\\": \\"apr-xxxxx\\"\\n }\\n}","type":"json"}]',
- 'title' => 'UpdateDomain',
- 'description' => 'You can update the listening Ingress only for sources whose types are **ACK**.'."\n",
- 'translator' => 'machine',
- ],
- 'GetTraceConfig' => [
- 'summary' => 'Queries the tracing configurations of a Cloud-native API Gateway instance.',
- 'path' => '/v1/gateways/{gatewayId}/trace',
- 'methods' => [
- 'get',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Reset a consumer quota rule',
+ 'description' => 'Resets a quota throttling rule on a gateway. This operation takes effect only on AI gateways running version 2.1.19 or later. Resetting a rule clears the historical usage of consumers associated with the rule.'."\n"
+ .'> '."\n"
+ .'> Recommended call sequence:'."\n"
+ .'> - 1. Perform a dry run to check for rule conflicts.'."\n"
+ .'> - - Set dryRun to true.'."\n"
+ .'> - - The response contains a conflict preview with conflictHash.'."\n"
+ .'> - 2. Submit the request after confirmation.'."\n"
+ .'> - - No conflicts: Set dryRun to false and overwrite to false.'."\n"
+ .'> - - Conflicts exist and you confirm the overwrite: Set dryRun to false, overwrite to true, and conflictHash to the value returned in the previous step.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ResetGatewayQuotaRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"1234567890\\",\\n \\"code\\": \\"200, 404, 500\\",\\n \\"message\\": \\"你好,世界!\\",\\n \\"data\\": {\\n \\"ruleId\\": \\"qr-d8j7fpmm1hks65xxxx\\",\\n \\"dryRun\\": false,\\n \\"accepted\\": true,\\n \\"conflictPreview\\": {\\n \\"totalConflictCount\\": 20,\\n \\"conflictHash\\": \\"f8f44dc6cf369a017d56b7197eb4fb5ac4bbb6b09a92b9b41999541fxxxxxxxx\\",\\n \\"items\\": [\\n {\\n \\"consumerId\\": \\"cs-d82n1g6m1hkm3xxxxxxx\\",\\n \\"consumerName\\": \\"consumer-a\\",\\n \\"conflictType\\": \\"calendar\\",\\n \\"conflictPeriodType\\": \\"week\\"\\n }\\n ]\\n }\\n }\\n}","type":"json"}]',
+ ],
+ 'RestartGateway' => [
+ 'summary' => 'Restarts a gateway.',
+ 'path' => '/v1/gateways/{gatewayId}/restart',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'read',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayWECSVA',
- ],
+ 'operationType' => 'none',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREapigatewayUWNKMC'],
],
'parameters' => [
[
'name' => 'gatewayId',
'in' => 'path',
+ 'schema' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-cq2avtllh****', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-xxx',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '585657D2-1C20-5B8A-AF17-D727C6490BE4', 'title' => ''],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Restart a gateway',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'RestartGateway'],
+ ],
+ ],
+ 'ramActions' => [
[
- 'name' => 'acceptLanguage',
- 'in' => 'query',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:RestartGateway',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C6490BE4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'SyncMCPServers' => [
+ 'summary' => 'Syncs an external MCP server.',
+ 'path' => '/v1/mcp-servers/sync-mcp-server',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '281919',
+ 'abilityTreeNodes' => ['FEATUREapigatewayMD7H1W'],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'description' => 'The language in which you want results to be returned. Valid values: zh: Chinese. en: English.'."\n",
- 'type' => 'string',
+ 'description' => 'The request body.',
+ 'type' => 'object',
+ 'properties' => [
+ 'gatewayId' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-cq7l5s5lhtg***', 'title' => ''],
+ 'domainIds' => [
+ 'description' => 'The domain name IDs.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The domain name IDs.', 'type' => 'string', 'required' => false, 'example' => 'd-cr62ts5lhtglnu***', 'title' => ''],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'sourceId' => ['description' => 'The source ID.', 'type' => 'string', 'required' => false, 'example' => 'src-d40mff6m1hkpt84vep60', 'title' => ''],
+ 'namespace' => ['description' => 'The Nacos namespace.', 'type' => 'string', 'required' => false, 'example' => 'default', 'title' => ''],
+ 'nacosMcpServers' => [
+ 'description' => 'The list of Nacos MCP Servers to sync. If the list contains MCP Servers that have already been synced, include the mcpServerId.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'instanceId' => ['description' => 'The Nacos instance ID.', 'type' => 'string', 'required' => false, 'example' => 'mse-24afmoioxxx', 'title' => ''],
+ 'exposedUriPath' => ['description' => 'The exposed URI path. This parameter is required when protocol is SSE or StreamableHTTP and type is RealMCP.', 'type' => 'string', 'required' => false, 'example' => '/sse', 'title' => ''],
+ 'mcpServerName' => ['description' => 'The MCP Server name.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''],
+ 'protocols' => [
+ 'description' => 'The protocols.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The protocol.',
+ 'enumValueTitles' => ['SSE' => 'SSE', 'HTTPS' => 'HTTPS', 'StreamableHTTP' => 'StreamableHTTP', 'HTTP' => 'HTTP'],
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SSE',
+ 'title' => '',
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'mcpServerId' => ['description' => 'MCP Server ID', 'type' => 'string', 'required' => false, 'example' => 'mcp-d3s8qo6m1hknegofa3bg', 'title' => ''],
+ ],
+ 'required' => false,
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
'required' => false,
- 'example' => 'zh',
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The returned results.'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '2F46B9E7-67EF-5C8A-BA52-D38D5B32AF2C',
- ],
- 'code' => [
- 'description' => 'The response code.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'success' => [
- 'description' => 'Indicates whether the request was successful. Valid values: true false'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'message' => [
- 'description' => 'The error message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '2F46B9E7-67EF-5C8A-BA52-D38D5B32AF2C'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'The data returned.'."\n",
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'enable' => [
- 'description' => 'Indicates whether tracing analysis is enabled. Valid values: true and false'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'sampleRatio' => [
- 'description' => 'The sampling rate.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '50',
- ],
- 'traceType' => [
- 'description' => 'The type of tracing analysis. Valid values:'."\n"
- ."\n"
- .'* XTRACE'."\n"
- .'* SKYWALKING'."\n"
- .'* OPENTELEMETRY'."\n"
- .'* OTSKYWALKING'."\n",
- 'type' => 'string',
- 'example' => 'SKYWALKING',
- ],
- 'serviceId' => [
- 'description' => 'The service ID. This parameter exists when the traceType value is SKYWALKING.'."\n",
- 'type' => 'string',
- 'example' => 'ss-co370icmjeu****',
+ 'succeedMcpServers' => [
+ 'description' => 'The list of MCP Servers that were synced successfully.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'mcpServerName' => ['description' => 'The MCP Server name.', 'type' => 'string', 'example' => 'mcp-success', 'title' => ''],
+ 'protocols' => [
+ 'description' => 'The protocols.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The protocol.', 'type' => 'string', 'example' => 'SSE', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
],
- 'servicePort' => [
- 'description' => 'The service port. This parameter exists when the traceType value is SKYWALKING.'."\n",
- 'type' => 'string',
- 'example' => '8090',
+ 'failedMcpServers' => [
+ 'description' => 'The list of MCP Servers that failed to sync.',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'mcpServerName' => ['description' => 'The MCP Server name.', 'type' => 'string', 'example' => 'mcp-fail', 'title' => ''],
+ 'protocols' => [
+ 'description' => 'The protocol.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The protocols.', 'type' => 'string', 'example' => 'SSE', 'title' => ''],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Sync nacos MCP to gateway',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"2F46B9E7-67EF-5C8A-BA52-D38D5B32AF2C\\",\\n \\"code\\": 200,\\n \\"success\\": true,\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"enable\\": true,\\n \\"sampleRatio\\": 50,\\n \\"traceType\\": \\"SKYWALKING\\",\\n \\"serviceId\\": \\"ss-co370icmjeu****\\",\\n \\"servicePort\\": \\"8090\\"\\n }\\n}","type":"json"}]',
- 'title' => 'GetTraceConfig',
- 'translator' => 'machine',
- ],
- 'GetDashboard' => [
- 'summary' => 'Obtains data from dashboards.',
- 'path' => '/v1/gateways/{gatewayId}/dashboards',
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:SyncMCPServers',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"2F46B9E7-67EF-5C8A-BA52-D38D5B32AF2C\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"succeedMcpServers\\": [\\n {\\n \\"mcpServerName\\": \\"mcp-success\\",\\n \\"protocols\\": [\\n \\"SSE\\"\\n ]\\n }\\n ],\\n \\"failedMcpServers\\": [\\n {\\n \\"mcpServerName\\": \\"mcp-fail\\",\\n \\"protocols\\": [\\n \\"SSE\\"\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]',
+ ],
+ 'TagResources' => [
+ 'summary' => 'Adds labels to resources.',
+ 'path' => '/v1/tags',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'read',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'get',
- 'abilityTreeCode' => '224658',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayVA59LH',
- ],
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '248799',
+ 'abilityTreeNodes' => ['FEATUREapigatewayUWNKMC'],
+ 'tenantRelevance' => 'tenant',
],
'parameters' => [
[
- 'name' => 'gatewayId',
- 'in' => 'path',
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'title' => '网关唯一标识',
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
+ 'description' => 'The request body.',
+ 'type' => 'object',
+ 'properties' => [
+ 'resourceType' => ['title' => '', 'description' => 'The resource type.', 'type' => 'string', 'required' => false, 'default' => 'Gateway', 'example' => 'gateway'],
+ 'resourceId' => [
+ 'title' => '',
+ 'description' => 'The resource IDs. A maximum of 50 subkeys are supported.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The resource ID.', 'type' => 'string', 'required' => false, 'example' => '["gw-xxx","gw-yyy"]', 'title' => ''],
+ 'required' => false,
+ 'example' => '',
+ ],
+ 'tag' => [
+ 'description' => 'The list of labels.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The label.',
+ 'type' => 'object',
+ 'properties' => [
+ 'key' => ['description' => 'The label key.', 'type' => 'string', 'required' => false, 'example' => 'env', 'title' => ''],
+ 'value' => ['description' => 'The label value.', 'type' => 'string', 'required' => false, 'example' => 'prod', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
'required' => false,
- 'example' => 'gw-co370icmjeu****',
+ 'example' => '{\'key\': \'value\'}',
+ 'title' => '',
],
],
- [
- 'name' => 'pluginClassId',
- 'in' => 'query',
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The plug-in type ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'pls-dn82a9djd8z****',
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'A04D0C5B-62C4-5A36-BECB-2032E25BDE80'],
+ ],
+ 'example' => '',
],
],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Add labels to resources',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
[
- 'name' => 'apiId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'API ID',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'api-c9uuekzmia8q2****',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:TagResources',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"A04D0C5B-62C4-5A36-BECB-2032E25BDE80\\"\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
+ ],
+ ],
+ 'UnDeployMcpServer' => [
+ 'path' => '/v1/mcp-servers/{mcpServerId}/undeploy',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'routeId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The route ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'route-xxx',
- ],
+ 'AK' => [],
],
+ ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '281133',
+ 'abilityTreeNodes' => ['FEATUREapigatewayMD7H1W'],
+ ],
+ 'parameters' => [
[
- 'name' => 'source',
- 'in' => 'query',
+ 'name' => 'mcpServerId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'MCP Server ID', 'type' => 'string', 'required' => false, 'example' => 'mcp-adfef2334fa', 'title' => ''],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'title' => '大盘来源:'."\n"
- .'- SLS:日志大盘',
- 'description' => 'The dashboard source. Valid values:'."\n"
- ."\n"
- .'* SLS: Simple Log Service'."\n",
- 'type' => 'string',
- 'required' => false,
- 'enumValueTitles' => [
- 'CMS' => 'CMS',
- 'ARMS' => 'ARMS',
- 'SLS' => 'SLS',
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'CE857A85-251D-5018-8103-A38957D71E20'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
- 'example' => 'SLS',
+ 'example' => '',
],
],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Cancel publication of an MCP server',
+ 'summary' => 'Cancels the publication of an MCP server.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
[
- 'name' => 'name',
- 'in' => 'query',
- 'schema' => [
- 'title' => '大盘名称:'."\n"
- .'- LOG:访问日志'."\n"
- .'- PLUGIN:插件日志',
- 'description' => 'The dashboard name.'."\n"
- ."\n"
- .'* LOG: access logs'."\n"
- .'* PLUGIN: plug-in logs'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'PLUGIN',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UnDeployMcpServer',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CE857A85-251D-5018-8103-A38957D71E20\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'UndeployHttpApi' => [
+ 'summary' => 'Cancels the deployment of an HTTP API.',
+ 'path' => '/v1/http-apis/{httpApiId}/undeploy',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'filter',
- 'in' => 'query',
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '237789',
+ 'abilityTreeNodes' => ['FEATUREapigateway910B7T'],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'httpApiId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'HTTP API ID。', 'type' => 'string', 'required' => false, 'example' => 'api-cqu95allhtgii6***', 'title' => ''],
+ ],
+ [
+ 'name' => 'body',
+ 'in' => 'body',
'style' => 'json',
'schema' => [
- 'title' => '过滤配置',
- 'description' => 'The filter configurations.'."\n",
+ 'description' => 'The request body.',
'type' => 'object',
'properties' => [
- 'routeName' => [
- 'title' => '路由名称',
- 'description' => 'The route name.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test-route',
- ],
+ 'routeId' => ['description' => 'The route ID. This parameter is required when you offline a route of an HTTP API.', 'type' => 'string', 'required' => false, 'example' => 'hr-cr82undlhtgrle***', 'title' => ''],
+ 'environmentId' => ['description' => 'The environment ID.', 'type' => 'string', 'required' => false, 'example' => 'env-cqsmtellhtgvo***', 'title' => ''],
+ 'operationId' => ['description' => 'The operation ID.', 'type' => 'string', 'required' => false, 'example' => 'op-d4favr6m1hk***', 'title' => ''],
+ 'gatewayId' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-cq7l5s5lhtg***', 'title' => ''],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
- [
- 'name' => 'acceptLanguage',
- 'in' => 'query',
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The language. Valid values: zh (Chinese) and en (English).'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'zh',
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '3ACFC7A7-45A9-58CF-B2D5-765B60254695'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ ],
+ 'example' => '',
],
],
+ ],
+ 'title' => 'Offline an API',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UndeployHttpApi'],
+ ],
+ ],
+ 'ramActions' => [
[
- 'name' => 'upstreamCluster',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The AI service identifier.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'outbound|443||ds.ai',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UndeployHttpApi',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3ACFC7A7-45A9-58CF-B2D5-765B60254695\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'UninstallPlugin' => [
+ 'summary' => 'Uninstalls a plugin.',
+ 'path' => '/v1/plugins/{pluginId}',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREapigateway216K2A'],
+ ],
+ 'parameters' => [
[
'name' => 'pluginId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The plug-in ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'inner-ai-search-cvd3mcum1hks660icn10',
- ],
+ 'in' => 'path',
+ 'schema' => ['description' => 'The plugin ID.', 'type' => 'string', 'required' => false, 'example' => 'pl-cvd2b36m1hkhdosfhar0', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response body.'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => '2F46B9E7-67EF-5C8A-BA52-D38D5B32AF2C',
- ],
- 'code' => [
- 'title' => '响应码',
- 'description' => 'The HTTP status code.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '200',
- ],
- 'success' => [
- 'title' => '请求是否成功',
- 'description' => 'Indicates whether the request was successful.'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'errorCode' => [
- 'title' => '后端错误码',
- 'description' => 'The error code.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'title' => '错误信息',
- 'description' => 'The error message.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'data' => [
- 'title' => '响应数据',
- 'description' => 'The data returned.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'name' => [
- 'title' => '大盘名称',
- 'description' => 'The dashboard name.'."\n",
- 'type' => 'string',
- 'example' => 'PLUGIN',
- ],
- 'title' => [
- 'title' => '大盘标题',
- 'description' => 'The dashboard title.'."\n",
- 'type' => 'string',
- 'example' => 'APIG Plugin',
- ],
- 'url' => [
- 'title' => '大盘URL链接',
- 'description' => 'The dashboard URL.'."\n",
- 'type' => 'string',
- 'example' => 'https://sls.console.aliyun.com/lognext/project/xxxxx',
- ],
- 'gatewayId' => [
- 'title' => '网关唯一标识',
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'example' => 'gw-co370icmjeu****',
- ],
- ],
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'F61D96E8-4E6D-5896-86E7-F1202AC31280'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"2F46B9E7-67EF-5C8A-BA52-D38D5B32AF2C\\",\\n \\"code\\": 200,\\n \\"success\\": true,\\n \\"errorCode\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"name\\": \\"PLUGIN\\",\\n \\"title\\": \\"APIG Plugin\\",\\n \\"url\\": \\"https://sls.console.aliyun.com/lognext/project/xxxxx\\",\\n \\"gatewayId\\": \\"gw-co370icmjeu****\\"\\n }\\n}","type":"json"}]',
- 'title' => 'GetDashboard',
- 'translator' => 'machine',
- ],
- 'ChangeResourceGroup' => [
- 'summary' => 'Moves a resource from one resource group to another.',
- 'path' => '/move-resource-group',
- 'methods' => [
- 'post',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Uninstall a plugin',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UninstallPlugin'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UninstallPlugin',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"F61D96E8-4E6D-5896-86E7-F1202AC31280\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'UntagResources' => [
+ 'path' => '/v1/tags',
+ 'methods' => ['delete'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'write',
+ 'produces' => ['application/json'],
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '247672',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayUWNKMC',
- ],
+ 'abilityTreeCode' => '248802',
+ 'abilityTreeNodes' => ['FEATUREapigatewayUWNKMC'],
'tenantRelevance' => 'tenant',
],
'parameters' => [
[
- 'name' => 'Service',
+ 'name' => 'ResourceType',
'in' => 'query',
- 'schema' => [
- 'description' => 'Service name, fixed value apig',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'apig',
- 'default' => 'APIG',
- ],
+ 'schema' => ['title' => '', 'description' => 'The resource type.', 'type' => 'string', 'required' => false, 'default' => 'Gateway', 'example' => 'gateway'],
],
[
- 'name' => 'ResourceType',
+ 'name' => 'ResourceId',
'in' => 'query',
+ 'style' => 'json',
'schema' => [
- 'description' => 'Resource type',
- 'type' => 'string',
+ 'title' => '',
+ 'description' => 'The resource IDs. You can specify up to 50 subkeys.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The resource ID.', 'type' => 'string', 'required' => false, 'example' => '["gw-xxx","gw-yyy"]', 'title' => ''],
'required' => false,
- 'example' => 'gateway',
- 'default' => 'Gateway',
+ 'example' => '["gw-xxx","gw-yyy"]',
],
],
[
- 'name' => 'ResourceId',
+ 'name' => 'TagKey',
'in' => 'query',
+ 'style' => 'json',
'schema' => [
- 'description' => 'Resource ID',
- 'type' => 'string',
+ 'title' => '',
+ 'description' => 'The list of tag keys. You can specify up to 20 subkeys.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The tag key.', 'type' => 'string', 'required' => false, 'example' => '["env","team"]', 'title' => ''],
'required' => false,
- 'example' => 'gw-ct4i14um1hkn0tpqfae0',
+ 'example' => '["env","team"]',
],
],
[
- 'name' => 'ResourceGroupId',
+ 'name' => 'All',
'in' => 'query',
- 'schema' => [
- 'description' => 'Target resource group ID.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rg-aekzdrfx2xdnaja',
- ],
+ 'schema' => ['title' => '', 'description' => 'Specifies whether to delete all tags. This parameter is valid only when tags are empty. Valid values:'."\n"
+ ."\n"
+ .'- true'."\n"
+ .'- false'."\n"
+ .'- True'."\n"
+ .'- False'."\n"
+ ."\n"
+ .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Response structure',
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Request ID.',
- 'type' => 'string',
- 'example' => '59F86F37-787A-52DB-9475-DB5A255517F0',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '585657D2-1C20-5B8A-AF17-D727C6490BE4'],
],
+ 'example' => '',
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'MissingParameter.RegionId',
- 'errorMessage' => 'The RegionId parameters that are required for processing this request are missing',
- ],
- [
- 'errorCode' => 'MissingParameter.ResourceId',
- 'errorMessage' => 'The ResourceId parameters that are required for processing this request are missing',
- ],
- [
- 'errorCode' => 'MissingParameter.ResourceGroupId',
- 'errorMessage' => 'The ResourceGroupId parameters that are required for processing this request are missing',
- ],
- [
- 'errorCode' => 'InvalidResourceGroup',
- 'errorMessage' => 'The specified ResourceGroupId is invalid',
- ],
- [
- 'errorCode' => 'InternalError',
- 'errorMessage' => 'The request processing has failed due to some unknown error.',
- ],
- [
- 'errorCode' => 'ResourceNotFound',
- 'errorMessage' => ' The specified resource is not found',
- ],
- ],
- 403 => [
- [
- 'errorCode' => 'NoPermission.ChangeResourceGroup',
- 'errorMessage' => 'You are not authorized to change resourcegroup',
+ 'title' => 'Remove resource tags',
+ 'summary' => 'Removes tags from resources.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UntagResources',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C6490BE4\\"\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"59F86F37-787A-52DB-9475-DB5A255517F0\\"\\n}","type":"json"}]',
- 'title' => 'ChangeResourceGroup',
- 'translator' => 'machine',
],
- 'GetResourceOverview' => [
- 'summary' => 'Get resource overview information',
- 'path' => '/v1/overview/resources',
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'UpdateAndAttachPolicy' => [
+ 'summary' => 'Updates and mounts a policy.',
+ 'path' => '/v1/policies/{policyId}',
+ 'methods' => ['put'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'read',
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'get',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '222857',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayUWNKMC',
- ],
+ 'abilityTreeCode' => '222761',
+ 'abilityTreeNodes' => ['FEATUREapigatewayOZOKBY'],
],
'parameters' => [
[
- 'name' => 'gatewayType',
- 'in' => 'query',
+ 'name' => 'policyId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The policy ID.', 'type' => 'string', 'required' => true, 'example' => 'p-cq7l5s5lhtgi6qasrdc0'."\n", 'title' => ''],
+ ],
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'title' => '网关类型',
- 'description' => 'The gateway type.'."\n",
- 'type' => 'string',
+ 'description' => 'The request body.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The policy name.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''],
+ 'description' => ['description' => 'The policy description.', 'type' => 'string', 'required' => false, 'example' => '这是策略描述。', 'title' => ''],
+ 'config' => ['description' => 'The configuration information. The value is a JSON string.', 'type' => 'string', 'required' => true, 'example' => '{\\"enable\\":false}', 'title' => ''],
+ 'attachResourceIds' => [
+ 'description' => 'The list of mount point IDs.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The mount point ID.', 'type' => 'string', 'required' => false, 'example' => 'api-cq2avtllhtgja4dk5djg'."\n", 'title' => ''],
+ 'required' => true,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'attachResourceType' => ['description' => 'The type of mount point supported by the policy.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'- HttpApi: HttpApi.'."\n"
+ .'- Operation: Operation of HttpApi.'."\n"
+ .'- GatewayRoute: gateway rule.'."\n"
+ .'- GatewayService: gateway service.'."\n"
+ .'- GatewayServicePort: gateway service port.'."\n"
+ .'- Domain: gateway domain name.'."\n"
+ .'- Gateway: gateway.', 'type' => 'string', 'required' => true, 'example' => 'HttpApi', 'title' => ''],
+ 'environmentId' => ['description' => 'The environment ID.', 'type' => 'string', 'required' => false, 'example' => 'env-cq2avtllhtgja4dk5djg'."\n", 'title' => ''],
+ 'gatewayId' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-cq2avtllhtgja4dk5djg', 'title' => ''],
+ ],
'required' => false,
- 'example' => 'AI',
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'The response body.'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Request ID.',
- 'type' => 'string',
- 'example' => 'DD19A442-93C5-5C97-AFA0-B9C57EBD781B',
- ],
- 'code' => [
- 'description' => 'Response status code.',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'Response message.',
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'data' => [
- 'description' => 'The resource information.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'api' => [
- 'description' => 'API information.',
- 'type' => 'object',
- 'properties' => [
- 'totalCount' => [
- 'description' => 'Number of APIs.',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1',
- ],
- 'publishedCount' => [
- 'description' => 'Number of published APIs.',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1',
- ],
- ],
- ],
- 'gateway' => [
- 'description' => 'Gateway information.',
- 'type' => 'object',
- 'properties' => [
- 'totalCount' => [
- 'description' => 'Number of gateway instances.',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1',
- ],
- 'runningCount' => [
- 'description' => 'Number of running gateways.',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1',
- ],
- ],
- ],
- 'riskOverview' => [
- 'title' => '风险概览',
- 'description' => 'The risk overview.'."\n",
- 'type' => 'array',
- 'items' => [
- 'title' => '某个风险等级下对应的风险详情',
- 'description' => 'The details of the corresponding risk at a risk level.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'riskLevel' => [
- 'title' => '风险等级',
- 'description' => 'The risk level.'."\n",
- 'type' => 'string',
- 'example' => 'LOW',
- ],
- 'count' => [
- 'title' => '该风险等级下的实例数量',
- 'description' => 'The number of instances at a risk level.'."\n",
- 'type' => 'string',
- 'example' => '1',
- ],
- 'riskDetails' => [
- 'title' => '风险详情列表',
- 'description' => 'The risk details list.'."\n",
- 'type' => 'array',
- 'items' => [
- 'title' => '风险详情',
- 'description' => 'The risk details.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'gatewayId' => [
- 'title' => '网关id',
- 'description' => 'The gateway ID.'."\n",
- 'type' => 'string',
- 'example' => 'gw-xxxxxx',
- ],
- 'gatewayName' => [
- 'title' => '网关名称',
- 'description' => 'The gateway name.'."\n",
- 'type' => 'string',
- 'example' => 'test-gateway',
- ],
- 'score' => [
- 'title' => '风险分数',
- 'description' => 'The risk score.'."\n",
- 'type' => 'string',
- 'example' => '100',
- ],
- 'riskLevel' => [
- 'title' => '风险等级',
- 'description' => 'The risk level.'."\n",
- 'type' => 'string',
- 'example' => 'LOW',
- ],
- 'riskNames' => [
- 'title' => '风险名称列表',
- 'description' => 'The risk name list.'."\n",
- 'type' => 'array',
- 'items' => [
- 'title' => '风险名称',
- 'description' => 'The risk name.'."\n",
- 'type' => 'string',
- 'example' => 'The standalone instance'."\n",
- ],
- ],
- ],
- ],
- ],
- ],
- ],
- ],
- ],
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID, which is used to trace the API call chain.', 'type' => 'string', 'example' => '585657D2-1C20-5B8A-AF17-D727C6490BE4'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Update and mount a policy',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"DD19A442-93C5-5C97-AFA0-B9C57EBD781B\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"api\\": {\\n \\"totalCount\\": 1,\\n \\"publishedCount\\": 1\\n },\\n \\"gateway\\": {\\n \\"totalCount\\": 1,\\n \\"runningCount\\": 1\\n },\\n \\"riskOverview\\": [\\n {\\n \\"riskLevel\\": \\"LOW\\",\\n \\"count\\": \\"1\\",\\n \\"riskDetails\\": [\\n {\\n \\"gatewayId\\": \\"gw-xxxxxx\\",\\n \\"gatewayName\\": \\"test-gateway\\",\\n \\"score\\": \\"100\\",\\n \\"riskLevel\\": \\"LOW\\",\\n \\"riskNames\\": [\\n \\"网关实例为单节点\\"\\n ]\\n }\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'GetResourceOverview',
- 'translator' => 'machine',
- ],
- 'CreateAndAttachPolicy' => [
- 'summary' => 'Creates and associates a policy.',
- 'path' => '/v1/policies',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateAndAttachPolicy',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Policy', 'arn' => 'acs:apig:{#regionId}:{#accountId}:policy/{#PolicyId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C6490BE4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'UpdateConsumer' => [
+ 'summary' => 'Updates an API consumer.',
+ 'path' => '/v1/consumers/{consumerId}',
+ 'methods' => ['put'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -23436,167 +16575,88 @@
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'riskType' => 'high',
+ 'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '222758',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayOZOKBY',
- ],
- 'tenantRelevance' => 'publicInformation',
+ 'abilityTreeCode' => '248085',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
],
'parameters' => [
[
+ 'name' => 'consumerId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The API consumer ID.', 'type' => 'string', 'required' => false, 'example' => 'cs-cvfmq9um1hkg1teictkg', 'title' => ''],
+ ],
+ [
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
- 'description' => 'The request data.'."\n",
+ 'description' => 'The request body parameters.',
'type' => 'object',
'properties' => [
- 'name' => [
- 'description' => 'The policy name.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test',
- ],
- 'className' => [
- 'description' => 'The class name supported by the policy. Different policies support different resources. This parameter is used in combination with AttachResourceType.'."\n"
- ."\n"
- .'* RateLimit: throttles traffic. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
- .'* ConcurrencyLimit: controls concurrency. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
- .'* CircuitBreaker: breaks circuits and downgrades traffic. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
- .'* HttpRewrite: rewrites HTTP traffic. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
- .'* HeaderModify: modifies headers. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
- .'* Cors: supports CORS. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
- .'* FlowCopy: replicates traffic. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
- .'* Timeout: times out requests. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
- .'* Retry: retries requests. Supported: HttpApi, Operation, and GatewayRoute.'."\n"
- .'* IpAccessControl: implements IP address-based access control. Supported: HttpApi, Operation, GatewayRoute, Domain, and Gateway.'."\n"
- .'* DirectResponse: mocks responses. Supported: Operation and GatewayRoute.'."\n"
- .'* Redirect: redirects traffic. Supported: GatewayRoute.'."\n"
- .'* Fallback: implements fallback. Supported: Operation and GatewayRoute.'."\n"
- .'* ServiceTls: implements TLS authentication. Supported: GatewayService.'."\n"
- .'* ServiceLb: balances loads. Supported: GatewayService.'."\n"
- .'* ServicePortTls: implements service port TLS authentication. Supported: GatewayServicePort.'."\n"
- .'* Waf: implements WAF protection. Supported: GatewayRoute and Gateway.'."\n"
- .'* JWTAuth: implements global JWT authentication. Supported: Gateway.'."\n"
- .'* OIDCAuth: implements global OIDC authentication. Supported: Gateway.'."\n"
- .'* ExternalZAuth: implements custom authentication. Supported: Gateway.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'IpAccessControl',
- ],
- 'config' => [
- 'description' => 'The policy configurations.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => '{\\"enable\\":false}',
- ],
- 'description' => [
- 'description' => 'The policy description.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'This is the policy description.',
- ],
- 'attachResourceIds' => [
- 'description' => 'The IDs of the resources to be associated with the policy.'."\n",
+ 'description' => ['description' => 'The description.', 'type' => 'string', 'required' => false, 'example' => '测试消费者', 'title' => ''],
+ 'jwtIdentityConfig' => ['description' => 'The JWT authentication configuration.', '$ref' => '#/components/schemas/JwtIdentityConfig', 'required' => false, 'title' => '', 'example' => ''],
+ 'akSkIdentityConfigs' => [
+ 'description' => 'The list of AccessKey pair authentication configurations.',
'type' => 'array',
- 'items' => [
- 'description' => 'The resource ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'api-cq7l5s5lhtgi6qasrdc0'."\n",
- ],
- 'required' => true,
- ],
- 'attachResourceType' => [
- 'description' => 'The supported resource type. Valid values:'."\n"
- ."\n"
- .'* HttpApi: an HTTP API'."\n"
- .'* Operation: an operation in an HTTP API'."\n"
- .'* GatewayRoute: a route'."\n"
- .'* GatewayService: a service'."\n"
- .'* GatewayServicePort: a service port'."\n"
- .'* Domain: a domain name'."\n"
- .'* Gateway: an instance'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'HttpApi',
- ],
- 'environmentId' => [
- 'description' => 'The environment ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'env-cq7l5s5lhtgi6qasrdc0'."\n",
- ],
- 'gatewayId' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
+ 'items' => ['description' => 'The AccessKey pair authentication configuration.', '$ref' => '#/components/schemas/AkSkIdentityConfig', 'required' => false, 'title' => '', 'example' => ''],
'required' => false,
- 'example' => 'gw-cq7l5s5lhtgi6qasrdc0',
+ 'title' => '',
+ 'example' => '',
],
+ 'apikeyIdentityConfig' => ['description' => 'The API key authentication configuration.', '$ref' => '#/components/schemas/ApiKeyIdentityConfig', 'required' => false, 'title' => '', 'example' => ''],
+ 'enable' => ['description' => 'Specifies whether to enable the API consumer.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID, which is used to trace the call link.'."\n",
- 'type' => 'string',
- 'example' => '585657D2-1C20-5B8A-AF17-D727C6490BE4',
- ],
- 'code' => [
- 'description' => 'The status code returned.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'data' => [
- 'description' => 'The returned data.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'policyId' => [
- 'description' => 'The policy ID.'."\n",
- 'type' => 'string',
- 'example' => 'p-cq7l5s5lhtgi6qasrdc0'."\n",
- ],
- 'attachment' => [
- 'description' => 'The association information of the policy.'."\n",
- '$ref' => '#/components/schemas/Attachment',
- ],
- ],
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'B917B12C-030A-597A-AF2B-6C4353FC9F10'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'ok', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Update an API consumer',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C6490BE4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"policyId\\": \\"p-cq7l5s5lhtgi6qasrdc0\\\\n\\",\\n \\"attachment\\": {\\n \\"policyAttachmentId\\": \\"\\",\\n \\"attachResourceIds\\": [\\n \\"\\"\\n ],\\n \\"attachResourceType\\": \\"\\",\\n \\"environmentId\\": \\"\\",\\n \\"gatewayId\\": \\"\\"\\n }\\n }\\n}","type":"json"}]',
- 'title' => 'CreateAndAttachPolicy',
- ],
- 'UpdateAndAttachPolicy' => [
- 'summary' => 'Updates and associates a policy.',
- 'path' => '/v1/policies/{policyId}',
- 'methods' => [
- 'put',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateConsumer',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/{#ConsumerId}'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'https',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"B917B12C-030A-597A-AF2B-6C4353FC9F10\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"ok\\"\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
+ ],
+ 'UpdateConsumerAuthorizationRule' => [
+ 'summary' => 'Updates a consumer authorization rule.',
+ 'path' => '/v1/consumers/{consumerId}/authorization-rules/{consumerAuthorizationRuleId}',
+ 'methods' => ['put'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -23606,146 +16666,106 @@
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '222761',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayOZOKBY',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '248108',
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
],
'parameters' => [
[
- 'name' => 'policyId',
+ 'name' => 'consumerId',
'in' => 'path',
- 'schema' => [
- 'description' => 'The policy ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'p-cq7l5s5lhtgi6qasrdc0'."\n",
- ],
+ 'schema' => ['description' => 'The consumer ID.', 'type' => 'string', 'required' => false, 'example' => 'cs-cvs7kbem1hkiit4ivhu0', 'title' => ''],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
- 'description' => 'The request body.',
+ 'description' => 'The request body parameters.',
'type' => 'object',
'properties' => [
- 'name' => [
- 'description' => 'The policy name.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test',
- ],
- 'description' => [
- 'description' => 'The policy description.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'This is the description.',
- ],
- 'config' => [
- 'description' => 'The policy configurations. The value is a JSON string.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => '{\\"enable\\":false}',
- ],
- 'attachResourceIds' => [
- 'description' => 'The association IDs.'."\n",
+ 'expireMode' => ['description' => 'The expiration mode. Valid values:'."\n"
+ .'- LongTerm'."\n"
+ .'- ShortTerm', 'type' => 'string', 'required' => false, 'example' => 'LongTerm', 'title' => ''],
+ 'expireTimestamp' => ['description' => 'The expiration time.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1750852089975', 'title' => ''],
+ 'authorizationResourceInfos' => [
+ 'description' => 'The list of resource authorization information.',
'type' => 'array',
- 'items' => [
- 'description' => 'The association ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'api-cq2avtllhtgja4dk5djg'."\n",
- ],
- 'required' => true,
- ],
- 'attachResourceType' => [
- 'description' => 'The supported associated resource type. Valid values:'."\n"
- ."\n"
- .'* HttpApi: an HTTP API'."\n"
- .'* Operation: an operation in an HTTP API'."\n"
- .'* GatewayRoute: a route'."\n"
- .'* GatewayService: a service'."\n"
- .'* GatewayServicePort: a service port'."\n"
- .'* Domain: a domain name'."\n"
- .'* Gateway: an instance'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'HttpApi',
- ],
- 'environmentId' => [
- 'description' => 'The environment ID.'."\n",
- 'type' => 'string',
+ 'items' => ['description' => 'The resource authorization information.', '$ref' => '#/components/schemas/AuthorizationResourceInfo', 'required' => false, 'title' => '', 'example' => ''],
'required' => false,
- 'example' => 'env-cq2avtllhtgja4dk5djg'."\n",
- ],
- 'gatewayId' => [
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cq2avtllhtgja4dk5djg',
+ 'title' => '',
+ 'example' => '',
],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
+ [
+ 'name' => 'consumerAuthorizationRuleId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The consumer authorization rule ID used to filter the API operation list. The API operation list in the response contains only authorized API operations.', 'type' => 'string', 'required' => false, 'example' => 'cas-xxx', 'title' => ''],
+ ],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
+ 'title' => '',
+ 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID, which is used to trace the call link.'."\n",
- 'type' => 'string',
- 'example' => '585657D2-1C20-5B8A-AF17-D727C6490BE4',
- ],
- 'code' => [
- 'description' => 'The status code returned.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'C67DED2B-F19B-5BEC-88C1-D6EB854CD0D4'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Update a consumer authorization rule',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C6490BE4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'UpdateAndAttachPolicy',
- ],
- 'CreateEnvironment' => [
- 'summary' => 'Creates an environment.',
- 'path' => '/v1/environments',
- 'methods' => [
- 'post',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateConsumerAuthorizationRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/{#ConsumerId}'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'https',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"C67DED2B-F19B-5BEC-88C1-D6EB854CD0D4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
+ ],
+ 'UpdateDomain' => [
+ 'summary' => 'Updates a domain name.',
+ 'path' => '/v1/domains/{domainId}',
+ 'methods' => ['put'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
'operationType' => 'write',
- 'deprecated' => true,
+ 'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '219212',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayN14L0I',
- ],
- 'tenantRelevance' => 'publicInformation',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '219210',
+ 'abilityTreeNodes' => ['FEATUREapigatewayLPOSXV'],
],
'parameters' => [
[
@@ -23753,270 +16773,117 @@
'in' => 'body',
'style' => 'json',
'schema' => [
- 'description' => '$.parameters[0].schema.enumValueTitles',
+ 'description' => 'The request body for updating a domain name.',
'type' => 'object',
'properties' => [
- 'name' => [
- 'description' => 'Create environment.',
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => false,
- 'example' => 'test',
- ],
- 'alias' => [
- 'description' => 'The request body.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'The environment name.'."\n",
- ],
- 'description' => [
- 'description' => 'The environment alias.'."\n",
+ 'domainScope' => [
+ 'title' => '',
+ 'description' => 'The scope of the domain name.',
+ 'enumValueTitles' => ['Serverless' => 'Serverless', 'Dedicated' => 'Dedicated'],
'type' => 'string',
+ 'example' => 'Dedicated',
'required' => false,
- 'example' => 'Test environment'."\n",
],
- 'gatewayId' => [
- 'description' => 'The environment description, such as its purpose and owner.'."\n",
+ 'protocol' => [
+ 'description' => 'The protocol type supported by the domain name.'."\n"
+ ."\n"
+ .'- HTTP: Only HTTP is supported.'."\n"
+ .'- HTTPS: Only HTTPS is supported.',
+ 'enumValueTitles' => ['HTTPS' => 'HTTPS', 'HTTP' => 'HTTP'],
'type' => 'string',
- 'required' => true,
- 'example' => 'gw-cq7l5s5lhtgi6qasrdc0',
+ 'required' => false,
+ 'example' => 'HTTP',
+ 'title' => '',
],
- 'resourceGroupId' => [
- 'description' => 'Testing environment for xx project of xxx'."\n",
+ 'forceHttps' => ['description' => 'Specifies whether to enable forced HTTPS redirect when the protocol type is set to HTTPS. This parameter is required when the protocol is HTTPS.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
+ 'mTLSEnabled' => ['title' => '', 'description' => 'Specifies whether to enable mutual TLS (mTLS) authentication.', 'type' => 'boolean', 'required' => false, 'example' => ''],
+ 'certIdentifier' => ['description' => 'The certificate identifier.', 'type' => 'string', 'required' => false, 'example' => '1ef1da5f-38ed-69b3-****-037781890265'."\n", 'title' => ''],
+ 'caCertIdentifier' => ['description' => 'The CA certificate identifier.', 'type' => 'string', 'required' => false, 'example' => '1ef1da5f-38ed-69b3-****-037781890265'."\n", 'title' => ''],
+ 'clientCACert' => ['title' => '', 'description' => 'The client CA certificate.', 'type' => 'string', 'required' => false, 'example' => '-----BEGIN CERTIFICATE-----'."\n"
+ .'MIIFBTCCAu2gAwIBAgIUORLpYPGSFD1YOP6PMbE7Wd/mpTQwDQYJKoZIhvcNAQEL'."\n"
+ .'BQAwE************************************************2VwVOJ2gqX3'."\n"
+ .'YuGaxvIbDy0iQJ1GMerPRyzJTeVEtdIKT29u0PdFRr4KZWom35qX7G4='."\n"
+ .'-----END CERTIFICATE-----'],
+ 'http2Option' => [
+ 'description' => 'The HTTP/2 settings.',
+ 'enumValueTitles' => ['GlobalConfig' => 'GlobalConfig', 'Close' => 'Close', 'Open' => 'Open'],
'type' => 'string',
'required' => false,
- 'example' => 'rg-ahr5uil8raz0rq3b',
+ 'example' => 'Open',
+ 'title' => '',
],
+ 'tlsMax' => ['description' => 'The maximum TLS protocol version. TLS 1.3 is the maximum supported version.', 'type' => 'string', 'required' => false, 'example' => 'TLS 1.3', 'title' => ''],
+ 'tlsMin' => ['description' => 'The minimum TLS protocol version. TLS 1.0 is the minimum supported version.', 'type' => 'string', 'required' => false, 'example' => 'TLS 1.0', 'title' => ''],
+ 'tlsCipherSuitesConfig' => ['description' => 'The cipher suite configuration.', '$ref' => '#/components/schemas/TlsCipherSuitesConfig', 'required' => false, 'title' => '', 'example' => ''],
],
'required' => false,
+ 'example' => '{\'key\': \'value\'}',
+ 'title' => '',
],
],
+ [
+ 'name' => 'domainId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The domain name ID.', 'type' => 'string', 'required' => true, 'example' => 'd-cpqnfn5lhtgqbga95sv1', 'title' => ''],
+ ],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
+ 'title' => '',
+ 'description' => 'The response body.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The instance ID.'."\n",
- 'type' => 'string',
- 'example' => '3C3B9A12-3868-5EB9-8BEA-F99E03DD125C',
- ],
- 'code' => [
- 'description' => 'The resource group ID.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'rg-acfmycs5expl7oq',
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID, which is used to trace the API call chain.', 'type' => 'string', 'example' => '4BACB05C-3FE2-588F-9148-700C5C026B74'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
- 'description' => 'Schema of Response'."\n",
+ 'description' => 'The returned data.',
'type' => 'object',
'properties' => [
- 'environmentId' => [
- 'description' => 'The request ID, which is used to trace the call link.'."\n",
- 'type' => 'string',
- 'example' => 'env-cq7l5s5lhtgi6qasrdc0',
- ],
+ 'deployRevisionId' => ['description' => 'The publish version ID.', 'type' => 'string', 'example' => 'apr-xxxxx', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。',
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3C3B9A12-3868-5EB9-8BEA-F99E03DD125C\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"environmentId\\": \\"env-cq7l5s5lhtgi6qasrdc0\\"\\n }\\n}","type":"json"}]',
- 'title' => 'CreateEnvironment',
- 'translator' => 'machine',
- ],
- 'GetEnvironment' => [
- 'summary' => 'Queries an environment.',
- 'path' => '/v1/environments/{environmentId}',
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
- 'security' => [
- [
- 'AK' => [],
- ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"4BACB05C-3FE2-588F-9148-700C5C026B74\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"deployRevisionId\\": \\"apr-xxxxx\\"\\n }\\n}","type":"json"}]',
+ 'title' => 'Update a domain name',
+ 'description' => 'Only sources of the **Container Service** type allow you to update the listener Ingress configuration.',
+ 'changeSet' => [
+ ['createdAt' => '2026-06-17T12:19:57.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-02-27T07:54:23.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-12-30T02:34:10.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-11-28T10:53:19.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-09-03T07:57:14.000Z', 'description' => 'Response parameters changed'],
],
- 'operationType' => 'read',
- 'deprecated' => true,
- 'systemTags' => [
- 'operationType' => 'none',
- 'abilityTreeCode' => '219213',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayN14L0I',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateDomain'],
],
],
- 'parameters' => [
+ 'ramActions' => [
[
- 'name' => 'environmentId',
- 'in' => 'path',
- 'schema' => [
- 'description' => 'Specifies whether to return online resource information.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'env-cq7l5s5lhtgi6qasrdc0',
- ],
- ],
- [
- 'name' => 'withVpcInfo',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Schema of Response'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
- ],
- [
- 'name' => 'withStatistics',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The request ID, which is used to trace the API call link.'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- ],
- ],
- ],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
- 'type' => 'object',
- 'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The status code returned.'."\n",
- 'type' => 'string',
- 'example' => '3F8EE674-BB08-5E92-BE6F-E4756A748B0F',
- ],
- 'code' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The response data.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'data' => [
- 'description' => 'The environment ID.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'environmentId' => [
- 'description' => 'The environment name.'."\n",
- 'type' => 'string',
- 'example' => 'env-cq7l5s5lhtgi6qasrdc0'."\n",
- ],
- 'name' => [
- 'description' => 'The environment alias.'."\n",
- 'type' => 'string',
- 'example' => 'test',
- ],
- 'alias' => [
- 'description' => 'Test environment'."\n",
- 'type' => 'string',
- 'example' => 'The environment description.'."\n",
- ],
- 'description' => [
- 'description' => 'Testing environment for xx project of xxx'."\n",
- 'type' => 'string',
- 'example' => 'The instance information.'."\n",
- ],
- 'gatewayInfo' => [
- 'description' => 'The subdomains.'."\n",
- '$ref' => '#/components/schemas/GatewayInfo',
- ],
- 'subDomainInfos' => [
- 'description' => 'The subdomain information.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => 'Indicates whether the environment is the default environment.'."\n",
- '$ref' => '#/components/schemas/SubDomainInfo',
- ],
- ],
- 'default' => [
- 'description' => 'The creation timestamp.'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- 'createTimestamp' => [
- 'description' => 'The update timestamp.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- ],
- 'updateTimestamp' => [
- 'description' => 'The resource group ID.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- ],
- 'resourceGroupId' => [
- 'description' => 'rg-aekzzzntl5njbpi',
- 'type' => 'string',
- 'example' => 'rg-aekz4us4iruleja',
- ],
- 'statisticsInfo' => [
- 'description' => 'The information about online resources.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'totalCount' => [
- 'description' => 'The total number of entries.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'resourceStatistics' => [
- 'description' => '4',
- 'type' => 'array',
- 'items' => [
- 'description' => 'The number of online resources.'."\n",
- '$ref' => '#/components/schemas/ResourceStatistic',
- ],
- ],
- ],
- ],
- ],
- ],
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateDomain',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:domain/{#DomainId}'],
],
],
],
],
- 'staticInfo' => [
- 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。',
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3F8EE674-BB08-5E92-BE6F-E4756A748B0F\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"environmentId\\": \\"env-cq7l5s5lhtgi6qasrdc0\\\\n\\",\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"测试环境\\",\\n \\"description\\": \\"这是xxx的xx项目测试环境\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"subDomainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"\\"\\n }\\n ],\\n \\"default\\": true,\\n \\"createTimestamp\\": 1719386834548,\\n \\"updateTimestamp\\": 1719386834548,\\n \\"resourceGroupId\\": \\"rg-aekz4us4iruleja\\",\\n \\"statisticsInfo\\": {\\n \\"totalCount\\": 1,\\n \\"resourceStatistics\\": [\\n {\\n \\"resourceType\\": \\"\\",\\n \\"resourceCount\\": 0\\n }\\n ]\\n }\\n }\\n}","type":"json"}]',
- 'title' => 'GetEnvironment',
- 'translator' => 'machine',
],
'UpdateEnvironment' => [
- 'summary' => 'Modifies an environment.',
'path' => '/v1/environments/{environmentId}',
- 'methods' => [
- 'put',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'methods' => ['put'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -24026,10 +16893,10 @@
'deprecated' => true,
'systemTags' => [
'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
'abilityTreeCode' => '219216',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayN14L0I',
- ],
+ 'abilityTreeNodes' => ['FEATUREapigatewayN14L0I'],
],
'parameters' => [
[
@@ -24037,1084 +16904,1321 @@
'in' => 'body',
'style' => 'json',
'schema' => [
- 'description' => 'The environment ID.'."\n",
+ 'description' => 'The request body.',
'type' => 'object',
'properties' => [
- 'alias' => [
- 'description' => 'Schema of Response'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'The request ID, which is used to trace the API call link.'."\n",
- ],
- 'description' => [
- 'description' => 'The status code returned.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'The response message returned.'."\n",
- ],
+ 'alias' => ['description' => 'The alias of the environment.', 'type' => 'string', 'required' => true, 'example' => '测试环境', 'title' => ''],
+ 'description' => ['description' => 'The description of the environment. You can specify information such as the purpose and owner of the environment.', 'type' => 'string', 'required' => false, 'example' => '这是xx的xx项目测试环境', 'title' => ''],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
[
'name' => 'environmentId',
'in' => 'path',
- 'schema' => [
- 'description' => 'Update Environment',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'env-cq7l5s5lhtgi6qasrdc0',
- ],
+ 'schema' => ['description' => 'The environment ID.', 'type' => 'string', 'required' => true, 'example' => 'env-cq7l5s5lhtgi6qasrdc0', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
+ 'title' => '',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => '',
- 'type' => 'string',
- 'example' => '52FB803B-3CD8-5FF8-AAE9-C2B841F6A483',
- ],
- 'code' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID, which is used to trace the API call chain.', 'type' => 'string', 'example' => '52FB803B-3CD8-5FF8-AAE9-C2B841F6A483'],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。',
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', 'returnType' => 'synchronous'],
+ 'title' => 'Update an environment',
+ 'summary' => 'Updates an environment.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateEnvironment'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateEnvironment',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Environment', 'arn' => 'acs:apig:{#regionId}:{#accountId}:environment/{#EnvironmentId}'],
+ ],
+ ],
+ ],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"52FB803B-3CD8-5FF8-AAE9-C2B841F6A483\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'UpdateEnvironment',
- 'translator' => 'machine',
],
- 'DeleteEnvironment' => [
- 'summary' => 'Deletes an environment.',
- 'path' => '/v1/environments/{environmentId}',
- 'methods' => [
- 'delete',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'UpdateGatewayFeature' => [
+ 'summary' => 'Updates the attribute parameters of a gateway.',
+ 'path' => '/v1/gateways/{gatewayId}/gateway-features/{name}',
+ 'methods' => ['put'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
- 'deprecated' => true,
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
+ 'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '219215',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayN14L0I',
- ],
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '220139',
+ 'abilityTreeNodes' => ['FEATUREapigatewayUWNKMC'],
],
'parameters' => [
[
- 'name' => 'environmentId',
+ 'name' => 'gatewayId',
'in' => 'path',
+ 'schema' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-cq2avtllh****', 'title' => ''],
+ ],
+ [
+ 'name' => 'name',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The name of the attribute parameter.', 'type' => 'string', 'required' => false, 'example' => 'enable-gzip', 'title' => ''],
+ ],
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'description' => 'The environment ID.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'example' => 'env-cq7l5s5lhtgi6qasrdc0',
+ 'description' => 'The request body.',
+ 'type' => 'object',
+ 'properties' => [
+ 'value' => ['description' => 'The parameter value.', 'type' => 'string', 'required' => false, 'example' => '"true"', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response'."\n",
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'The request ID. You can use the ID to trace the request link.'."\n",
- 'type' => 'string',
- 'example' => 'C61E30D3-579A-5B43-994E-31E02EDC9129',
- ],
- 'code' => [
- 'description' => 'The status code returned.'."\n",
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'The response message returned.'."\n",
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '043360DA-ED3B-5386-9B7A-D94DECF99A30', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。',
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"C61E30D3-579A-5B43-994E-31E02EDC9129\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'DeleteEnvironment',
- 'translator' => 'machine',
- ],
- 'ListEnvironments' => [
- 'summary' => 'ListEnvironments',
- 'path' => '/v1/environments',
- 'methods' => [
- 'get',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Update gateway attribute parameters',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateGatewayFeature'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateGatewayFeature',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"043360DA-ED3B-5386-9B7A-D94DECF99A30\\",\\n \\"message\\": \\"success\\",\\n \\"code\\": \\"Ok\\"\\n}","type":"json"}]',
+ ],
+ 'UpdateGatewayName' => [
+ 'summary' => 'Modifies the name of a gateway.',
+ 'path' => '/v1/gateways/{gatewayId}/name',
+ 'methods' => ['put'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
'deprecated' => true,
'systemTags' => [
- 'operationType' => 'list',
+ 'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '219218',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayPE3NRT',
- ],
+ 'abilityTreeNodes' => ['FEATUREapigatewayUWNKMC'],
],
'parameters' => [
[
- 'name' => 'nameLike',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Environment name, fuzzy search.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test',
- ],
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-cpv4sqdl****', 'title' => ''],
],
[
- 'name' => 'aliasLike',
+ 'name' => 'name',
'in' => 'query',
- 'schema' => [
- 'description' => 'Environment alias, fuzzy search.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'production',
- ],
+ 'schema' => ['description' => 'The gateway name.', 'type' => 'string', 'required' => false, 'example' => 'dev-itemcenter-router', 'title' => ''],
],
- [
- 'name' => 'gatewayId',
- 'in' => 'query',
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'Gateway ID, exact search.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-cptv6ktlhtgnqr73h8d1',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '585657D2-1C20-5B8A-AF17-D727C6490BE4', 'title' => ''],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
+ ],
+ 'staticInfo' => ['noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。', 'returnType' => 'synchronous'],
+ 'title' => 'Modify gateway name',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateGatewayName'],
+ ],
+ ],
+ 'ramActions' => [
[
- 'name' => 'gatewayNameLike',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Gateway name, fuzzy search.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test-gw',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateGatewayName',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"585657D2-1C20-5B8A-AF17-D727C6490BE4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'UpdateGatewayQuotaRule' => [
+ 'summary' => 'Edits a quota throttling rule on a gateway.',
+ 'path' => '/v1/gateways/{gatewayId}/quota-rules/{ruleId}',
+ 'methods' => ['put'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'pageNumber',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Page number, default is 1.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
+ 'AK' => [],
],
+ ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '222348',
+ 'abilityTreeNodes' => ['FEATUREapigatewayC93I4Z'],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
[
- 'name' => 'pageSize',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Page size, default is 10.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The unique ID of the gateway.', 'type' => 'string', 'required' => false, 'example' => 'gw-123456'],
],
[
- 'name' => 'resourceGroupId',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'Resource group ID.',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'rg-aek2sy66mftleiq',
- ],
+ 'name' => 'ruleId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The ID of the rule.', 'type' => 'string', 'required' => false, 'example' => 'qr-d8j7fpmm1hks65xxxx'],
],
[
- 'name' => 'gatewayType',
- 'in' => 'query',
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'description' => 'The gateway type',
- 'type' => 'string',
+ 'title' => '',
+ 'description' => 'The request body.',
+ 'type' => 'object',
+ 'properties' => [
+ 'ruleName' => ['title' => '', 'description' => 'The updated rule name.', 'type' => 'string', 'required' => false, 'example' => 'team-rule'],
+ 'quotaLimit' => ['title' => '', 'description' => 'The updated total available quota.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1000'],
+ 'addIds' => [
+ 'title' => '',
+ 'description' => 'The list of principal (consumer) IDs to bind.',
+ 'type' => 'array',
+ 'items' => ['title' => '', 'description' => 'The principal ID.', 'type' => 'string', 'example' => 'cs-001xxxxx', 'required' => false],
+ 'required' => false,
+ 'example' => 'cs-001,cs-002',
+ ],
+ 'removeIds' => [
+ 'title' => '',
+ 'description' => 'The list of principal (consumer) IDs to unbind.',
+ 'type' => 'array',
+ 'items' => ['title' => '', 'description' => 'The principal ID.', 'type' => 'string', 'example' => 'cs-003xxxxx', 'required' => false],
+ 'required' => false,
+ 'example' => 'cs003,cs-004',
+ ],
+ 'dryRun' => ['title' => '', 'description' => 'Specifies whether to perform a dry run only without persisting or applying the configuration. A dry run checks whether conflicting rules exist on the bound consumers. For example, a consumer that already has a calendar-day quota cannot have another calendar-day quota rule added.', 'type' => 'boolean', 'required' => false, 'example' => 'true'],
+ 'overwrite' => ['title' => '', 'description' => 'Specifies whether to allow overwriting when a conflict exists. If overwriting is allowed, the conflicting principals (consumers) are unbound from the old rule and bound to the new rule.', 'type' => 'boolean', 'required' => false, 'example' => ''],
+ 'conflictHash' => ['title' => '', 'description' => 'The conflict snapshot hash, used to prevent concurrent dirty overwrites when confirming an overwrite. Obtain this value from the response of a prior dryRun=true call.'."\n"
+ ."\n"
+ .'This parameter is not required in the following cases: no conflicts exist, the call is a dry run (dryRun=true), or overwrite is set to false.'."\n"
+ ."\n"
+ .'When dryRun is set to false and overwrite is set to true, if this parameter is missing or the value has expired and no longer matches, the backend returns accepted=false with a new conflict preview. Perform the dry run again to confirm the new conflicts.', 'type' => 'string', 'required' => false, 'example' => ' '."\n"
+ .'f8f44dc6cf369a017d56b7197eb4fb5ac4bbb6b09a92b9b41999541f50xxxxxx'],
+ 'consumerGroupIds' => [
+ 'title' => '',
+ 'description' => 'The list of consumer group IDs. This parameter is not supported.',
+ 'type' => 'array',
+ 'items' => ['title' => '', 'description' => 'The consumer group ID.', 'type' => 'string', 'example' => 'consumer-group-001', 'required' => false],
+ 'deprecated' => true,
+ 'required' => false,
+ 'example' => 'group1,group2',
+ ],
+ ],
'required' => false,
- 'example' => 'APIGateway',
+ 'example' => '{\'key\': \'value\'}',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
+ 'title' => '',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Request ID, used for tracing the call chain.',
- 'type' => 'string',
- 'example' => 'CE857A85-251D-5018-8103-A38957D71E20',
- ],
- 'code' => [
- 'description' => 'Response code.',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => 'Response message.',
- 'type' => 'string',
- 'example' => 'success',
- ],
+ 'requestId' => ['title' => '', 'description' => 'The unique ID of the request.', 'type' => 'string', 'example' => '1234567890'],
+ 'code' => ['title' => '', 'description' => 'The status code or error code.', 'type' => 'string', 'example' => '200, 404, 500'],
+ 'message' => ['title' => '', 'description' => 'The message content.', 'type' => 'string', 'example' => '你好,世界!'],
'data' => [
- 'description' => 'Paged query environment list response.',
+ 'title' => '',
+ 'description' => 'The response data.',
'type' => 'object',
'properties' => [
- 'pageNumber' => [
- 'description' => 'Page number.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'pageSize' => [
- 'description' => 'Number of items per page.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
- 'totalSize' => [
- 'description' => 'Total number of items.',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '25',
- ],
- 'items' => [
- 'description' => 'List of environment information.',
- 'type' => 'array',
- 'items' => [
- 'description' => 'Environment information.',
- '$ref' => '#/components/schemas/EnvironmentInfo',
+ 'ruleId' => ['title' => '', 'description' => 'The ID of the rule.', 'type' => 'string', 'example' => 'qr-xxxxxx'],
+ 'dryRun' => ['title' => '', 'description' => 'Indicates whether this is a dry run.', 'type' => 'boolean', 'example' => 'true'],
+ 'accepted' => ['title' => '', 'description' => 'Indicates whether the write request is accepted by the system. A value of false typically indicates a retryable scenario, such as an unconfirmed conflict overwrite.', 'type' => 'boolean', 'example' => 'true'],
+ 'conflictPreview' => [
+ 'title' => '',
+ 'description' => 'The conflict preview.',
+ 'type' => 'object',
+ 'properties' => [
+ 'totalConflictCount' => ['title' => '', 'description' => 'The total number of conflicts.', 'type' => 'integer', 'format' => 'int32', 'example' => '2'],
+ 'conflictHash' => ['title' => '', 'description' => 'The hash of the conflict snapshot.', 'type' => 'string', 'example' => ' '."\n"
+ .'f8f44dc6cf369a017d56b7197eb4fb5ac4bbb6b09a92b9b41999541f50xxxxxx'],
+ 'items' => [
+ 'description' => 'The list of conflicting principals (consumers).',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The details of a conflicting principal (consumer).',
+ 'type' => 'object',
+ 'properties' => [
+ 'consumerId' => ['description' => 'The consumer ID.', 'type' => 'string', 'example' => 'cs-d82n1g6m1hkm375xxxxx', 'title' => ''],
+ 'consumerName' => ['description' => 'The consumer name.', 'type' => 'string', 'example' => 'consumer-a', 'title' => ''],
+ 'conflictType' => ['title' => '', 'description' => 'The type of the existing conflicting rule on the consumer. Valid values: calendar: The conflicting rule is a calendar-period rule. epoch: The conflicting rule is a custom-period rule.', 'type' => 'string', 'example' => 'calendar'],
+ 'conflictPeriodType' => ['title' => '', 'description' => 'The period type of the existing conflicting rule on the consumer. Valid values: day: daily period. week: weekly period. month: monthly period.', 'type' => 'string', 'example' => 'week'],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
],
+ 'example' => '',
],
],
+ 'example' => '{\'key\': \'value\'}',
],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。',
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Edit consumer quota rule',
+ 'description' => 'Edits a quota rule on a gateway. This operation takes effect only on AI gateways with a version later than 2.1.19. Editing a rule preserves the historical usage of consumers on the rule.'."\n"
+ ."\n"
+ .'> Recommended call logic:'."\n"
+ .'> - Step 1: Perform a dry run to check for rule conflicts.'."\n"
+ .'> - - Set dryRun to true.'."\n"
+ .'> - - The response contains a conflict preview with conflictHash.'."\n"
+ .'> - Step 2: Submit the request after confirmation.'."\n"
+ .'> - - No conflicts: Set dryRun to false and overwrite to false.'."\n"
+ .'> - - Conflicts exist and you confirm the overwrite: Set dryRun to false, overwrite to true, and conflictHash to the value returned in the previous step.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CE857A85-251D-5018-8103-A38957D71E20\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 25,\\n \\"items\\": [\\n {\\n \\"environmentId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"alias\\": \\"\\",\\n \\"description\\": \\"\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"subDomainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"\\"\\n }\\n ],\\n \\"default\\": true,\\n \\"createTimestamp\\": 0,\\n \\"updateTimestamp\\": 0,\\n \\"resourceGroupId\\": \\"rg-xxxx\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'ListEnvironments',
- 'translator' => 'machine',
- ],
- 'ListPluginClasses' => [
- 'summary' => 'ListPluginClasses',
- 'path' => '/v1/plugin-classes',
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateGatewayQuotaRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"1234567890\\",\\n \\"code\\": \\"200, 404, 500\\",\\n \\"message\\": \\"你好,世界!\\",\\n \\"data\\": {\\n \\"ruleId\\": \\"qr-xxxxxx\\",\\n \\"dryRun\\": true,\\n \\"accepted\\": true,\\n \\"conflictPreview\\": {\\n \\"totalConflictCount\\": 2,\\n \\"conflictHash\\": \\"\\\\t\\\\nf8f44dc6cf369a017d56b7197eb4fb5ac4bbb6b09a92b9b41999541f50xxxxxx\\",\\n \\"items\\": [\\n {\\n \\"consumerId\\": \\"cs-d82n1g6m1hkm375xxxxx\\",\\n \\"consumerName\\": \\"consumer-a\\",\\n \\"conflictType\\": \\"calendar\\",\\n \\"conflictPeriodType\\": \\"week\\"\\n }\\n ]\\n }\\n }\\n}","type":"json"}]',
+ ],
+ 'UpdateGatewayQuotaRuleStatus' => [
+ 'summary' => 'Enables or disables a quota throttling rule for a gateway.',
+ 'path' => '/v1/gateways/{gatewayId}/quota-rules/{ruleId}/status',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '231537',
- 'abilityTreeNodes' => [
- 'FEATUREapigateway216K2A',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '222348',
+ 'abilityTreeNodes' => ['FEATUREapigatewayC93I4Z'],
+ 'tenantRelevance' => 'tenant',
],
'parameters' => [
[
- 'name' => 'nameLike',
- 'in' => 'query',
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-123456'],
+ ],
+ [
+ 'name' => 'ruleId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The rule ID.', 'type' => 'string', 'required' => false, 'example' => 'qr-xxxxx'],
+ ],
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'description' => '',
- 'type' => 'string',
+ 'title' => '',
+ 'description' => 'The request body.',
+ 'type' => 'object',
+ 'properties' => [
+ 'clearHistory' => ['title' => '', 'description' => 'Specifies whether to clear historical quota usage when enabling or disabling the rule.', 'type' => 'boolean', 'example' => 'false', 'required' => false],
+ 'enable' => ['title' => '', 'description' => 'Specifies whether to enable or disable the rule.', 'type' => 'boolean', 'required' => false, 'example' => 'false'],
+ ],
'required' => false,
- 'example' => 'oauth',
+ 'example' => 'enable=false',
],
],
- [
- 'name' => 'aliasLike',
- 'in' => 'query',
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'The unique request ID.', 'type' => 'string', 'example' => '1234567890'],
+ 'code' => ['title' => '', 'description' => 'The status code or error code.', 'type' => 'string', 'example' => '200, 404, 500'],
+ 'message' => ['title' => '', 'description' => 'The message content.', 'type' => 'string', 'example' => 'success'],
+ ],
'example' => '',
],
],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Enable or disable a consumer quota rule',
+ 'description' => 'Enables or disables a quota rule on a gateway. This operation takes effect only for AI gateways with a version later than 2.1.19.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
[
- 'name' => 'type',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'Auth',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateGatewayQuotaRuleStatus',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"1234567890\\",\\n \\"code\\": \\"200, 404, 500\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'UpdateHttpApi' => [
+ 'summary' => 'Updates an HTTP API.',
+ 'path' => '/v1/http-apis/{httpApiId}',
+ 'methods' => ['put'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'source',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'HigressOfficial',
- ],
+ 'AK' => [],
],
+ ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '218997',
+ 'abilityTreeNodes' => ['FEATUREapigateway910B7T'],
+ ],
+ 'parameters' => [
[
- 'name' => 'pageSize',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
+ 'name' => 'httpApiId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The ID of the HTTP API to update.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'api-xxx'],
],
[
- 'name' => 'pageNumber',
- 'in' => 'query',
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
+ 'title' => '',
+ 'description' => 'The request body parameters.',
+ 'type' => 'object',
+ 'properties' => [
+ 'description' => ['title' => '', 'description' => 'The description of the API.', 'type' => 'string', 'required' => false, 'example' => '更新API描述'],
+ 'protocols' => [
+ 'title' => '',
+ 'description' => 'The list of API access protocols.',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '',
+ 'description' => 'The API access protocol.',
+ 'enumValueTitles' => ['HTTPS' => 'HTTPS protocol.', 'HTTP' => 'HTTP protocol.'],
+ 'type' => 'string',
+ 'default' => 'HTTP',
+ 'enum' => ['HTTP', 'HTTPS'],
+ 'required' => false,
+ 'example' => 'HTTP',
+ ],
+ 'required' => false,
+ 'example' => '',
+ ],
+ 'basePath' => ['title' => '', 'description' => 'The base path of the API. The value must start with a forward slash (/).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '/v1'],
+ 'versionConfig' => ['description' => 'The API versioning configuration.', '$ref' => '#/components/schemas/HttpApiVersionConfig', 'required' => false, 'title' => '', 'example' => ''],
+ 'ingressConfig' => [
+ 'description' => 'The configuration of the HTTP Ingress API.',
+ 'type' => 'object',
+ 'properties' => [
+ 'environmentId' => ['description' => 'The environment ID.', 'type' => 'string', 'required' => false, 'example' => 'env-cr6ql0tlhtgmc****', 'title' => ''],
+ 'sourceId' => ['description' => 'The source ID.', 'type' => 'string', 'required' => false, 'example' => 'src-crdddallhtgtr****', 'title' => ''],
+ 'ingressClass' => ['description' => 'The Ingress class to listen on.', 'type' => 'string', 'required' => false, 'example' => 'mse', 'title' => ''],
+ 'watchNamespace' => ['description' => 'The namespace to listen on.', 'type' => 'string', 'required' => false, 'example' => 'default', 'title' => ''],
+ 'overrideIngressIp' => ['description' => 'Specifies whether to update the address in the Ingress status.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'aiProtocols' => [
+ 'description' => 'The list of AI protocols.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The AI protocol.',
+ 'enumValueTitles' => [],
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'OpenAI/v1',
+ 'title' => '',
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'agentProtocols' => [
+ 'description' => 'The list of agent protocols.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The parameter.', 'type' => 'string', 'required' => false, 'example' => 'DashScope', 'title' => ''],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'deployConfigs' => [
+ 'description' => 'The list of API deployment configurations.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The API deployment configuration.', '$ref' => '#/components/schemas/HttpApiDeployConfig', 'required' => false, 'title' => '', 'example' => ''],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'enableAuth' => ['description' => 'Specifies whether to enable authentication.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ 'authConfig' => ['description' => 'The authentication configuration.', '$ref' => '#/components/schemas/AuthConfig', 'required' => false, 'title' => '', 'example' => ''],
+ 'onlyChangeConfig' => ['description' => 'Specifies whether to only update the configuration without triggering a redeployment. Set this parameter to true to update the configuration only.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ 'removeBasePathOnForward' => ['description' => 'Specifies whether to remove the base path when forwarding requests.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ 'firstByteTimeout' => ['description' => 'The first byte timeout period. Unit: seconds.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30', 'title' => ''],
+ ],
'required' => false,
- 'example' => '1',
+ 'example' => '{\'key\': \'value\'}',
],
],
- [
- 'name' => 'gatewayId',
- 'in' => 'query',
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'gw-d1j8tjum1hkhxxxxxxxx',
+ 'title' => '',
+ 'description' => 'The response.',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '393E2630-DBE7-5221-AB35-9E740675491A'],
+ 'message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'success'],
+ 'code' => ['title' => '', 'description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok'],
+ ],
+ 'example' => '',
],
],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"393E2630-DBE7-5221-AB35-9E740675491A\\",\\n \\"message\\": \\"success\\",\\n \\"code\\": \\"Ok\\"\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
+ ],
+ 'title' => 'Update an HTTP API',
+ 'changeSet' => [
+ ['createdAt' => '2025-08-19T12:32:18.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-07-17T13:23:54.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-06-26T12:05:00.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-05-21T13:14:00.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-01-02T05:54:59.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-11-18T08:56:08.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2024-09-06T06:02:55.000Z', 'description' => 'Request parameters changed'],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateHttpApi'],
+ ],
+ ],
+ 'ramActions' => [
[
- 'name' => 'installed',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'false',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateHttpApi',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
],
],
+ ],
+ ],
+ 'UpdateHttpApiOperation' => [
+ 'summary' => 'Updates an API operation.',
+ 'path' => '/v1/http-apis/{httpApiId}/operations/{operationId}',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
+ 'security' => [
[
- 'name' => 'direction',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'InBound',
- ],
+ 'AK' => [],
],
+ ],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREapigateway910B7T'],
+ ],
+ 'parameters' => [
[
- 'name' => 'excludeBuiltinAiProxy',
- 'in' => 'query',
- 'allowEmptyValue' => true,
- 'schema' => [
- 'description' => '',
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
- 'default' => 'false',
- ],
+ 'name' => 'httpApiId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The ID of the HTTP API to which the operation to be updated belongs.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'api-xxx'],
],
[
- 'name' => 'gatewayType',
- 'in' => 'query',
+ 'name' => 'operationId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The ID of the operation to update.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'op-xxx'],
+ ],
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'description' => '',
- 'type' => 'string',
+ 'description' => 'The request body parameters.',
+ 'type' => 'object',
+ 'properties' => [
+ 'operation' => ['title' => '', 'description' => 'The operation definition.', '$ref' => '#/components/schemas/HttpApiOperation', 'required' => false, 'example' => ''],
+ ],
'required' => false,
- 'example' => 'API',
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => '',
+ 'title' => '',
+ 'description' => 'The response.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => '',
- 'type' => 'string',
- 'example' => '61EBF577-1601-51E1-B136-9CD6xxxxxxxx',
- ],
- 'code' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '200',
- ],
- 'message' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'success',
- ],
- 'data' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'pageNumber' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'pageSize' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
- 'totalSize' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
- 'items' => [
- 'description' => '',
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'pluginClassId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'pls-d4ghv6em1hkixxxxxxxx',
- ],
- 'name' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'oauth',
- ],
- 'alias' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '',
- ],
- 'description' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '',
- ],
- 'version' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '1.0.0',
- ],
- 'type' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'Auth',
- ],
- 'source' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'HigressOfficial',
- ],
- 'supportedMinGatewayVersion' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '2.0.0',
- ],
- 'publishStatus' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'Success',
- ],
- 'pluginId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'pl-cvu6r4um1hkoxxxxxxxx',
- ],
- 'installed' => [
- 'description' => '',
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- ],
- ],
- ],
- ],
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '043360DA-ED3B-5386-9B7A-D94DECF99A30'],
+ 'code' => ['title' => '', 'description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok'],
+ 'message' => ['title' => '', 'description' => 'The response message.', 'type' => 'string', 'example' => 'success'],
],
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"61EBF577-1601-51E1-B136-9CD6xxxxxxxx\\",\\n \\"code\\": \\"200\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"totalSize\\": 10,\\n \\"items\\": [\\n {\\n \\"pluginClassId\\": \\"pls-d4ghv6em1hkixxxxxxxx\\",\\n \\"name\\": \\"oauth\\",\\n \\"alias\\": \\"OAuth2 认证\\",\\n \\"description\\": \\"基于 OAuth2 实现身份认证和鉴权。\\",\\n \\"version\\": \\"1.0.0\\",\\n \\"type\\": \\"Auth\\",\\n \\"source\\": \\"HigressOfficial\\",\\n \\"supportedMinGatewayVersion\\": \\"2.0.0\\",\\n \\"publishStatus\\": \\"Success\\",\\n \\"pluginId\\": \\"pl-cvu6r4um1hkoxxxxxxxx\\",\\n \\"installed\\": true\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'ListPluginClasses',
- ],
- 'ListConsumerAuthorizationRules' => [
- 'summary' => '查询消费者授权规则列表',
- 'path' => '/v1/consumers/{consumerId}/authorization-rules',
- 'methods' => [
- 'get',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Update an API operation',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateHttpApiOperation'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateHttpApiOperation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"043360DA-ED3B-5386-9B7A-D94DECF99A30\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'UpdateHttpApiRoute' => [
+ 'summary' => 'Updates a route of an HttpApi.',
+ 'path' => '/v1/http-apis/{httpApiId}/routes/{routeId}',
+ 'methods' => ['put'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
- 'abilityTreeCode' => '248112',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '237777',
+ 'abilityTreeNodes' => ['FEATUREapigateway910B7T'],
],
'parameters' => [
[
- 'name' => 'apiNameLike',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'qwen3',
- ],
- ],
- [
- 'name' => 'pageNumber',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
- ],
- [
- 'name' => 'pageSize',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
+ 'name' => 'httpApiId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The ID of the HTTP API to which the route belongs.', 'type' => 'string', 'required' => false, 'example' => 'api-cqoub6tlhtgvof7***', 'title' => ''],
],
[
- 'name' => 'consumerId',
+ 'name' => 'routeId',
'in' => 'path',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'cs-csgdi45lhtggrjcpriug',
- ],
+ 'schema' => ['description' => 'The route ID.', 'type' => 'string', 'required' => false, 'example' => 'hr-cr82undlhtgrl***', 'title' => ''],
],
- ],
- 'responses' => [
- 200 => [
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
+ 'description' => 'The request body.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request',
- 'type' => 'string',
- 'example' => '294382D9-EE60-5735-A4CD-F2AC2840423D',
- ],
- 'code' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'Ok',
- ],
- 'message' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'success',
+ 'domainIds' => [
+ 'description' => 'The list of domain name IDs.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The domain name ID.', 'type' => 'string', 'required' => false, 'example' => 'd-cr62ts5lhtgln***', 'title' => ''],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
- 'data' => [
- 'description' => '',
+ 'match' => ['description' => 'The route match rule.', '$ref' => '#/components/schemas/HttpRouteMatch', 'required' => false, 'title' => '', 'example' => ''],
+ 'backendConfig' => [
+ 'description' => 'The backend service configuration of the route.',
'type' => 'object',
'properties' => [
- 'totalSize' => [
- 'description' => '',
+ 'scene' => [
+ 'description' => 'The backend service scenario.',
+ 'enumValueTitles' => ['SingleService' => 'single service.', 'MultiServiceByRatio' => 'multi-service canary release by ratio.', 'Redirect' => 'Redirect', 'Mock' => 'Mock'],
'type' => 'string',
- 'example' => '9',
- ],
- 'pageNumber' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '1',
- ],
- 'pageSize' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
+ 'required' => false,
+ 'example' => 'SingleService',
+ 'title' => '',
],
- 'items' => [
- 'description' => '',
+ 'services' => [
+ 'description' => 'The list of backend services.',
'type' => 'array',
'items' => [
- 'description' => '',
+ 'description' => 'The backend service.',
'type' => 'object',
'properties' => [
- 'consumerAuthorizationRuleId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'car-csgeka5lhtggrjcprok0',
- ],
- 'consumerId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'cs-csheiftlhtgmp0j0hp4g',
- ],
- 'apiInfo' => [
- 'description' => '',
- '$ref' => '#/components/schemas/HttpApiApiInfo',
- ],
- 'environmentInfo' => [
- 'description' => '',
- '$ref' => '#/components/schemas/EnvironmentInfo',
- ],
- 'gatewayInfo' => [
- 'description' => '',
- '$ref' => '#/components/schemas/GatewayInfo',
- ],
- 'resourceId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '2351944',
- ],
- 'resourceType' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'HttpApiRoute',
- ],
- 'expireStatus' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'InEffect',
- ],
- 'expireMode' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'ShortTerm',
- ],
- 'expireTimestamp' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '172086834548',
- ],
- 'createTimestamp' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1719386834548',
- ],
- 'updateTimestamp' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1721116090326',
- ],
- 'deployStatus' => [
- 'description' => '',
+ 'serviceId' => ['description' => 'The service ID.', 'type' => 'string', 'required' => false, 'example' => 'svc-cr6pk4tlhtgm58e***', 'title' => ''],
+ 'protocol' => [
+ 'description' => 'The service protocol. Valid values:'."\n"
+ .'- HTTP'."\n"
+ .'- HTTPS',
+ 'enumValueTitles' => ['HTTPS' => 'HTTPS', 'HTTP' => 'HTTP'],
'type' => 'string',
- 'example' => '{}',
+ 'required' => false,
+ 'example' => 'HTTP',
+ 'title' => '',
],
+ 'version' => ['description' => 'The service version.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''],
+ 'weight' => ['description' => 'The percentage value of the traffic ratio.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '49', 'title' => ''],
+ 'port' => ['description' => 'The service port. Do not specify this parameter for dynamic ports.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '8080', 'title' => ''],
],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'environmentId' => ['description' => 'The environment ID.', 'type' => 'string', 'required' => false, 'example' => 'env-cquqsollhtgid***', 'title' => ''],
+ 'description' => ['description' => 'The route description.', 'type' => 'string', 'required' => false, 'example' => '商品中心服务路由', 'title' => ''],
+ 'mcpRouteConfig' => [
+ 'description' => 'The MCP route configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'protocol' => ['description' => 'The MCP protocol.', 'type' => 'string', 'required' => false, 'example' => 'SSE', 'title' => ''],
+ 'exposedUriPath' => ['description' => 'The exposed URI path.', 'type' => 'string', 'required' => false, 'example' => '/mcp/chat', 'title' => ''],
+ 'mcpStatisticsEnable' => ['description' => 'Specifies whether to enable MCP statistics.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'policyConfigs' => [
+ 'description' => 'The route-level policy configurations.',
+ 'type' => 'array',
+ 'items' => ['description' => 'object', '$ref' => '#/components/schemas/HttpApiPolicyConfigs', 'required' => false, 'title' => '', 'example' => ''],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => '',
+ 'description' => 'The response struct.',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CBEEB8C1-108E-50F0-9BEA-DED79553C309'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ ],
+ 'example' => '',
+ ],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"294382D9-EE60-5735-A4CD-F2AC2840423D\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"totalSize\\": \\"9\\",\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"items\\": [\\n {\\n \\"consumerAuthorizationRuleId\\": \\"car-csgeka5lhtggrjcprok0\\",\\n \\"consumerId\\": \\"cs-csheiftlhtgmp0j0hp4g\\",\\n \\"apiInfo\\": {\\n \\"httpApiId\\": \\"api-xxx\\",\\n \\"name\\": \\"test\\",\\n \\"basePath\\": \\"/v1\\",\\n \\"description\\": \\"\\",\\n \\"versionInfo\\": {\\n \\"enable\\": true,\\n \\"scheme\\": \\"Query\\",\\n \\"headerName\\": \\"my-version\\",\\n \\"queryName\\": \\"myVersion\\",\\n \\"version\\": \\"v1\\"\\n },\\n \\"ingressInfo\\": {\\n \\"sourceId\\": \\"\\",\\n \\"ingressClass\\": \\"\\",\\n \\"watchNamespace\\": \\"\\",\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"\\"\\n },\\n \\"k8sClusterInfo\\": {\\n \\"clusterId\\": \\"\\"\\n },\\n \\"overrideIngressIp\\": true\\n },\\n \\"type\\": \\"Rest\\",\\n \\"resourceGroupId\\": \\"rg-xxx\\",\\n \\"enabelAuth\\": true,\\n \\"authConfig\\": {\\n \\"authType\\": \\"\\",\\n \\"authMode\\": \\"\\"\\n },\\n \\"gatewayId\\": \\"\\",\\n \\"modelCategory\\": \\"\\",\\n \\"protocols\\": [\\n \\"HTTP\\"\\n ],\\n \\"environments\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"backendType\\": \\"Service\\",\\n \\"serviceConfigs\\": [\\n {\\n \\"gatewayServiceId\\": \\"gs-xxx\\",\\n \\"name\\": \\"demo-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": \\"8080\\",\\n \\"weight\\": 100,\\n \\"version\\": \\"v1\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"serviceId\\": \\"svc-xxx\\"\\n }\\n ],\\n \\"customDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\"\\n }\\n ],\\n \\"name\\": \\"test\\",\\n \\"alias\\": \\"test\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"gw-xxx\\",\\n \\"name\\": \\"test\\"\\n },\\n \\"deployStatus\\": \\"Deployed\\",\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"d-xxx\\",\\n \\"name\\": \\"www.example.com\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"networkType\\": \\"Internet\\"\\n }\\n ]\\n }\\n ],\\n \\"aiProtocols\\": [\\n \\"\\"\\n ],\\n \\"deployConfigs\\": [\\n {\\n \\"environmentId\\": \\"env-xxx\\",\\n \\"backendScene\\": \\"SingleService\\",\\n \\"autoDeploy\\": true,\\n \\"gatewayId\\": \\"gw-xx\\",\\n \\"routeBackend\\": {\\n \\"scene\\": \\"Single\\",\\n \\"services\\": [\\n {\\n \\"serviceId\\": \\"service-cq2bmmdlhtgj***\\",\\n \\"name\\": \\"item-service\\",\\n \\"protocol\\": \\"HTTP\\",\\n \\"port\\": 0,\\n \\"weight\\": 49,\\n \\"version\\": \\"v1\\"\\n }\\n ]\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"mock\\": {\\n \\"enable\\": false,\\n \\"responseCode\\": 200,\\n \\"responseContent\\": \\"\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"customDomainIds\\": [\\n \\"d-xxx\\"\\n ],\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"svc-xxx\\",\\n \\"weight\\": 100,\\n \\"modelNamePattern\\": \\"qwen-*\\",\\n \\"modelName\\": \\"qwen-max\\",\\n \\"intentCode\\": \\"\\",\\n \\"match\\": {\\n \\"default\\": true,\\n \\"conditions\\": [\\n {\\n \\"type\\": \\"Query\\",\\n \\"key\\": \\"color\\",\\n \\"value\\": \\"gray\\",\\n \\"operator\\": \\"equal\\"\\n }\\n ]\\n },\\n \\"port\\": 0,\\n \\"protocol\\": \\"\\",\\n \\"gatewayServiceId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"version\\": \\"\\",\\n \\"multiServiceRouteStrategy\\": \\"\\",\\n \\"observabilityRouteConfig\\": {\\n \\"mode\\": \\"\\",\\n \\"rateLimit\\": 0,\\n \\"queueSize\\": 0\\n }\\n }\\n ],\\n \\"policyConfigs\\": [\\n {\\n \\"type\\": \\"AiFallback\\",\\n \\"enable\\": true,\\n \\"aiFallbackConfig\\": {\\n \\"serviceConfigs\\": [\\n {\\n \\"serviceId\\": \\"\\",\\n \\"targetModelName\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiSecurityGuardConfig\\": {\\n \\"serviceAddress\\": \\"\\",\\n \\"checkRequest\\": true,\\n \\"checkResponse\\": true,\\n \\"checkRequestImage\\": true,\\n \\"checkResponseImage\\": true,\\n \\"requestCheckService\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"riskAlertLevel\\": \\"\\",\\n \\"riskConfig\\": [\\n {\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\",\\n \\"consumerRules\\": {\\n \\"pattern\\": \\"\\",\\n \\"matchType\\": \\"\\"\\n }\\n }\\n ],\\n \\"bufferLimit\\": 0,\\n \\"consumerRequestCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"requestCheckService\\": \\"\\",\\n \\"requestImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerResponseCheckService\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"responseCheckService\\": \\"\\",\\n \\"responseImageCheckService\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"modalityType\\": \\"\\"\\n }\\n ],\\n \\"consumerRiskLevel\\": [\\n {\\n \\"name\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"type\\": \\"\\",\\n \\"level\\": \\"\\"\\n }\\n ]\\n },\\n \\"aiTokenRateLimitConfig\\": {\\n \\"rules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"globalRules\\": [\\n {\\n \\"limitType\\": \\"\\",\\n \\"matchKey\\": \\"\\",\\n \\"matchType\\": \\"\\",\\n \\"matchValue\\": \\"\\",\\n \\"limitMode\\": \\"\\",\\n \\"limitValue\\": 0\\n }\\n ],\\n \\"enableGlobalRules\\": true\\n }\\n }\\n ],\\n \\"customDomainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\"\\n }\\n ],\\n \\"subDomains\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"deployCntMap\\": {\\n \\"key\\": {\\n \\"deployedCnt\\": 0,\\n \\"Cnt\\": 0\\n }\\n },\\n \\"agentProtocols\\": [\\n \\"\\"\\n ]\\n },\\n \\"environmentInfo\\": {\\n \\"environmentId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"alias\\": \\"\\",\\n \\"description\\": \\"\\",\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"subDomainInfos\\": [\\n {\\n \\"domainId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"protocol\\": \\"\\",\\n \\"networkType\\": \\"\\"\\n }\\n ],\\n \\"default\\": true,\\n \\"createTimestamp\\": 0,\\n \\"updateTimestamp\\": 0,\\n \\"resourceGroupId\\": \\"rg-xxxx\\"\\n },\\n \\"gatewayInfo\\": {\\n \\"gatewayId\\": \\"\\",\\n \\"name\\": \\"\\",\\n \\"vpcInfo\\": {\\n \\"vpcId\\": \\"\\",\\n \\"name\\": \\"\\"\\n },\\n \\"engineVersion\\": \\"\\"\\n },\\n \\"resourceId\\": \\"2351944\\",\\n \\"resourceType\\": \\"HttpApiRoute\\",\\n \\"expireStatus\\": \\"InEffect\\",\\n \\"expireMode\\": \\"ShortTerm\\",\\n \\"expireTimestamp\\": 172086834548,\\n \\"createTimestamp\\": 1719386834548,\\n \\"updateTimestamp\\": 1721116090326,\\n \\"deployStatus\\": \\"{}\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'ListConsumerAuthorizationRules',
- ],
- 'GetSecretValue' => [
- 'summary' => '查询密钥值',
- 'path' => '/v1/secrets/name/{name}/value',
- 'methods' => [
- 'get',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CBEEB8C1-108E-50F0-9BEA-DED79553C309\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ 'title' => 'Update route',
+ 'changeSet' => [
+ ['createdAt' => '2026-04-08T11:25:41.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2026-01-12T10:56:14.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-07-24T12:32:02.000Z', 'description' => 'Request parameters changed'],
],
- 'schemes' => [
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateHttpApiRoute'],
+ ],
],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateHttpApiRoute',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'UpdateMcpServer' => [
+ 'summary' => 'Updates an MCP server.',
+ 'path' => '/v1/mcp-servers/{mcpServerId}',
+ 'methods' => ['put'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '280144',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
+ 'abilityTreeCode' => '281124',
+ 'abilityTreeNodes' => ['FEATUREapigatewayMD7H1W'],
],
'parameters' => [
[
- 'name' => 'name',
- 'in' => 'path',
- 'schema' => [
- 'type' => 'string',
- 'required' => false,
- ],
- ],
- ],
- 'responses' => [
- 200 => [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
+ 'description' => 'The request body.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request',
+ 'description' => ['description' => 'The description.', 'type' => 'string', 'required' => false, 'example' => '商品中心服务路由', 'title' => ''],
+ 'domainIds' => [
+ 'description' => 'The domain name IDs.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The domain name IDs.', 'type' => 'string', 'required' => false, 'example' => 'd-cr62ts5lhtgln***', 'title' => ''],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'match' => ['description' => 'The route match rule.', '$ref' => '#/components/schemas/HttpRouteMatch', 'required' => false, 'title' => '', 'example' => ''],
+ 'backendConfig' => [
+ 'description' => 'The backend service configuration of the route.',
+ 'type' => 'object',
+ 'properties' => [
+ 'scene' => [
+ 'description' => 'The backend service scenario.',
+ 'enumValueTitles' => ['SingleService' => 'single backend service.'],
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SingleService',
+ 'title' => '',
+ ],
+ 'services' => [
+ 'description' => 'The backend services.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The backend services.',
+ 'type' => 'object',
+ 'properties' => [
+ 'protocol' => [
+ 'description' => 'The service protocol. Valid values:'."\n"
+ .'- TCP'."\n"
+ .'- HTTP'."\n"
+ .'- DUBBO',
+ 'enumValueTitles' => ['TCP' => 'TCP protocol.', 'HTTP' => 'HTTP protocol.', 'DUBBO' => 'Dubbo protocol.'],
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'HTTP',
+ 'title' => '',
+ ],
+ 'port' => ['description' => 'The service port. Do not specify this parameter for dynamic ports.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '8080', 'title' => ''],
+ 'weight' => ['description' => 'The percentage value of the traffic ratio.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '49', 'title' => ''],
+ 'serviceId' => ['description' => 'The service ID.', 'type' => 'string', 'required' => false, 'example' => 'svc-cr6pk4tlhtgm58e***', 'title' => ''],
+ 'version' => ['description' => 'The service version.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'exposedUriPath' => ['description' => 'The exposed URI path. This parameter is required when protocol is SSE or StreamableHTTP and type is RealMCP.', 'type' => 'string', 'required' => false, 'example' => '/sse', 'title' => ''],
+ 'assembledSources' => [
+ 'description' => 'The list of assembled sources. This parameter is required when type is AssemblyMCP.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list of assembled sources. This parameter is required when type is AssemblyMCP.',
+ 'type' => 'object',
+ 'properties' => [
+ 'mcpServerName' => ['description' => 'The MCP server name.', 'type' => 'string', 'required' => false, 'example' => 'test-mcp', 'title' => ''],
+ 'mcpServerId' => ['description' => 'MCP Server ID', 'type' => 'string', 'required' => false, 'example' => 'mcp-afaefaefaf', 'title' => ''],
+ 'tools' => [
+ 'description' => 'The list of MCP tools.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The list of MCP tools.', 'type' => 'string', 'required' => false, 'example' => 'tool-1', 'title' => ''],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'mcpStatisticsEnable' => ['description' => 'Specifies whether to enable MCP observability. Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
+ 'type' => [
+ 'description' => 'The MCP server type filter. Valid values:'."\n"
+ .'- RealMCP'."\n"
+ .'- AssemblyMCP',
+ 'enumValueTitles' => ['AssemblyMCP' => 'assembly MCP service that assembles tools from multiple MCP servers into a single MCP server.', 'RealMCP' => 'RealMCP'],
'type' => 'string',
+ 'required' => true,
+ 'enum' => ['RealMCP', 'AssemblyMCP'],
+ 'example' => 'RealMCP',
+ 'title' => '',
],
- 'code' => [
+ 'protocol' => [
+ 'description' => 'The protocol type. Valid values:'."\n"
+ .'- HTTP: HTTP protocol.'."\n"
+ .'- HTTPS: HTTPS protocol.'."\n"
+ .'- SSE: Server-Sent Events protocol.'."\n"
+ .'- StreamableHTTP: streamable HTTP protocol.',
+ 'enumValueTitles' => ['SSE' => 'Server-Sent Events, a server-push streaming protocol.', 'HTTPS' => 'HTTPS protocol.', 'StreamableHTTP' => 'streamable HTTP protocol.', 'HTTP' => 'HTTP protocol.'],
'type' => 'string',
+ 'required' => true,
+ 'enum' => ['HTTP', 'HTTPS', 'SSE', 'StreamableHTTP'],
+ 'example' => 'HTTP',
+ 'title' => '',
],
- 'message' => [
+ 'createFromType' => [
+ 'description' => 'The creation source type. Valid values:'."\n"
+ .'- ApiGatewayHttpToMCP: gateway-managed HTTP-to-MCP conversion.'."\n"
+ .'- ApiGatewayProxyMcpHosting: gateway-managed MCP direct proxy.'."\n"
+ .'- ApiGatewayAssembly: gateway MCP assembly.'."\n"
+ .'- NacosHttpToMCP: gateway-managed Nacos-synced HTTP-to-MCP conversion.'."\n"
+ .'- NacosMcpHosting: gateway-managed Nacos-synced MCP direct proxy.',
+ 'enumValueTitles' => ['ApiGatewayHttpToMCP' => 'gateway-managed HTTP-to-MCP conversion.', 'ApiGatewayMcpHosting' => 'gateway-managed MCP.', 'ApiGatewayProxyMcpHosting' => 'gateway-managed MCP direct proxy.', 'ApiGatewayAssembly' => 'gateway MCP assembly.', 'NacosHttpToMCP' => 'gateway-managed Nacos-synced HTTP-to-MCP conversion.', 'NacosMcpHosting' => 'gateway-managed Nacos-synced MCP direct proxy.'],
'type' => 'string',
+ 'required' => false,
+ 'example' => 'ApiGatewayMcpHosting',
+ 'title' => '',
],
- 'data' => [
+ 'grayMcpServerConfigs' => [
+ 'description' => 'The list of canary release MCP server route configurations.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'object',
+ 'type' => 'object',
+ 'properties' => [
+ 'routeId' => ['description' => 'The route ID.', 'type' => 'string', 'required' => false, 'example' => 'route-123', 'title' => ''],
+ 'match' => ['description' => 'The route match rule.', '$ref' => '#/components/schemas/HttpRouteMatch', 'required' => false, 'title' => '', 'example' => ''],
+ 'backendConfig' => [
+ 'description' => 'The backend configuration.',
+ 'type' => 'object',
+ 'properties' => [
+ 'scene' => ['description' => 'The backend scenario.', 'type' => 'string', 'required' => false, 'example' => 'SingleService', 'title' => ''],
+ 'services' => [
+ 'description' => 'The list of backend services.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'object',
+ 'type' => 'object',
+ 'properties' => [
+ 'protocol' => ['description' => 'The service protocol.', 'type' => 'string', 'required' => false, 'example' => 'HTTP', 'title' => ''],
+ 'port' => ['description' => 'The service port.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '8080', 'title' => ''],
+ 'weight' => ['description' => 'The weight.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100', 'title' => ''],
+ 'serviceId' => ['description' => 'The service ID.', 'type' => 'string', 'required' => false, 'example' => 'gray-svc-123', 'title' => ''],
+ 'version' => ['description' => 'The version number.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'mcpServerConfig' => [
+ 'description' => 'The HTTP-to-MCP configuration.',
'type' => 'object',
'properties' => [
- 'secretData' => [
- 'type' => 'string',
- ],
+ 'swaggerConfig' => ['description' => 'The Swagger document for HTTP-to-MCP conversion. The document must comply with the OpenAPI 3.0 specification.', 'type' => 'string', 'required' => false, 'example' => 'swagger-content', 'title' => ''],
+ 'mcpServerSpec' => ['description' => 'The MCP server configuration. This parameter is mutually exclusive with swaggerConfig.', 'type' => 'string', 'required' => false, 'example' => 'mcp-server-spec-yaml', 'title' => ''],
],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
+ 'required' => false,
+ 'example' => '{\'key\': \'value\'}',
+ 'title' => '',
],
],
+ [
+ 'name' => 'mcpServerId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'MCP Server ID', 'type' => 'string', 'required' => false, 'example' => 'mcp-adfefz24afg', 'title' => ''],
+ ],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '3ACFC7A7-45A9-58CF-B2D5-765B60254695'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ ],
+ 'example' => '',
+ ],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"479AE38F-A574-52F7-87EA-E91199999F9E\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"secretData\\": \\"apikey-xxxxxxxx\\"\\n }\\n}","type":"json"}]',
- 'title' => 'GetSecretValue',
- ],
- 'DeleteSecret' => [
- 'summary' => '删除密钥',
- 'path' => '/v1/secrets/{secretId}',
- 'methods' => [
- 'delete',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3ACFC7A7-45A9-58CF-B2D5-765B60254695\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ 'title' => 'Update an MCP server',
+ 'description' => 'Only sources of the **Container Service** type can update the Ingress listener configuration.',
+ 'changeSet' => [
+ ['createdAt' => '2026-01-22T15:19:56.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-12-05T07:15:33.000Z', 'description' => 'Request parameters changed'],
+ ['createdAt' => '2025-11-06T12:37:07.000Z', 'description' => 'Request parameters changed'],
],
- 'schemes' => [
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [],
],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateMcpServer',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'UpdatePluginAttachment' => [
+ 'summary' => 'Updates a plugin mount.',
+ 'path' => '/v1/plugin-attachments/{pluginAttachmentId}',
+ 'methods' => ['put'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '280148',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
+ 'abilityTreeCode' => '231611',
+ 'abilityTreeNodes' => ['FEATUREapigateway216K2A', 'FEATUREapigateway2AMEZG', 'FEATUREapigateway3F24ZP'],
],
'parameters' => [
[
- 'name' => 'secretId',
+ 'name' => 'pluginAttachmentId',
'in' => 'path',
+ 'schema' => ['description' => 'The plugin mount ID.', 'type' => 'string', 'required' => false, 'example' => 'pa-cri2uq5lhtgkq0ldllj0', 'title' => ''],
+ ],
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'type' => 'string',
+ 'description' => 'The request body.',
+ 'type' => 'object',
+ 'properties' => [
+ 'attachResourceIds' => [
+ 'description' => 'The list of mount point IDs.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The mount point ID.', 'type' => 'string', 'required' => false, 'example' => 'api-axvafaefafxx', 'title' => ''],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'pluginConfig' => ['description' => 'The Base64-encoded content of the original plugin configuration.', 'type' => 'string', 'required' => false, 'example' => 'cHJlcGVuZDoKLSByb2xlOiBzeXN0ZW0KICBjb250ZW50OiDor7fkvb/nlKjoi7Hor63lm57nrZTpl67popgKYXBwZW5kOgotIHJvbGU6IHVzZXIKICBjb250ZW50OiDmr4/mrKHlm57nrZTlrozpl67popjvvIzlsJ3or5Xov5vooYzlj43pl64K', 'title' => ''],
+ 'enable' => ['description' => 'Specifies whether to enable the plugin.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
+ ],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
+ 'title' => '',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request',
- 'type' => 'string',
- ],
- 'code' => [
- 'type' => 'string',
- ],
- 'message' => [
- 'type' => 'string',
- ],
+ 'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => 'F330090D-80F8-557B-8610-7EC7E386B4A4'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"DD4F1D33-7267-5596-8F5D-C593xxxxxxxx\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'DeleteSecret',
- ],
- 'ListSecretReferences' => [
- 'summary' => '查询密钥的引用详情',
- 'path' => '/v1/secrets/{secretId}/references',
- 'methods' => [
- 'get',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Update a plugin mount',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdatePluginAttachment'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdatePluginAttachment',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"F330090D-80F8-557B-8610-7EC7E386B4A4\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ ],
+ 'UpdatePolicy' => [
+ 'path' => '/v2/policies/{policyId}',
+ 'methods' => ['put'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'read',
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'list',
- 'riskType' => 'none',
+ 'operationType' => 'update',
+ 'riskType' => 'high',
'chargeType' => 'free',
- 'abilityTreeCode' => '280247',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
- 'tenantRelevance' => 'publicInformation',
+ 'abilityTreeCode' => '262552',
+ 'abilityTreeNodes' => ['FEATUREapigatewayOZOKBY'],
],
'parameters' => [
[
- 'name' => 'pageNumber',
- 'in' => 'query',
- 'schema' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
- ],
- [
- 'name' => 'pageSize',
- 'in' => 'query',
- 'schema' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- ],
+ 'name' => 'policyId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The policy ID.', 'type' => 'string', 'required' => true, 'example' => 'p-cq7l5s5bblhtgi6qas***', 'title' => ''],
],
[
- 'name' => 'secretId',
- 'in' => 'path',
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'type' => 'string',
+ 'description' => 'The request body parameters.',
+ 'type' => 'object',
+ 'properties' => [
+ 'description' => ['title' => '', 'description' => 'The description of the policy.', 'type' => 'string', 'required' => false, 'example' => '这是一条网关超时策略'],
+ 'config' => ['title' => '', 'description' => 'The policy configuration.', 'type' => 'string', 'required' => true, 'example' => '{"unitNum":1,"timeUnit":"s","enable":true}'],
+ 'name' => ['title' => '', 'description' => 'The Policy Name.', 'type' => 'string', 'required' => true, 'example' => 'celue-timeout-test'],
+ ],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
+ 'title' => '',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request',
- 'type' => 'string',
- ],
- 'code' => [
- 'type' => 'string',
- ],
- 'message' => [
- 'type' => 'string',
- ],
- 'data' => [
- 'type' => 'object',
- 'properties' => [
- 'totalSize' => [
- 'type' => 'integer',
- 'format' => 'int32',
- ],
- 'pageNumber' => [
- 'type' => 'integer',
- 'format' => 'int32',
- ],
- 'pageSize' => [
- 'type' => 'integer',
- 'format' => 'int32',
- ],
- 'items' => [
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'gatewayId' => [
- 'type' => 'string',
- ],
- 'resourceType' => [
- 'type' => 'string',
- ],
- 'mcpServerConfig' => [
- 'type' => 'object',
- 'properties' => [
- 'routeId' => [
- 'type' => 'string',
- ],
- 'name' => [
- 'type' => 'string',
- ],
- 'httpApiId' => [
- 'type' => 'string',
- ],
- ],
- ],
- 'consumerConfig' => [
- 'type' => 'object',
- 'properties' => [
- 'consumerId' => [
- 'type' => 'string',
- ],
- 'name' => [
- 'type' => 'string',
- ],
- ],
- ],
- 'PluginConfig' => [
- 'type' => 'object',
- 'properties' => [
- 'pluginId' => [
- 'type' => 'string',
- ],
- 'name' => [
- 'type' => 'string',
- ],
- 'pluginClassId' => [
- 'type' => 'string',
- ],
- ],
- ],
- 'ServiceConfig' => [
- 'type' => 'object',
- 'properties' => [
- 'serviceId' => [
- 'type' => 'string',
- ],
- 'name' => [
- 'type' => 'string',
- ],
- ],
- ],
- ],
- ],
- ],
- ],
- ],
+ 'requestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C67DED2B-F19B-5BEC-88C1-D6EB854C***', 'title' => ''],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'title' => 'Update a policy',
+ 'summary' => 'Updates a policy.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CE857A85-251D-5018-8103-A38957D71***\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"totalSize\\": 25,\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"items\\": [\\n {\\n \\"gatewayId\\": \\"gw-xxxx\\",\\n \\"resourceType\\": \\"Plugin\\",\\n \\"mcpServerConfig\\": {\\n \\"routeId\\": \\"hr-cv0i5oum1hkhxxxxxxxx\\",\\n \\"name\\": \\"mcp\\",\\n \\"httpApiId\\": \\"api-d2vv43em201hxxxxxxxx\\"\\n },\\n \\"consumerConfig\\": {\\n \\"consumerId\\": \\"cs-d0iltnem1hkhxxxxxxxx\\",\\n \\"name\\": \\"myconsumer\\"\\n },\\n \\"PluginConfig\\": {\\n \\"pluginId\\": \\"pl-d4ijk56m1hkhxxxxxxxx\\",\\n \\"name\\": \\"oauth\\",\\n \\"pluginClassId\\": \\"pls-xxxxxxxx\\"\\n },\\n \\"ServiceConfig\\": {\\n \\"serviceId\\": \\"svc-cvgbtcmm1hkmxxxxxxxx\\",\\n \\"name\\": \\"myService\\"\\n }\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'ListSecretReferences',
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'apig:UpdatePolicy',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"C67DED2B-F19B-5BEC-88C1-D6EB854C***\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
],
'UpdateSecret' => [
- 'summary' => '更新消费者',
+ 'summary' => 'Updates a key pair.',
'path' => '/v1/secrets/{secretId}',
- 'methods' => [
- 'put',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'methods' => ['put'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -25127,557 +18231,2791 @@
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '280143',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
+ 'abilityTreeNodes' => ['FEATUREapigatewayYJE9J7'],
],
'parameters' => [
[
'name' => 'secretId',
'in' => 'path',
- 'schema' => [
- 'type' => 'string',
- 'required' => false,
- ],
+ 'schema' => ['description' => 'The key pair ID.', 'type' => 'string', 'required' => false, 'example' => 'sec-d5e6shmm1hkoxxxxxxxx', 'title' => ''],
],
[
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
+ 'description' => 'The request body.',
'type' => 'object',
'properties' => [
- 'secretData' => [
- 'type' => 'string',
- 'required' => false,
- ],
+ 'secretData' => ['description' => 'The key pair value.', 'type' => 'string', 'required' => false, 'example' => 'apikey-xxxxxxxx', 'title' => ''],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
+ 'title' => '',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request',
- 'type' => 'string',
- ],
- 'code' => [
- 'type' => 'string',
- ],
- 'message' => [
- 'type' => 'string',
- ],
+ 'requestId' => ['title' => '', 'description' => 'ID of the request.', 'type' => 'string', 'example' => 'B01CABA5-9AA1-51A2-A5A7-8BD83BA062F7'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Update a key pair',
+ 'description' => 'Only sources of the **container service** type allow you to update the configuration for listening to Ingress.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"B01CABA5-9AA1-51A2-A5A7-8BD83BA062F7\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
- 'title' => 'UpdateSecret',
- ],
- 'GetSecret' => [
- 'summary' => '查询密钥',
- 'path' => '/v1/secrets/{secretId}',
- 'methods' => [
- 'get',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateSecret',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:secret/{#SecretId}'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'https',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"B01CABA5-9AA1-51A2-A5A7-8BD83BA062F7\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ 'gatewayOptions' => [
+ 'gatewayProtocols' => [],
],
+ ],
+ 'UpdateService' => [
+ 'summary' => 'Updates a service. You can update the health check configuration, DNS domain name, and address configuration of fixed addresses for the service.',
+ 'path' => '/v1/services/{serviceId}',
+ 'methods' => ['put'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '280144',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
+ 'abilityTreeCode' => '237752',
+ 'abilityTreeNodes' => ['FEATUREapigatewayNPQVBL'],
],
'parameters' => [
[
- 'name' => 'secretId',
+ 'name' => 'serviceId',
'in' => 'path',
- 'schema' => [
- 'type' => 'string',
- 'required' => false,
- ],
+ 'schema' => ['description' => 'The service ID.', 'type' => 'string', 'required' => false, 'example' => 'svc-cr6pk4tlhtgm58e***', 'title' => ''],
],
- ],
- 'responses' => [
- 200 => [
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
+ 'description' => 'The request body.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request',
- 'type' => 'string',
- ],
- 'code' => [
- 'type' => 'string',
- ],
- 'message' => [
- 'type' => 'string',
+ 'addresses' => [
+ 'description' => 'The list of domain names or fixed addresses.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The domain name or fixed address.', 'type' => 'string', 'required' => false, 'example' => '127.0.0.1:8080', 'title' => ''],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
- 'data' => [
+ 'healthCheckConfig' => [
+ 'description' => 'The health check configuration of the service.',
'type' => 'object',
'properties' => [
- 'secretId' => [
- 'type' => 'string',
- ],
- 'name' => [
- 'type' => 'string',
- ],
- 'secretSource' => [
- 'type' => 'string',
- ],
- 'kmsConfig' => [
- '$ref' => '#/components/schemas/KMSConfig',
- ],
- 'gatewayType' => [
+ 'enable' => ['description' => 'Specifies whether to enable health checks for the service.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
+ 'protocol' => [
+ 'description' => 'The protocol used for health checks.',
+ 'enumValueTitles' => ['TCP' => 'TCP', 'HTTP' => 'HTTP'],
'type' => 'string',
+ 'required' => false,
+ 'example' => 'HTTP',
+ 'title' => '',
],
- 'createTimestamp' => [
- 'type' => 'integer',
- 'format' => 'int64',
- ],
- 'updateTimestamp' => [
- 'type' => 'integer',
- 'format' => 'int64',
- ],
- 'status' => [
- 'type' => 'string',
+ 'timeout' => ['description' => 'The response timeout period for health checks. Unit: seconds.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''],
+ 'interval' => ['description' => 'The health check interval. Unit: seconds.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''],
+ 'healthyThreshold' => ['description' => 'The healthy threshold for health checks.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''],
+ 'unhealthyThreshold' => ['description' => 'The unhealthy threshold for health checks.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '22', 'title' => ''],
+ 'httpPath' => ['description' => 'The request path for health checks. This parameter is required when the protocol is HTTP.', 'type' => 'string', 'required' => false, 'example' => '/healthz', 'title' => ''],
+ 'httpHost' => ['description' => 'The domain name for health checks. This parameter is optional and can be configured when the protocol is HTTP.', 'type' => 'string', 'required' => false, 'example' => 'dev.itemcener.com', 'title' => ''],
+ 'expectedStatuses' => [
+ 'description' => 'The list of expected normal status codes returned by requests. This parameter is required when the protocol is HTTP.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The expected normal status code returned by a request.',
+ 'enumValueTitles' => [200 => 'http_2xx', 300 => 'http_3xx', 400 => 'http_4xx', 500 => 'http_5xx'],
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '200',
+ 'title' => '',
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
- 'referenceCount' => [
- 'type' => 'integer',
- 'format' => 'int32',
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'protocol' => ['description' => 'The protocol of the service.', 'type' => 'string', 'required' => false, 'example' => 'HTTP', 'title' => ''],
+ 'aiServiceConfig' => ['description' => 'The AI service configuration.', '$ref' => '#/components/schemas/AiServiceConfig', 'required' => false, 'title' => '', 'example' => ''],
+ 'agentServiceConfig' => ['description' => 'The agent service configuration.', '$ref' => '#/components/schemas/AgentServiceConfig', 'required' => false, 'title' => '', 'example' => ''],
+ 'modelProviderId' => ['description' => 'The model provider ID.', 'type' => 'string', 'required' => false, 'example' => 'mp-xxx****', 'title' => ''],
+ 'dnsServers' => [
+ 'description' => 'The DNS server addresses.',
+ 'type' => 'array',
+ 'items' => ['description' => 'The DNS server addresses.', 'type' => 'string', 'required' => false, 'example' => '1.1.1.1', 'title' => ''],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'ports' => [
+ 'description' => 'The port information.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The port information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => ['description' => 'The port name.', 'type' => 'string', 'required' => false, 'example' => 'catalog', 'title' => ''],
+ 'port' => ['description' => 'The port.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '80', 'title' => ''],
+ 'protocol' => ['description' => 'The protocol.', 'type' => 'string', 'required' => false, 'example' => 'TCP|UDP', 'title' => ''],
],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'healthyPanicThreshold' => ['description' => 'The health check threshold.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '80', 'title' => ''],
+ 'outlierDetectionConfig' => [
+ 'description' => 'The passive health check parameter settings.',
+ 'type' => 'object',
+ 'properties' => [
+ 'enable' => ['description' => 'enable', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''],
+ 'baseEjectionTime' => ['description' => 'The initial ejection duration. This is the initial isolation duration after a node is ejected (for example, 30 seconds). The isolation duration is calculated by using the formula: k × base_ejection_time (k starts at 1). Each ejection increases the isolation duration (k is incremented by 1). If consecutive checks are normal, the isolation duration is gradually reduced (k is decremented by 1).', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30', 'title' => ''],
+ 'failurePercentageThreshold' => ['description' => 'The failure percentage threshold. When the percentage of failed requests on a node reaches this threshold, the system triggers the ejection mechanism for the node.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '80', 'title' => ''],
+ 'failurePercentageMinimumHosts' => ['description' => 'The panic threshold.'."\n"
+ ."\n"
+ .'When the proportion of healthy nodes in the service is greater than the panic threshold, health checks function normally and requests are sent only to healthy nodes, not to ejected nodes. When the proportion of healthy nodes in the service is less than or equal to the panic threshold, health checks are effectively disabled and requests are sent to all nodes, including ejected nodes.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
+ 'interval' => ['description' => 'The detection interval.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30', 'title' => ''],
+ ],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'B725275B-50C6-5A49-A9FD-F0332FCB3351'],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ ],
+ 'example' => '',
+ ],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CE857A85-251D-5018-8103-A38957D71E20\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"secretId\\": \\"sec-d5e6shmm1hkoxxxxxxxx\\",\\n \\"name\\": \\"mysecret\\",\\n \\"secretSource\\": \\"KMS\\",\\n \\"kmsConfig\\": {\\n \\"kmsInstanceId\\": \\"\\",\\n \\"kmsKeyId\\": \\"\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"createTimestamp\\": 1719386834548,\\n \\"updateTimestamp\\": 1725868548440,\\n \\"status\\": \\"ENALBE\\",\\n \\"referenceCount\\": 1\\n }\\n}","type":"json"}]',
- 'title' => 'GetSecret',
- ],
- 'CreateSecret' => [
- 'summary' => '创建密钥',
- 'path' => '/v1/secrets',
- 'methods' => [
- 'post',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"B725275B-50C6-5A49-A9FD-F0332FCB3351\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ 'title' => 'Update a service',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateService'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateService',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Service', 'arn' => 'acs:apig:{#regionId}:{#accountId}:service/{#ServiceId}'],
+ ],
+ ],
+ ],
],
+ ],
+ 'UpdateServiceVersion' => [
+ 'summary' => 'Updates a service version.',
+ 'path' => '/v1/services/{serviceId}/versions/{name}',
+ 'methods' => ['put'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'readAndWrite',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
+ 'operationType' => 'update',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '279325',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
- 'tenantRelevance' => 'publicInformation',
+ 'abilityTreeCode' => '238219',
+ 'abilityTreeNodes' => ['FEATUREapigatewayNPQVBL'],
],
'parameters' => [
[
+ 'name' => 'serviceId',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The service ID.', 'type' => 'string', 'required' => true, 'example' => 'svc-xxx'],
+ ],
+ [
+ 'name' => 'name',
+ 'in' => 'path',
+ 'schema' => ['title' => '', 'description' => 'The version name.', 'type' => 'string', 'required' => true, 'example' => 'v1'],
+ ],
+ [
'name' => 'body',
'in' => 'body',
'style' => 'json',
'schema' => [
+ 'description' => 'The request body.',
'type' => 'object',
'properties' => [
- 'name' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'description' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'kmsConfig' => [
- 'required' => false,
- '$ref' => '#/components/schemas/KMSConfig',
- ],
- 'gatewayType' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'secretSource' => [
- 'type' => 'string',
- 'required' => false,
- ],
- 'secretData' => [
- 'type' => 'string',
- 'required' => false,
+ 'labels' => [
+ 'title' => '',
+ 'description' => 'The list of labels.',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '',
+ 'description' => 'The configuration of a single label.',
+ 'type' => 'object',
+ 'properties' => [
+ 'key' => ['title' => '', 'description' => 'The label key.', 'type' => 'string', 'required' => true, 'example' => 'topology.kubernetes.io/zone'],
+ 'value' => ['title' => '', 'description' => 'The label value.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-k'],
+ ],
+ 'required' => false,
+ 'example' => '',
+ ],
+ 'required' => true,
+ 'example' => '',
],
],
'required' => false,
+ 'title' => '',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
+ 'title' => '',
+ 'description' => 'The response.',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request',
- 'type' => 'string',
- ],
- 'code' => [
- 'type' => 'string',
- ],
- 'message' => [
- 'type' => 'string',
- ],
- 'data' => [
- 'type' => 'object',
- 'properties' => [
- 'secretId' => [
- 'type' => 'string',
- ],
- ],
- ],
+ 'requestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'A60EE5CA-1294-532A-9775-8D2FD1C6EFBF'],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
+ 'code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
],
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"CFF809D7-045D-502F-BF6C-947Exxxxxxxx\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"Failed to upload data. Please try again\\",\\n \\"data\\": {\\n \\"secretId\\": \\"sec-d5e6shmm1hkoxxxxxxxx\\"\\n }\\n}","type":"json"}]',
- 'title' => 'CreateSecret',
- ],
- 'ListSecrets' => [
- 'summary' => '查询密钥列表',
- 'path' => '/v1/secrets',
- 'methods' => [
- 'get',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"A60EE5CA-1294-532A-9775-8D2FD1C6EFBF\\",\\n \\"message\\": \\"success\\",\\n \\"code\\": \\"Ok\\"\\n}","type":"json"}]',
+ 'title' => 'Update a service version',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateServiceVersion'],
+ ],
],
- 'schemes' => [
- 'https',
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateServiceVersion',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Service', 'arn' => 'acs:apig:{#regionId}:{#accountId}:service/{#ServiceId}'],
+ ],
+ ],
+ ],
],
+ ],
+ 'UpgradeGateway' => [
+ 'path' => '/v1/gateways/{gatewayId}/upgrade',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'consumes' => [
- 'application/json',
- ],
- 'produces' => [
- 'application/json',
- ],
- 'operationType' => 'read',
+ 'consumes' => ['application/json'],
+ 'produces' => ['application/json'],
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'list',
+ 'operationType' => 'none',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '280145',
- 'abilityTreeNodes' => [
- 'FEATUREapigatewayYJE9J7',
- ],
- 'tenantRelevance' => 'publicInformation',
+ 'abilityTreeNodes' => ['FEATUREapigatewayUWNKMC'],
],
'parameters' => [
[
- 'name' => 'nameLike',
- 'in' => 'query',
- 'schema' => [
- 'type' => 'string',
- 'required' => false,
- 'description' => 'Secret name for fuzzy matching, supports filtering secrets by name',
- 'example' => 'test-secret',
- ],
- ],
- [
- 'name' => 'pageNumber',
- 'in' => 'query',
- 'schema' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'description' => 'Page number',
- 'example' => '1',
- ],
- ],
- [
- 'name' => 'pageSize',
- 'in' => 'query',
- 'schema' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'description' => 'Number of items per page',
- 'example' => '10',
- ],
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => ['description' => 'The gateway ID.', 'type' => 'string', 'required' => false, 'example' => 'gw-cq2avtllh****', 'title' => ''],
],
[
- 'name' => 'gatewayType',
+ 'name' => 'version',
'in' => 'query',
- 'schema' => [
- 'type' => 'string',
- 'required' => false,
- 'description' => 'Gateway type for filtering secrets of specific gateway type',
- 'example' => 'API',
- ],
+ 'schema' => ['description' => 'The gateway version.', 'type' => 'string', 'required' => false, 'example' => '2.0.2', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'requestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request',
- 'type' => 'string',
- 'example' => '2F270C0B-7D6A-5DA7-93E2-******',
- ],
- 'code' => [
- 'type' => 'string',
- 'description' => 'Code of the request',
- 'example' => '200',
- ],
- 'message' => [
- 'type' => 'string',
- 'description' => 'message',
- 'example' => 'success',
- ],
- 'data' => [
- 'type' => 'object',
- 'properties' => [
- 'totalSize' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'description' => 'Total number of records matching the query',
- 'example' => '104',
- ],
- 'pageNumber' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'description' => 'Page number',
- 'example' => '1',
- ],
- 'pageSize' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'description' => 'Number of items per page',
- 'example' => '10',
- ],
- 'items' => [
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'secretId' => [
- 'type' => 'string',
- 'description' => 'Source of the ID',
- 'example' => 'xxxxxx',
- ],
- 'name' => [
- 'type' => 'string',
- 'description' => 'Name of the secret',
- 'example' => 'test-secret',
- ],
- 'secretSource' => [
- 'type' => 'string',
- 'description' => 'Source of the secret',
- 'example' => 'KMS',
- ],
- 'createTimestamp' => [
- 'type' => 'integer',
- 'format' => 'int64',
- 'description' => 'Unix timestamp when the secret was created',
- 'example' => '1234567890',
- ],
- 'updateTimestamp' => [
- 'type' => 'integer',
- 'format' => 'int64',
- 'description' => 'Unix timestamp when the secret was last updated',
- 'example' => '1234567890',
- ],
- 'kmsConfig' => [
- '$ref' => '#/components/schemas/KMSConfig',
- 'description' => 'KMS configuration object',
- ],
- 'gatewayType' => [
- 'type' => 'string',
- 'description' => 'Gateway type associated with the secret',
- 'example' => 'API',
- ],
- 'status' => [
- 'type' => 'string',
- 'description' => 'Current status of the secret',
- 'example' => 'ENABLE',
- ],
- 'referenceCount' => [
- 'type' => 'integer',
- 'format' => 'int32',
- 'description' => 'Number of resources referencing this secret',
- 'example' => '5',
- ],
- ],
- 'description' => 'object',
- ],
- 'description' => 'Array of secret details',
- ],
- ],
- 'description' => 'Data',
- ],
+ 'requestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '043360DA-ED3B-5386-9B7A-D94DECF99A30', 'title' => ''],
+ 'code' => ['description' => 'The response status code.', 'type' => 'string', 'example' => 'Ok', 'title' => ''],
+ 'message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'success', 'title' => ''],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'Upgrade a gateway',
+ 'summary' => 'Upgrades the gateway version.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpgradeGateway'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpgradeGateway',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"3A3D1392-0F71-5A10-9AE8-89C434696966\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": {\\n \\"totalSize\\": 10,\\n \\"pageNumber\\": 1,\\n \\"pageSize\\": 10,\\n \\"items\\": [\\n {\\n \\"secretId\\": \\"sec-d5e6shmm1hkoxxxxxxxx\\",\\n \\"name\\": \\"my_secret\\",\\n \\"secretSource\\": \\"KMS\\",\\n \\"createTimestamp\\": 1725617840096,\\n \\"updateTimestamp\\": 1721116090326,\\n \\"kmsConfig\\": {\\n \\"kmsInstanceId\\": \\"\\",\\n \\"kmsKeyId\\": \\"\\"\\n },\\n \\"gatewayType\\": \\"API\\",\\n \\"status\\": \\"ENABLE\\",\\n \\"referenceCount\\": 3\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'ListSecrets',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"043360DA-ED3B-5386-9B7A-D94DECF99A30\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
],
],
'endpoints' => [
+ ['regionId' => 'ap-southeast-2', 'regionName' => 'Australia (Sydney) Closed', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'apig.ap-southeast-2.aliyuncs.com', 'endpoint' => 'apig.ap-southeast-2.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'ap-southeast-6', 'regionName' => 'Philippines (Manila)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'apig.ap-southeast-6.aliyuncs.com', 'endpoint' => 'apig.ap-southeast-6.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'ap-southeast-7', 'regionName' => 'Thailand (Bangkok)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'apig.ap-southeast-7.aliyuncs.com', 'endpoint' => 'apig.ap-southeast-7.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-guangzhou', 'regionName' => 'China (Guangzhou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'apig.cn-guangzhou.aliyuncs.com', 'endpoint' => 'apig.cn-guangzhou.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-heyuan', 'regionName' => 'China (Heyuan)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'apig.cn-heyuan.aliyuncs.com', 'endpoint' => 'apig.cn-heyuan.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-shenzhen', 'regionName' => 'China (Shenzhen)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'apig.cn-shenzhen.aliyuncs.com', 'endpoint' => 'apig.cn-shenzhen.aliyuncs.com', 'vpc' => 'apig-vpc.cn-shenzhen.aliyuncs.com'],
+ ['regionId' => 'cn-wulanchabu', 'regionName' => 'China (Ulanqab)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'apig.cn-wulanchabu.aliyuncs.com', 'endpoint' => 'apig.cn-wulanchabu.aliyuncs.com', 'vpc' => 'apig-vpc.cn-wulanchabu.aliyuncs.com'],
+ ['regionId' => 'cn-beijing', 'regionName' => 'China (Beijing)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'apig.cn-beijing.aliyuncs.com', 'endpoint' => 'apig.cn-beijing.aliyuncs.com', 'vpc' => 'apig-vpc.cn-beijing.aliyuncs.com'],
+ ['regionId' => 'ap-northeast-2', 'regionName' => 'South Korea (Seoul)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'apig.ap-northeast-2.aliyuncs.com', 'endpoint' => 'apig.ap-northeast-2.aliyuncs.com', 'vpc' => 'apig-vpc.ap-northeast-2.aliyuncs.com'],
+ ['regionId' => 'ap-northeast-1', 'regionName' => 'Japan (Tokyo)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'apig.ap-northeast-1.aliyuncs.com', 'endpoint' => 'apig.ap-northeast-1.aliyuncs.com', 'vpc' => 'apig-vpc.ap-northeast-1.aliyuncs.com'],
+ ['regionId' => 'cn-chengdu', 'regionName' => 'China (Chengdu)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'apig.cn-chengdu.aliyuncs.com', 'endpoint' => 'apig.cn-chengdu.aliyuncs.com', 'vpc' => 'apig-vpc.cn-chengdu.aliyuncs.com'],
+ ['regionId' => 'cn-qingdao', 'regionName' => 'China (Qingdao)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'apig.cn-qingdao.aliyuncs.com', 'endpoint' => 'apig.cn-qingdao.aliyuncs.com', 'vpc' => 'apig-vpc.cn-qingdao.aliyuncs.com'],
+ ['regionId' => 'cn-shanghai', 'regionName' => 'China (Shanghai)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'apig.cn-shanghai.aliyuncs.com', 'endpoint' => 'apig.cn-shanghai.aliyuncs.com', 'vpc' => 'apig-vpc.cn-shanghai.aliyuncs.com'],
+ ['regionId' => 'cn-hongkong', 'regionName' => 'China (Hong Kong)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'apig.cn-hongkong.aliyuncs.com', 'endpoint' => 'apig.cn-hongkong.aliyuncs.com', 'vpc' => 'apig-vpc.cn-hongkong.aliyuncs.com'],
+ ['regionId' => 'ap-southeast-1', 'regionName' => 'Singapore', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'apig.ap-southeast-1.aliyuncs.com', 'endpoint' => 'apig.ap-southeast-1.aliyuncs.com', 'vpc' => 'apig-vpc.ap-southeast-1.aliyuncs.com'],
+ ['regionId' => 'ap-southeast-3', 'regionName' => 'Malaysia (Kuala Lumpur)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'apig.ap-southeast-3.aliyuncs.com', 'endpoint' => 'apig.ap-southeast-3.aliyuncs.com', 'vpc' => 'apig-vpc.ap-southeast-3.aliyuncs.com'],
+ ['regionId' => 'ap-southeast-5', 'regionName' => 'Indonesia (Jakarta)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'apig.ap-southeast-5.aliyuncs.com', 'endpoint' => 'apig.ap-southeast-5.aliyuncs.com', 'vpc' => 'apig-vpc.ap-southeast-5.aliyuncs.com'],
+ ['regionId' => 'cn-zhangjiakou', 'regionName' => 'China (Zhangjiakou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'apig.cn-zhangjiakou.aliyuncs.com', 'endpoint' => 'apig.cn-zhangjiakou.aliyuncs.com', 'vpc' => 'apig-vpc.cn-zhangjiakou.aliyuncs.com'],
+ ['regionId' => 'cn-hangzhou', 'regionName' => 'China (Hangzhou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'apig.cn-hangzhou.aliyuncs.com', 'endpoint' => 'apig.cn-hangzhou.aliyuncs.com', 'vpc' => 'apig-vpc.cn-hangzhou.aliyuncs.com'],
+ ['regionId' => 'us-west-1', 'regionName' => 'US (Silicon Valley)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'apig.us-west-1.aliyuncs.com', 'endpoint' => 'apig.us-west-1.aliyuncs.com', 'vpc' => 'apig-vpc.us-west-1.aliyuncs.com'],
+ ['regionId' => 'us-east-1', 'regionName' => 'US (Virginia)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'apig.us-east-1.aliyuncs.com', 'endpoint' => 'apig.us-east-1.aliyuncs.com', 'vpc' => 'apig-vpc.us-east-1.aliyuncs.com'],
+ ['regionId' => 'eu-central-1', 'regionName' => 'Germany (Frankfurt)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'apig.eu-central-1.aliyuncs.com', 'endpoint' => 'apig.eu-central-1.aliyuncs.com', 'vpc' => 'apig-vpc.eu-central-1.aliyuncs.com'],
+ ['regionId' => 'eu-west-1', 'regionName' => 'UK (London)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'apig.eu-west-1.aliyuncs.com', 'endpoint' => 'apig.eu-west-1.aliyuncs.com', 'vpc' => 'apig-vpc.eu-west-1.aliyuncs.com'],
+ ['regionId' => 'me-east-1', 'regionName' => 'UAE (Dubai)', 'areaId' => 'middleEast', 'areaName' => 'Middle East', 'public' => 'apig.me-east-1.aliyuncs.com', 'endpoint' => 'apig.me-east-1.aliyuncs.com', 'vpc' => 'apig-vpc.me-east-1.aliyuncs.com'],
+ ['regionId' => 'me-central-1', 'regionName' => 'Saudi Arabia (Riyadh)', 'areaId' => 'middleEast', 'areaName' => 'Middle East', 'public' => 'apig.me-central-1.aliyuncs.com', 'endpoint' => 'apig.me-central-1.aliyuncs.com', 'vpc' => ''],
+ ],
+ 'errorCodes' => [
+ ['code' => 'APIG.ErrorCode.Forbidden', 'message' => 'Not allowed to perform the operation.', 'http_code' => 403, 'description' => 'Operation forbidden, no operation permission.'],
+ ['code' => 'APIG.ErrorCode.InternalError', 'message' => 'Internal error.', 'http_code' => 500, 'description' => 'System internal error'],
+ ['code' => 'Conflict.ApiDebugProtocolMismatch', 'message' => 'Domain %s protocol mismatch, got: %s, want: %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.ApiNameDuplicated', 'message' => 'API name %s duplicated.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.ApiOperationQuotaExceed', 'message' => 'The number of operations per api cannot exceed %s. Current: %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.ApiPublishDuplicatedPathFound', 'message' => 'Duplicated path found, key: %s, apiId: %s ,operationId: %s, environmentId: %s, conflict domains: %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.ApiPublished', 'message' => 'API %s is published in %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.ApiPublishServiceTypeNotSupported', 'message' => 'Service type %s is not supported.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.ApiVersionDuplicated', 'message' => 'API version %s duplicated.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.ApiVersionMustEnabled', 'message' => 'API has more than one version, can not disable version.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.AppClusterIsAlreadyInChanging', 'message' => 'App cluster is already in changing. Retry after some minutes.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.ConsumerAuthorizationForbidden', 'message' => 'Consumer has authorized to resource %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.DebugRequestFailed', 'message' => 'Create debug request for %s failed, please check httpApi / gatewayRoute / ingressRoute settings.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.DeleteHttpApiForbidden', 'message' => 'The current API %s has already deployments of routes and cannot be deleted.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.DeleteRouteForbidden', 'message' => 'The route %s cannot be deleted when its status is %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.DeployRouteForbidden', 'message' => 'The route %s cannot be deployed when its status is %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.DomainCannotDelete', 'message' => 'Domain %s has online api or route, can not delete.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.DomainExisted', 'message' => 'Domain %s is existed.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.DomainQuotaPerGatewayExceed', 'message' => 'The number of bound domain per gateway cannot exceed %s. Current: %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.EnvironmentCannotDelete', 'message' => 'Environment %s has online api, can not delete.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.EnvironmentExisted', 'message' => 'Environment %s is existed.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.EnvironmentGatewayNotReady', 'message' => 'The gateway %s in the environment %s is not ready, please wait for the gateway to be ready before proceeding.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.EnvironmentPublishing', 'message' => 'Environment %s is publishing, please retry later.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.Fc2NotSupported', 'message' => 'The FC integration solution has been upgraded. Please re-create the FC service before publishing the API/route.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.GatewayEnvironmentLimitExceeded', 'message' => 'The number of environment per gateway cannot exceed %s, current: %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.GatewayIsDeleted', 'message' => 'The gateway %s is deleted.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.GatewayNotSupportedWAF', 'message' => 'The gateway %s does not support enabling WAF protection. Please upgrade to a version of the gateway that supports it.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.GatewayStatusInvalidForbidden', 'message' => 'The operation is not allowed in the current gateway status. Wait until the gateway is in the running state and try again.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.GatewayStatusNotExpected', 'message' => 'The status of the gateway %s is not the expected status %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.HttpApiTypeNotSupportedForRoute', 'message' => 'Only APIs of type Http, HttpIngress, and Websocket support route.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.HttpIngressApiExistedWhenDeleteSource', 'message' => 'The service source is used by http ingress api, please delete the corresponding HTTP Ingress API before removing the service source. The associated HTTP Ingress API ID is %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.K8sServiceSourceExisted', 'message' => 'The k8s service source of %s is existed.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.K8sServiceSourceLimitExceeded', 'message' => 'The number of k8s service source per gateway cannot exceed %s. Current: %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.OnlineOperationQuotaPerGatewayExceed', 'message' => 'The number of online operation per gateway cannot exceed %s. Current: %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.OperationNameDuplicated', 'message' => 'Operation name %s duplicated.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.OperationQuotaExceed', 'message' => 'The number of operations per region cannot exceed %s. Current: %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.OssRequestError', 'message' => 'Failed to access OSS, please check the parameter configuration or your account RAM permissions.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.PluginClassNotReady', 'message' => 'Plugin class %s is not ready.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.PluginCountExceed', 'message' => 'Plugin count exceed %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.PluginHasAttachedRule', 'message' => 'Plugin %s is using. Please check api/operation/route/domain/gateway whether config enabled plugin rule, stop these plugin rules and retry.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.PluginInstalled', 'message' => 'Plugin class %s installed, you must uninstall first.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.PluginInstallGatewayNotReady', 'message' => 'Gateway %s is not ready.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.PluginNameExisted', 'message' => 'Plugin name %s existed.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.PluginOtherVersionInstalled', 'message' => 'Plugin class %s version %s installed, you must uninstall old version first.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.PluginPublishSameVersion', 'message' => 'Plugin %s version %s has been published.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.PluginPublishVersionOnlyIncrement', 'message' => 'Plugin %s version %s must be larger than history version.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.PluginWasmFileIllegal', 'message' => 'Plugin wasm file %s illegal.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.PolicyAttachExceedLimit', 'message' => 'Resource can not attach 2 same class policy.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.PolicyExisted', 'message' => 'Policy %s is existed.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.RouteBackServiceProtocolNotSupported', 'message' => 'The route currently does not support the service protocol %s.', 'http_code' => 409, 'description' => 'Route temporarily does not support service protocol% s'],
+ ['code' => 'Conflict.RouteNameDuplicated', 'message' => 'Route name %s is duplicated.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.RouteQuotaPerGatewayExceed', 'message' => 'The number of route per gateway cannot exceed %s. Current: %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.SdkGenerating', 'message' => 'SDK is generating, please retry later.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.SecurityGroupRulesLimitExceeded', 'message' => 'The security group rule ports count cannot be greater than 5.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.ServiceExisted', 'message' => 'the service %s is existed.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.ServiceIsReferencedWhenDelete', 'message' => 'There are other resources referencing this service. Please unbind it before deleting the service. The associated resources are %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.ServiceQuotaPerGatewayExceed', 'message' => 'The number of service per gateway cannot exceed %s. Current: %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.ServicesExistedWhenDeleteSource', 'message' => 'The service source is used by services %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.ServiceSourceUpdateIsDisabled', 'message' => 'The service source is allowed to update when it\'s type must be K8S.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.ServiceUpdateIsDisabled', 'message' => 'The service is allowed to update when it\'s source type must be DNS or VIP.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.ServiceVersionExisted', 'message' => 'Service version %s already exists, please change the service version name.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.SourceExistedWhenCreateIngressApi', 'message' => 'The service source %s is already being used by another HTTP Ingress API. Please use a different service source to create the HTTP Ingress API.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.UndeployRouteForbidden', 'message' => 'Route %s cannot be updeployed when its status is %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.UpdateRouteEnvironmentForbidden', 'message' => 'The route %s cannot be allowed to change the environment when its status is %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.UpdateRouteForbidden', 'message' => 'The route %s cannot be updated when its status is %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'Conflict.WafAttachConditionNotMatch', 'message' => 'WAF should be enabled on gateway instance first.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'InvalidParameter.ConsumerAkLengthExceed', 'message' => 'Consumer AK length can not exceed %s. Current %s.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'InvalidParameter.ConsumerApiKeyLengthExceed', 'message' => 'Consumer ApiKey length can not exceed %s. Current %s.', 'http_code' => 400, 'description' => 'Consumer ApiKey length exceeded, limit% s, current% s.'],
+ ['code' => 'InvalidParameter.ConsumerNameExceedLimit', 'message' => 'Consumer name length can not exceed 64 characters, now %s.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'InvalidParameter.ConsumerNameStartOrEndFormatIllegal', 'message' => 'consumer name must start and end with an alphanumeric character, now %s.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'InvalidParameter.ConsumerSkLengthExceed', 'message' => 'Consumer SK length can not exceed %s. Current %s.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'InvalidParameter.DomainNameExceedLimit', 'message' => 'Domain name length can not exceed 128 characters, now %s.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'InvalidParameter.EnvironmentAliasLengthExceedUpLimit', 'message' => 'Environment alias can not exceed than 50 characters, now %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'InvalidParameter.EnvironmentAliasStartOrEndFormatIllegal', 'message' => 'Environment alias must start with an alphanumeric or Chinese character, now %s.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'InvalidParameter.EnvironmentFormatIllegal', 'message' => 'Environment name can only contain alphanumeric characters, dashes, dots, now %s.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'InvalidParameter.EnvironmentNameStartOrEndFormatIllegal', 'message' => 'Environment name must start and end with an alphanumeric character, now %s.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'InvalidParameter.FailToBindBody', 'message' => 'Fail to bind body.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'InvalidParameter.HttpApiTypeNotSupported', 'message' => 'The HTTP API type %s is not supported.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'InvalidParameter.HttpTriggerRequired', 'message' => 'Function %s version %s doesn\'t have a http trigger.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'InvalidParameter.InvalidGatewaySpecification', 'message' => 'The specification for upgrading or downgrading is invalid. Please make a different selection.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'InvalidParameter.IsEmpty', 'message' => 'Required parameter should not be empty.', 'http_code' => 400, 'description' => 'Required parameter is empty'],
+ ['code' => 'InvalidParameter.OasSpecParseFailed', 'message' => 'OpenAPI Schema parse failed, due to %s.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'InvalidParameter.PluginNameExist', 'message' => 'The plugin name already exists.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'InvalidParameter.PolicyNotSupportedType', 'message' => 'Not supported global policy type %s.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'InvalidParameter.RouteConfigHostnamesIsEmpty', 'message' => 'The parameter is not valid, the domain list cannot be empty.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'InvalidParameter.SwaggerSpecParseFailed', 'message' => 'Swagger definition parse failed, due to %s.', 'http_code' => 400, 'description' => ''],
+ ['code' => 'InvalidParameter.WithDetail', 'message' => 'Invalid parameter value.', 'http_code' => 400, 'description' => 'Invalid request parameter'],
+ ['code' => 'NotFound.CsClusterNotFound', 'message' => 'CS cluster %s is not found.', 'http_code' => 404, 'description' => ''],
+ ['code' => 'NotFound.EnvironmentNotFound', 'message' => 'Environment %s is not found.', 'http_code' => 404, 'description' => ''],
+ ['code' => 'NotFound.GatewayNotFound', 'message' => 'Gateway %s is not found.', 'http_code' => 404, 'description' => ''],
+ ['code' => 'NotFound.GatewayVersionNotConfig', 'message' => 'The gateway version is not configured.', 'http_code' => 404, 'description' => ''],
+ ['code' => 'NotFound.SAEK8SServiceNotFound', 'message' => 'The SAE K8S service %s in the namespace %s is not found.', 'http_code' => 404, 'description' => ''],
+ ['code' => 'NotFound.ServiceNotFound', 'message' => 'The service %s is not found.', 'http_code' => 404, 'description' => ''],
+ ['code' => 'NotFound.ServiceSourceNotFound', 'message' => 'The service source %s is not found.', 'http_code' => 404, 'description' => ''],
+ ['code' => 'NotFound.ServiceVersionNotFound', 'message' => 'Service version %s not found, please confirm that the service version name is correct.', 'http_code' => 404, 'description' => ''],
+ ],
+ 'changeSet' => [
[
- 'regionId' => 'cn-qingdao',
- 'endpoint' => 'apig.cn-qingdao.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateDomain'],
+ ['description' => 'Response parameters changed', 'api' => 'GetDomain'],
+ ['description' => 'Response parameters changed', 'api' => 'GetSource'],
+ ['description' => 'Request parameters changed', 'api' => 'ListDomains'],
+ ],
+ 'createdAt' => '2026-06-17T12:21:00.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-beijing',
- 'endpoint' => 'apig.cn-beijing.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Response parameters changed', 'api' => 'DescribeRegions'],
+ ],
+ 'createdAt' => '2026-06-15T11:25:57.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-zhangjiakou',
- 'endpoint' => 'apig.cn-zhangjiakou.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'ImportHttpApi'],
+ ],
+ 'createdAt' => '2026-06-12T06:34:03.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-wulanchabu',
- 'endpoint' => 'apig.cn-wulanchabu.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Response parameters changed', 'api' => 'GetMcpServer'],
+ ],
+ 'createdAt' => '2026-06-05T07:27:11.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-hangzhou',
- 'endpoint' => 'apig.cn-hangzhou.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'ListHttpApiRoutes'],
+ ],
+ 'createdAt' => '2026-05-14T01:54:54.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-shanghai',
- 'endpoint' => 'apig.cn-shanghai.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Response parameters changed', 'api' => 'DeployHttpApi'],
+ ],
+ 'createdAt' => '2026-04-21T08:48:07.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-shenzhen',
- 'endpoint' => 'apig.cn-shenzhen.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'UpdateHttpApiRoute'],
+ ],
+ 'createdAt' => '2026-04-08T11:26:30.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-heyuan',
- 'endpoint' => 'apig.cn-heyuan.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'ExportHttpApi'],
+ ],
+ 'createdAt' => '2026-04-02T09:33:41.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-guangzhou',
- 'endpoint' => 'apig.cn-guangzhou.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Response parameters changed', 'api' => 'ImportHttpApi'],
+ ],
+ 'createdAt' => '2026-03-25T04:56:38.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-chengdu',
- 'endpoint' => 'apig.cn-chengdu.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateHttpApi'],
+ ],
+ 'createdAt' => '2026-02-12T06:44:00.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'cn-hongkong',
- 'endpoint' => 'apig.cn-hongkong.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateHttpApi'],
+ ],
+ 'createdAt' => '2026-02-11T08:31:03.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'ap-northeast-1',
- 'endpoint' => 'apig.ap-northeast-1.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'DeployHttpApi'],
+ ],
+ 'createdAt' => '2026-02-09T13:46:32.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'ap-northeast-2',
- 'endpoint' => 'apig.ap-northeast-2.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateService'],
+ ],
+ 'createdAt' => '2026-01-30T08:26:16.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'ap-southeast-1',
- 'endpoint' => 'apig.ap-southeast-1.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateHttpApiRoute'],
+ ],
+ 'createdAt' => '2026-01-30T06:04:27.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'ap-southeast-2',
- 'endpoint' => 'apig.ap-southeast-2.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Response parameters changed', 'api' => 'GetConsumer'],
+ ],
+ 'createdAt' => '2026-01-23T09:12:56.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'ap-southeast-3',
- 'endpoint' => 'apig.ap-southeast-3.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateMcpServer'],
+ ['description' => 'Request parameters changed', 'api' => 'UpdateMcpServer'],
+ ],
+ 'createdAt' => '2026-01-22T15:20:19.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'ap-southeast-5',
- 'endpoint' => 'apig.ap-southeast-5.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'UpdateHttpApiRoute'],
+ ],
+ 'createdAt' => '2026-01-12T10:56:39.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateService'],
+ ],
+ 'createdAt' => '2025-12-25T08:40:25.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'GetResourceOverview'],
+ ],
+ 'createdAt' => '2025-12-18T12:16:14.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'ap-southeast-6',
- 'endpoint' => 'apig.ap-southeast-6.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateMcpServer'],
+ ['description' => 'Response parameters changed', 'api' => 'GetMcpServer'],
+ ['description' => 'Request parameters changed', 'api' => 'UpdateMcpServer'],
+ ],
+ 'createdAt' => '2025-12-05T07:15:57.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'us-east-1',
- 'endpoint' => 'apig.us-east-1.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Response parameters changed', 'api' => 'ListGateways'],
+ ],
+ 'createdAt' => '2025-11-25T11:29:13.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'us-west-1',
- 'endpoint' => 'apig.us-west-1.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateMcpServer'],
+ ['description' => 'Request parameters changed', 'api' => 'UpdateMcpServer'],
+ ],
+ 'createdAt' => '2025-11-06T12:37:29.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'eu-west-1',
- 'endpoint' => 'apig.eu-west-1.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Response parameters changed', 'api' => 'GetGateway'],
+ ['description' => 'Response parameters changed', 'api' => 'ListMcpServers'],
+ ],
+ 'createdAt' => '2025-10-29T07:32:11.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'eu-central-1',
- 'endpoint' => 'apig.eu-central-1.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'ImportHttpApi'],
+ ],
+ 'createdAt' => '2025-08-13T01:57:00.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'me-east-1',
- 'endpoint' => 'apig.me-east-1.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'ImportHttpApi'],
+ ],
+ 'createdAt' => '2025-08-12T05:56:59.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'ap-southeast-7',
- 'endpoint' => 'apig.ap-southeast-7.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'ListPolicyClasses'],
+ ],
+ 'createdAt' => '2025-07-25T02:07:58.000Z',
+ 'description' => '',
],
[
- 'regionId' => 'me-central-1',
- 'endpoint' => 'apig.me-central-1.aliyuncs.com',
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateConsumerAuthorizationRules'],
+ ['description' => 'Request parameters changed', 'api' => 'CreateHttpApiRoute'],
+ ['description' => 'Request parameters changed', 'api' => 'GetDashboard'],
+ ['description' => 'Request parameters changed', 'api' => 'QueryConsumerAuthorizationRules'],
+ ['description' => 'Request parameters changed', 'api' => 'UpdateHttpApiRoute'],
+ ],
+ 'createdAt' => '2025-07-24T12:32:36.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Response parameters changed', 'api' => 'GetGateway'],
+ ],
+ 'createdAt' => '2025-07-18T06:03:36.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateHttpApi'],
+ ['description' => 'Request parameters changed', 'api' => 'UpdateHttpApi'],
+ ],
+ 'createdAt' => '2025-07-17T13:24:14.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Response parameters changed', 'api' => 'ListZones'],
+ ],
+ 'createdAt' => '2025-07-03T11:00:54.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateHttpApi'],
+ ['description' => 'Request parameters changed', 'api' => 'CreatePolicyAttachment'],
+ ['description' => 'Request parameters changed', 'api' => 'CreateService'],
+ ['description' => 'Request parameters changed', 'api' => 'UpdateHttpApi'],
+ ],
+ 'createdAt' => '2025-06-26T12:06:13.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Response parameters changed', 'api' => 'GetGateway'],
+ ],
+ 'createdAt' => '2025-06-11T08:30:01.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'ListPlugins'],
+ ],
+ 'createdAt' => '2025-06-03T12:43:45.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateHttpApiRoute'],
+ ],
+ 'createdAt' => '2025-05-29T15:51:37.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'UpdateHttpApi'],
+ ],
+ 'createdAt' => '2025-05-21T13:14:20.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Response parameters changed', 'api' => 'ListGateways'],
+ ],
+ 'createdAt' => '2025-04-25T08:45:08.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateDomain'],
+ ['description' => 'Request parameters changed', 'api' => 'CreateHttpApi'],
+ ['description' => 'Request parameters changed', 'api' => 'GetResourceOverview'],
+ ['description' => 'Request parameters changed', 'api' => 'ImportHttpApi'],
+ ['description' => 'Request parameters changed', 'api' => 'ListDomains'],
+ ['description' => 'Request parameters changed', 'api' => 'ListEnvironments'],
+ ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'ListGateways'],
+ ['description' => 'Request parameters changed', 'api' => 'ListHttpApis'],
+ ],
+ 'createdAt' => '2025-04-24T16:41:58.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'ListServices'],
+ ],
+ 'createdAt' => '2025-04-14T12:43:49.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'GetDashboard'],
+ ['description' => 'Request parameters changed', 'api' => 'ListHttpApis'],
+ ],
+ 'createdAt' => '2025-03-31T08:14:37.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateDomain'],
+ ['description' => 'Request parameters changed', 'api' => 'CreateService'],
+ ['description' => 'Response parameters changed', 'api' => 'GetDomain'],
+ ['description' => 'Request parameters changed', 'api' => 'UpdateDomain'],
+ ],
+ 'createdAt' => '2025-02-27T07:55:07.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Response parameters changed', 'api' => 'ListGateways'],
+ ],
+ 'createdAt' => '2025-01-22T13:47:02.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Response parameters changed', 'api' => 'GetDomain'],
+ ],
+ 'createdAt' => '2025-01-13T02:40:49.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateHttpApi'],
+ ['description' => 'Request parameters changed', 'api' => 'UpdateHttpApi'],
+ ],
+ 'createdAt' => '2025-01-02T05:55:09.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'UpdateDomain'],
+ ],
+ 'createdAt' => '2024-12-30T02:37:14.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'ListHttpApis'],
+ ],
+ 'createdAt' => '2024-12-26T11:51:39.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'GetDashboard'],
+ ],
+ 'createdAt' => '2024-12-24T03:18:22.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'ListGateways'],
+ ],
+ 'createdAt' => '2024-12-03T13:33:16.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'ListHttpApiOperations'],
+ ['description' => 'Request parameters changed', 'api' => 'ListHttpApis'],
+ ],
+ 'createdAt' => '2024-11-28T12:57:05.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateDomain'],
+ ['description' => 'Response parameters changed', 'api' => 'GetDomain'],
+ ['description' => 'Request parameters changed', 'api' => 'UpdateDomain'],
+ ],
+ 'createdAt' => '2024-11-28T10:53:27.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Response parameters changed', 'api' => 'GetGateway'],
+ ],
+ 'createdAt' => '2024-11-21T02:42:23.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateDomain'],
+ ['description' => 'Request parameters changed', 'api' => 'CreateEnvironment'],
+ ['description' => 'Response parameters changed', 'api' => 'GetDomain'],
+ ['description' => 'Response parameters changed', 'api' => 'GetEnvironment'],
+ ['description' => 'Request parameters changed', 'api' => 'ListDomains'],
+ ['description' => 'Request parameters changed', 'api' => 'ListEnvironments'],
+ ],
+ 'createdAt' => '2024-11-20T09:31:40.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Response parameters changed', 'api' => 'GetGateway'],
+ ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'ListGateways'],
+ ],
+ 'createdAt' => '2024-11-20T08:54:24.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateHttpApi'],
+ ['description' => 'Request parameters changed', 'api' => 'ListHttpApis'],
+ ],
+ 'createdAt' => '2024-11-20T04:02:41.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'ListHttpApis'],
+ ],
+ 'createdAt' => '2024-11-18T13:36:21.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateHttpApi'],
+ ['description' => 'Request parameters changed', 'api' => 'UpdateHttpApi'],
+ ],
+ 'createdAt' => '2024-11-18T08:56:15.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'GetDomain'],
+ ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'GetEnvironment'],
+ ],
+ 'createdAt' => '2024-11-01T11:55:22.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'ListHttpApiOperations'],
+ ['description' => 'Request parameters changed', 'api' => 'ListHttpApis'],
+ ],
+ 'createdAt' => '2024-10-24T05:48:45.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateDomain'],
+ ],
+ 'createdAt' => '2024-09-23T07:51:52.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'ListHttpApis'],
+ ],
+ 'createdAt' => '2024-09-11T08:21:31.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'ListHttpApis'],
+ ],
+ 'createdAt' => '2024-09-06T08:03:25.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateHttpApi'],
+ ['description' => 'Request parameters changed', 'api' => 'GetEnvironment'],
+ ['description' => 'Request parameters changed', 'api' => 'UpdateHttpApi'],
+ ],
+ 'createdAt' => '2024-09-06T06:03:16.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Response parameters changed', 'api' => 'UpdateDomain'],
+ ],
+ 'createdAt' => '2024-09-03T07:57:28.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Response parameters changed', 'api' => 'ListGateways'],
+ ],
+ 'createdAt' => '2024-08-06T03:34:13.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'ListHttpApiOperations'],
+ ['description' => 'Request parameters changed', 'api' => 'ListHttpApis'],
+ ],
+ 'createdAt' => '2024-08-05T11:40:01.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'ListDomains'],
+ ],
+ 'createdAt' => '2024-07-29T12:43:21.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'ListHttpApis'],
+ ],
+ 'createdAt' => '2024-07-26T14:59:06.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateServiceSource'],
+ ],
+ 'createdAt' => '2024-07-25T08:24:31.000Z',
+ 'description' => '',
+ ],
+ [
+ 'apis' => [
+ ['description' => 'Request parameters changed', 'api' => 'CreateDomain'],
+ ],
+ 'createdAt' => '2024-07-25T08:17:46.000Z',
+ 'description' => '',
+ ],
+ ],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '-1', 'countWindow' => 1, 'regionId' => '*'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeletePluginAttachment'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetEnvironment'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpgradeGateway'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHttpApiOperation'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListPolicyClasses'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateEnvironment'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateServiceVersion'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteHttpApiOperation'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetResourceOverview'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetConsumerAuthorizationRule'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHttpApiRoute'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateGatewayName'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListZones'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListDomains'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateHttpApi'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListSslCerts'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListServices'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteServiceVersion'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'RestartGateway'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateServiceVersion'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateHttpApiRoute'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListPlugins'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UndeployHttpApi'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteGatewaySecurityGroupRule'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListGatewayFeatures'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateService'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteEnvironment'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateService'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreatePluginAttachment'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ExportHttpApi'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeployHttpApi'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateAndAttachPolicy'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetDashboard'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetTraceConfig'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHttpApiRoutes'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListEnvironments'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateSource'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateGateway'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteHttpApiRoute'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'AddGatewaySecurityGroupRule'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateHttpApi'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateHttpApiOperation'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateDomain'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteHttpApi'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ImportHttpApi'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateEnvironment'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteGateway'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateGatewayFeature'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateConsumer'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListPluginAttachments'],
+ ['threshold' => '60', 'countWindow' => 3000, 'regionId' => '*', 'api' => 'GetPluginAttachment'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'InstallPlugin'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UninstallPlugin'],
+ ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdatePluginAttachment'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetDomain'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetSource'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateHttpApiOperation'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHttpApis'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteDomain'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetHttpApi'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateDomain'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetGateway'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ChangeResourceGroup'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateHttpApiRoute'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetService'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListHttpApiOperations'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetPolicy'],
+ ['threshold' => '60', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListGateways'],
+ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteSource'],
+ ],
+ ],
+ 'ram' => [
+ 'productCode' => 'APIG',
+ 'productName' => 'API Gateway',
+ 'ramCodes' => ['apig'],
+ 'ramLevel' => 'RESOURCE',
+ 'ramConditions' => [
+ [
+ 'name' => 'apig:GatewayId',
+ 'schema' => ['type' => 'Array<undefined>', 'description' => 'Gateway Id'],
+ ],
+ [
+ 'name' => 'apig:NetworkType',
+ 'schema' => ['type' => 'Array<undefined>', 'description' => 'network type'],
+ ],
+ ],
+ 'ramActions' => [
+ [
+ 'apiName' => 'ListHttpApis',
+ 'description' => '',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'apig:ListHttpApis',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteMcpServer',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteMcpServer',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'InstallPlugin',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:InstallPlugin',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListEnvironments',
+ 'description' => '',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'apig:ListEnvironments',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Environment', 'arn' => 'acs:apig:{#regionId}:{#accountId}:environment/*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListPolicyClasses',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListPolicyClasses',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetGateway',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetGateway',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateService',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreateService',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Service', 'arn' => 'acs:apig:{#regionId}:{#accountId}:service/*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateSource',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreateSource',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListGatewayFeatures',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListGatewayFeatures',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListZones',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListZones',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListPluginClasses',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListPluginClasses',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteService',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteService',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Service', 'arn' => 'acs:apig:{#regionId}:{#accountId}:service/{#ServiceId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteConsumer',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteConsumer',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/{#ConsumerId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteConsumerAuthorizationRule',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteConsumerAuthorizationRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/{#ConsumerId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetPolicyAttachment',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetPolicyAttachment',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetConsumerAuthorizationRule',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetConsumerAuthorizationRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/{#ConsumerId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListPlugins',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListPlugins',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'RestartGateway',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:RestartGateway',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateConsumerAuthorizationRules',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreateConsumerAuthorizationRules',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetPluginAttachment',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetPluginAttachment',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateHttpApi',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateHttpApi',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateEnvironment',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateEnvironment',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Environment', 'arn' => 'acs:apig:{#regionId}:{#accountId}:environment/{#EnvironmentId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetResourceOverview',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetResourceOverview',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteHttpApi',
+ 'description' => '',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteHttpApi',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateHttpApi',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'apig:CreateHttpApi',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetGatewayQuotaRuleSubjectUsage',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetGatewayQuotaRuleSubjectUsage',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'SyncMCPServers',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:SyncMCPServers',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteEnvironment',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteEnvironment',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Environment', 'arn' => 'acs:apig:{#regionId}:{#accountId}:environment/{#EnvironmentId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListSslCerts',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListSslCerts',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetSecret',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetSecret',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:secret/{#SecretId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteHttpApiOperation',
+ 'description' => '',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteHttpApiOperation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetDashboard',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetDashboard',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateGatewayQuotaRule',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateGatewayQuotaRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetSecretValue',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetSecretValue',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateService',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateService',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Service', 'arn' => 'acs:apig:{#regionId}:{#accountId}:service/{#ServiceId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListConsumers',
+ 'description' => '',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'apig:ListConsumers',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ResetGatewayQuotaRule',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ResetGatewayQuotaRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListTagResources',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListTagResources',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateSecret',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'apig:CreateSecret',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListDomains',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListDomains',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:domain/*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'AddGatewayQuotaRule',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:AddGatewayQuotaRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListSecretReferences',
+ 'description' => '',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'apig:ListSecretReferences',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:secret/{#SecretId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListMcpServers',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListMcpServers',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListServices',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListServices',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Service', 'arn' => 'acs:apig:{#regionId}:{#accountId}:service/*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateServiceVersion',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateServiceVersion',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Service', 'arn' => 'acs:apig:{#regionId}:{#accountId}:service/{#ServiceId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListPolicies',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListPolicies',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreatePluginAttachment',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreatePluginAttachment',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteServiceVersion',
+ 'description' => '',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteServiceVersion',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Service', 'arn' => 'acs:apig:{#regionId}:{#accountId}:service/{#ServiceId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListExternalServices',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListExternalServices',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateAndAttachPolicy',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateAndAttachPolicy',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Policy', 'arn' => 'acs:apig:{#regionId}:{#accountId}:policy/{#PolicyId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetHttpApi',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetHttpApi',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateAiModelProvider',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreateAiModelProvider',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdatePolicy',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'apig:UpdatePolicy',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeletePluginClass',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeletePluginClass',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetConsumer',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetConsumer',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/{#ConsumerId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListSecrets',
+ 'description' => '',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'apig:ListSecrets',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ExportHttpApi',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ExportHttpApi',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListGateways',
+ 'description' => '',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'apig:ListGateways',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateHttpApiRoute',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateHttpApiRoute',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateGateway',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'apig:CreateGateway',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetDomain',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetDomain',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:domain/{#DomainId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateSecret',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateSecret',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:secret/{#SecretId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListHttpApiOperations',
+ 'description' => '',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'apig:ListHttpApiOperations',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateConsumer',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateConsumer',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/{#ConsumerId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteGatewayQuotaRule',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteGatewayQuotaRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListConsumerQuotaRules',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListConsumerQuotaRules',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/{#ConsumerId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateDomain',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'apig:CreateDomain',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:domain/*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateMcpServer',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreateMcpServer',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateConsumerAuthorizationRule',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreateConsumerAuthorizationRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/{#ConsumerId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateServiceVersion',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'apig:CreateServiceVersion',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetMcpServer',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetMcpServer',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetPolicy',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetPolicy',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Policy', 'arn' => 'acs:apig:{#regionId}:{#accountId}:policy/{#PolicyId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateGatewayQuotaRuleStatus',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateGatewayQuotaRuleStatus',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetHttpApiOperation',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetHttpApiOperation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeletePolicyAttachment',
+ 'description' => '',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'apig:DeletePolicyAttachment',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'RemoveConsumerAuthorizationRule',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:RemoveConsumerAuthorizationRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UnDeployMcpServer',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UnDeployMcpServer',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetService',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetService',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [
+ ['conditionKey' => 'apig:GatewayId', 'validationType' => 'always'],
+ ],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Service', 'arn' => 'acs:apig:{#regionId}:{#accountId}:service/{#ServiceId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteHttpApiRoute',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteHttpApiRoute',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UntagResources',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UntagResources',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'QueryConsumerAuthorizationRules',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:QueryConsumerAuthorizationRules',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateMcpServer',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateMcpServer',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UninstallPlugin',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UninstallPlugin',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteGatewaySecurityGroupRule',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteGatewaySecurityGroupRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ImportHttpApi',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ImportHttpApi',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetPluginClass',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetPluginClass',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetHttpApiRoute',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetHttpApiRoute',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteDomain',
+ 'description' => '',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteDomain',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:domain/{#DomainId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListGatewayQuotaRules',
+ 'description' => '',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'apig:ListGatewayQuotaRules',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListPluginAttachments',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListPluginAttachments',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'BatchDeleteConsumerAuthorizationRule',
+ 'description' => '',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'apig:BatchDeleteConsumerAuthorizationRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ChangeResourceGroup',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ChangeResourceGroup',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateEnvironment',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreateEnvironment',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Environment', 'arn' => 'acs:apig:{#regionId}:{#accountId}:environment/*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateAndAttachPolicy',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreateAndAttachPolicy',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Policy', 'arn' => 'acs:apig:{#regionId}:{#accountId}:policy/*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteSource',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteSource',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Source', 'arn' => 'acs:apig:{#regionId}:{#accountId}:source/{#SourceId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreatePolicy',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreatePolicy',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreatePluginClass',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreatePluginClass',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdatePluginAttachment',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdatePluginAttachment',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DescribeRegions',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DescribeRegions',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteSecret',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteSecret',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:secret/{#SecretId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'AddGatewaySecurityGroupRule',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:AddGatewaySecurityGroupRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetSource',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetSource',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [
+ ['conditionKey' => 'apig:GatewayId', 'validationType' => 'always'],
+ ],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeletePolicy',
+ 'description' => '',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'apig:DeletePolicy',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateGatewayFeature',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateGatewayFeature',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateConsumerAuthorizationRule',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateConsumerAuthorizationRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/{#ConsumerId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateConsumer',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'apig:CreateConsumer',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateHttpApiOperation',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'apig:CreateHttpApiOperation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreateHttpApiRoute',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:CreateHttpApiRoute',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListHttpApiRoutes',
+ 'description' => '',
+ 'operationType' => 'list',
+ 'ramAction' => [
+ 'action' => 'apig:ListHttpApiRoutes',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'CreatePolicyAttachment',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'apig:CreatePolicyAttachment',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetEnvironment',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:GetEnvironment',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Environment', 'arn' => 'acs:apig:{#regionId}:{#accountId}:environment/{#EnvironmentId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListConsumerAuthorizationRules',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:ListConsumerAuthorizationRules',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/{#ConsumerId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateHttpApiOperation',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateHttpApiOperation',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpgradeGateway',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpgradeGateway',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'TagResources',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:TagResources',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetTraceConfig',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetTraceConfig',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetGatewayQuotaRule',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'apig:GetGatewayQuotaRule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeployMcpServer',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeployMcpServer',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UndeployHttpApi',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UndeployHttpApi',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteGateway',
+ 'description' => '',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'apig:DeleteGateway',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeployHttpApi',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeployHttpApi',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeletePluginAttachment',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:DeletePluginAttachment',
+ 'authLevel' => 'operate',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateDomain',
+ 'description' => '',
+ 'operationType' => 'none',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateDomain',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:domain/{#DomainId}'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateGatewayName',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'apig:UpdateGatewayName',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'APIG', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ],
+ ],
+ ],
+ ],
+ 'resourceTypes' => [
+ ['validationType' => 'always', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/*'],
+ ['validationType' => 'always', 'resourceType' => 'Environment', 'arn' => 'acs:apig:{#regionId}:{#accountId}:environment/*'],
+ ['validationType' => 'always', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/{#GatewayId}'],
+ ['validationType' => 'always', 'resourceType' => 'Service', 'arn' => 'acs:apig:{#regionId}:{#accountId}:service/*'],
+ ['validationType' => 'always', 'resourceType' => 'Source', 'arn' => 'acs:apig:{#regionId}:{#accountId}:source/{#SourceId}'],
+ ['validationType' => 'always', 'resourceType' => 'Service', 'arn' => 'acs:apig:{#regionId}:{#accountId}:service/{#ServiceId}'],
+ ['validationType' => 'always', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/{#ConsumerId}'],
+ ['validationType' => 'always', 'resourceType' => 'ConsumerAuthorizationRule', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumerauthorizationrule/*'],
+ ['validationType' => 'always', 'resourceType' => 'HttpApi', 'arn' => 'acs:apig:{#regionId}:{#accountId}:httpapi/{#HttpApiId}'],
+ ['validationType' => 'always', 'resourceType' => 'Environment', 'arn' => 'acs:apig:{#regionId}:{#accountId}:environment/{#EnvironmentId}'],
+ ['validationType' => 'always', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:secret/{#SecretId}'],
+ ['validationType' => 'always', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:secret/*'],
+ ['validationType' => 'always', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:consumer/*'],
+ ['validationType' => 'always', 'resourceType' => 'Gateway', 'arn' => 'acs:apig:{#regionId}:{#accountId}:gateway/*'],
+ ['validationType' => 'always', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:domain/*'],
+ ['validationType' => 'always', 'resourceType' => 'Policy', 'arn' => 'acs:apig:{#regionId}:{#accountId}:policy/{#PolicyId}'],
+ ['validationType' => 'always', 'resourceType' => 'Domain', 'arn' => 'acs:apig:{#regionId}:{#accountId}:domain/{#DomainId}'],
+ ['validationType' => 'always', 'resourceType' => 'Policy', 'arn' => 'acs:apig:{#regionId}:{#accountId}:policy/*'],
+ ['validationType' => 'always', 'resourceType' => 'Source', 'arn' => 'acs:apig:{#regionId}:{#accountId}:source/{SourceId]'],
],
],
];