summaryrefslogtreecommitdiff
path: root/data/en_us/apig/2024-03-27
diff options
context:
space:
mode:
authorZhineng Li <[email protected]>2026-02-13 10:54:11 +0800
committerZhineng Li <[email protected]>2026-02-13 10:54:11 +0800
commit7347bac4ab7e136157fc94777e6cf87ef9e08599 (patch)
tree0dec367dac6e152161a6f7cc0dba6ebbef1f34a2 /data/en_us/apig/2024-03-27
downloadacs-metadata-full-7347bac4ab7e136157fc94777e6cf87ef9e08599.tar.gz
acs-metadata-full-7347bac4ab7e136157fc94777e6cf87ef9e08599.zip
Diffstat (limited to 'data/en_us/apig/2024-03-27')
-rw-r--r--data/en_us/apig/2024-03-27/api-docs.php25683
1 files changed, 25683 insertions, 0 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
new file mode 100644
index 0000000..2e1f69e
--- /dev/null
+++ b/data/en_us/apig/2024-03-27/api-docs.php
@@ -0,0 +1,25683 @@
+<?php return [
+ 'version' => '1.0',
+ 'info' => [
+ 'style' => 'ROA',
+ 'product' => 'APIG',
+ 'version' => '2024-03-27',
+ ],
+ 'directories' => [
+ [
+ 'id' => 194304,
+ 'title' => 'API Management',
+ 'type' => 'directory',
+ 'children' => [
+ 'ExportHttpApi',
+ 'ImportHttpApi',
+ 'DeployHttpApi',
+ 'CreateHttpApi',
+ 'UpdateHttpApi',
+ 'GetHttpApi',
+ 'ListHttpApis',
+ 'UndeployHttpApi',
+ 'DeleteHttpApi',
+ ],
+ ],
+ [
+ 'id' => 197650,
+ 'title' => 'Interface Management',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateHttpApiOperation',
+ 'GetHttpApiOperation',
+ 'UpdateHttpApiOperation',
+ 'ListHttpApiOperations',
+ 'DeleteHttpApiOperation',
+ ],
+ ],
+ [
+ 'id' => 278728,
+ 'title' => 'MCP Management',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateMcpServer',
+ 'UpdateMcpServer',
+ 'GetMcpServer',
+ 'ListMcpServers',
+ 'DeleteMcpServer',
+ 'DeployMcpServer',
+ 'UnDeployMcpServer',
+ 'SyncMCPServers',
+ ],
+ ],
+ [
+ 'id' => 199795,
+ 'title' => 'Routing Management',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateHttpApiRoute',
+ 'UpdateHttpApiRoute',
+ 'GetHttpApiRoute',
+ 'DeleteHttpApiRoute',
+ 'ListHttpApiRoutes',
+ ],
+ ],
+ [
+ 'id' => 203189,
+ 'title' => 'Service Management',
+ 'type' => 'directory',
+ 'children' => [
+ 'GetService',
+ 'CreateService',
+ 'ListServices',
+ 'UpdateService',
+ 'DeleteService',
+ 'CreateServiceVersion',
+ 'UpdateServiceVersion',
+ 'DeleteServiceVersion',
+ 'CreateSource',
+ 'GetSource',
+ 'DeleteSource',
+ ],
+ ],
+ [
+ 'id' => 194166,
+ 'title' => 'Gateway Management',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateGateway',
+ 'UpdateGatewayName',
+ 'UpdateGatewayFeature',
+ 'UpgradeGateway',
+ 'GetGateway',
+ 'ListGateways',
+ 'AddGatewaySecurityGroupRule',
+ 'DeleteGateway',
+ 'DeleteGatewaySecurityGroupRule',
+ 'ListZones',
+ 'RestartGateway',
+ 'ListGatewayFeatures',
+ ],
+ ],
+ [
+ 'id' => 249179,
+ 'title' => 'Consumer Management',
+ 'type' => 'directory',
+ 'children' => [
+ 'RemoveConsumerAuthorizationRule',
+ 'QueryConsumerAuthorizationRules',
+ 'CreateConsumerAuthorizationRules',
+ 'BatchDeleteConsumerAuthorizationRule',
+ 'DeleteConsumer',
+ 'ListConsumers',
+ 'DeleteConsumerAuthorizationRule',
+ 'CreateConsumer',
+ 'UpdateConsumer',
+ 'GetConsumer',
+ 'CreateConsumerAuthorizationRule',
+ 'UpdateConsumerAuthorizationRule',
+ 'GetConsumerAuthorizationRule',
+ ],
+ ],
+ [
+ 'id' => 202847,
+ 'title' => 'Policy Management',
+ 'type' => 'directory',
+ 'children' => [
+ 'ListPolicies',
+ 'ListPolicyClasses',
+ 'CreatePolicy',
+ 'GetPolicy',
+ 'UpdatePolicy',
+ 'DeletePolicy',
+ 'CreatePolicyAttachment',
+ 'GetPolicyAttachment',
+ 'DeletePolicyAttachment',
+ ],
+ ],
+ [
+ 'id' => 206755,
+ 'title' => 'Plug-in Management',
+ 'type' => 'directory',
+ 'children' => [
+ 'ListPlugins',
+ 'CreatePluginAttachment',
+ 'GetPluginAttachment',
+ 'ListPluginAttachments',
+ 'UpdatePluginAttachment',
+ 'DeletePluginAttachment',
+ 'InstallPlugin',
+ 'UninstallPlugin',
+ ],
+ ],
+ [
+ 'id' => 199044,
+ 'title' => 'Domain Name Management',
+ 'type' => 'directory',
+ 'children' => [
+ 'ListSslCerts',
+ 'GetDomain',
+ 'CreateDomain',
+ 'ListDomains',
+ 'DeleteDomain',
+ 'UpdateDomain',
+ ],
+ ],
+ [
+ 'id' => 204225,
+ 'title' => 'Monitoring Management',
+ 'type' => 'directory',
+ 'children' => [
+ 'GetTraceConfig',
+ 'GetDashboard',
+ ],
+ ],
+ [
+ 'id' => 204226,
+ 'title' => 'Resource Management',
+ 'type' => 'directory',
+ 'children' => [
+ 'ChangeResourceGroup',
+ 'GetResourceOverview',
+ ],
+ ],
+ [
+ 'id' => 201876,
+ 'title' => 'Historical Interfaces',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateAndAttachPolicy',
+ 'UpdateAndAttachPolicy',
+ [
+ 'id' => 199043,
+ 'title' => 'Environmental Management',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateEnvironment',
+ 'GetEnvironment',
+ 'UpdateEnvironment',
+ 'DeleteEnvironment',
+ 'ListEnvironments',
+ ],
+ ],
+ ],
+ ],
+ [
+ 'id' => 372396,
+ 'title' => null,
+ 'type' => 'directory',
+ 'children' => [
+ 'ListPluginClasses',
+ 'ListConsumerAuthorizationRules',
+ 'GetSecretValue',
+ 'DeleteSecret',
+ 'ListSecretReferences',
+ 'UpdateSecret',
+ 'GetSecret',
+ 'CreateSecret',
+ 'ListSecrets',
+ ],
+ ],
+ ],
+ 'components' => [
+ 'schemas' => [
+ 'AgentServiceConfig' => [
+ 'title' => '',
+ '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',
+ ],
+ 'dashScopeConfig' => [
+ 'title' => '',
+ 'description' => 'The Model Studio service configuration.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'appCredentials' => [
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'appCredentials',
+ ],
+ ],
+ 'backendName' => 'dashScopeConfig',
+ ],
+ 'enableHealthCheck' => [
+ 'title' => '',
+ 'description' => 'Specifies whether to enable health check.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'boolean',
+ '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',
+ ],
+ 'difyConfig' => [
+ 'title' => '',
+ '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',
+ ],
+ ],
+ 'backendName' => 'difyConfig',
+ ],
+ 'enableOutlierDetection' => [
+ 'description' => 'Whether to enable outlier detection',
+ 'visibility' => 'Public',
+ 'type' => 'boolean',
+ 'enumValueTitles' => [
+ 'true' => 'true',
+ 'false' => 'false',
+ ],
+ 'example' => 'true',
+ 'backendName' => 'enableOutlierDetection',
+ ],
+ 'customConfig' => [
+ 'description' => 'User-defined configuration',
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'apiKey' => [
+ 'description' => 'apiKey',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'sk-xxx',
+ 'backendName' => 'apiKey',
+ ],
+ 'apiKeyGenerateMode' => [
+ 'description' => 'API key generation mode.',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'Reference' => 'Reference',
+ 'Custom' => 'Custom',
+ ],
+ 'example' => 'Reference',
+ 'backendName' => 'apiKeyGenerateMode',
+ ],
+ ],
+ 'backendName' => 'customConfig',
+ ],
+ 'protocols' => [
+ 'title' => '',
+ 'description' => 'The protocol.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The protocol.',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'DashScope',
+ 'extendType' => 'true',
+ ],
+ 'required' => false,
+ 'backendName' => 'protocols',
+ ],
+ ],
+ ],
+ 'AiServiceConfig' => [
+ 'title' => 'A short description of struct',
+ 'description' => 'The struct description.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'provider' => [
+ 'title' => '',
+ 'description' => 'The Large Language Model (LLM) provider.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'qwen',
+ 'backendName' => 'provider',
+ ],
+ 'address' => [
+ 'title' => '',
+ 'description' => 'The service endpoint.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'https://dashscope.aliyun.com',
+ 'backendName' => 'address',
+ ],
+ 'enableHealthCheck' => [
+ 'title' => '',
+ 'description' => 'Specifies whether to enable health check.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ 'backendName' => 'enableHealthCheck',
+ ],
+ 'paiEASServiceConfig' => [
+ 'title' => 'PAI-EAS服务专属配置',
+ 'description' => 'PAI-EAS service configuration settings.',
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'workspaceId' => [
+ 'title' => '工作空间ID',
+ 'description' => 'Workspace identifier.',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'plw-d5g7qsem1hkmih54g210',
+ 'backendName' => 'workspaceId',
+ ],
+ 'serviceId' => [
+ 'title' => '服务ID',
+ 'description' => 'Service identifier.',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'svc-d33onfmm1hkn5duhuqjg',
+ 'backendName' => 'serviceId',
+ ],
+ 'serviceName' => [
+ 'title' => '服务名称',
+ 'description' => 'Name of the service.',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'service-hello',
+ 'backendName' => 'serviceName',
+ ],
+ 'endpointType' => [
+ 'title' => '连接类型:私网(vpc)/公网(public)',
+ 'description' => 'Type of endpoint.',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => '"public","private"',
+ 'backendName' => 'endpointType',
+ ],
+ ],
+ 'backendName' => 'paiEASServiceConfig',
+ ],
+ 'bedrockServiceConfig' => [
+ 'title' => 'Bedrock服务专属配置',
+ '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',
+ ],
+ ],
+ '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',
+ ],
+ '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\\":\\"[email protected]\\",\\"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',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'vertexServiceConfig',
+ ],
+ 'protocols' => [
+ 'title' => '',
+ 'description' => 'The LLM protocols.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The protocol.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'OpenAI/v1',
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'protocols',
+ ],
+ 'apiKeys' => [
+ 'title' => '',
+ 'description' => 'The API keys.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'apiKey'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'sk-xxx',
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'apiKeys',
+ ],
+ 'compatibleProtocols' => [
+ 'description' => 'Supported compatible protocols.',
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'string',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => '"openai", "anthropic"',
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'compatibleProtocols',
+ ],
+ ],
+ ],
+ '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' => '',
+ ],
+ 'example' => 'Jwt',
+ 'backendName' => 'type',
+ ],
+ 'generateMode' => [
+ 'title' => 'generateMode',
+ 'description' => 'Generation mode',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ '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',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'apikeySource' => [
+ 'title' => 'apikey',
+ 'description' => 'The source configuration of the API key.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'source' => [
+ 'title' => 'source',
+ 'description' => 'The source of the API key.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* Header'."\n"
+ .'* QueryString'."\n"
+ .'* Default'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'Header' => '',
+ 'QueryString' => '',
+ 'Default' => '',
+ ],
+ 'example' => 'Default',
+ 'backendName' => 'source',
+ ],
+ 'value' => [
+ 'title' => 'value',
+ 'description' => 'The value of the API key.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'xxxx',
+ 'backendName' => 'value',
+ ],
+ ],
+ 'backendName' => 'apikeySource',
+ ],
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'credentials',
+ ],
+ ],
+ ],
+ 'ApiRouteConflictInfo' => [
+ 'title' => 'A short description of struct',
+ 'description' => 'The conflict definition.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'domainInfo' => [
+ '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',
+ ],
+ ],
+ 'backendName' => 'domainInfo',
+ ],
+ 'conflicts' => [
+ 'title' => '',
+ 'description' => 'The conflicts.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The conflict.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'resourceType' => [
+ 'title' => '',
+ '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' => '',
+ ],
+ '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',
+ ],
+ 'environmentInfo' => [
+ 'title' => '',
+ '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',
+ ],
+ ],
+ 'backendName' => 'environmentInfo',
+ ],
+ 'details' => [
+ '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' => '',
+ 'description' => 'The conflict level. Valid values: Critical, Warning, and Informational.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'Warning' => 'Warning',
+ 'Critical' => 'Critical',
+ 'Informational' => 'Informational',
+ ],
+ 'example' => 'Critical',
+ 'backendName' => 'level',
+ ],
+ 'conflictingMatch' => [
+ 'title' => '',
+ 'description' => 'The matching rule information of the conflicting target.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'operationInfo' => [
+ 'title' => '',
+ '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',
+ ],
+ ],
+ 'backendName' => 'operationInfo',
+ ],
+ 'match' => [
+ 'title' => '',
+ 'description' => 'The matching rule.'."\n",
+ 'visibility' => 'Public',
+ 'backendName' => 'match',
+ '$ref' => '#/components/schemas/HttpRouteMatch',
+ ],
+ ],
+ 'backendName' => 'conflictingMatch',
+ ],
+ 'detectedMatch' => [
+ 'title' => '',
+ 'description' => 'The matching rule information of the object being detected.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'operationInfo' => [
+ 'title' => '',
+ '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',
+ ],
+ ],
+ 'backendName' => 'operationInfo',
+ ],
+ 'match' => [
+ 'title' => '',
+ 'description' => 'The matching rule information of the object being detected.'."\n",
+ 'visibility' => 'Public',
+ 'backendName' => 'match',
+ '$ref' => '#/components/schemas/HttpRouteMatch',
+ ],
+ ],
+ 'backendName' => 'detectedMatch',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'details',
+ ],
+ 'routeInfo' => [
+ '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',
+ ],
+ ],
+ 'backendName' => 'routeInfo',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'conflicts',
+ ],
+ ],
+ ],
+ 'Attachment' => [
+ 'title' => 'A short description of struct',
+ 'description' => 'The mount information.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'policyAttachmentId' => [
+ 'title' => 'policyAttachmentId',
+ 'description' => 'The mount ID.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'pr-cq7l5s5lhtgi6qasrdc0',
+ 'backendName' => 'policyAttachmentId',
+ ],
+ 'attachResourceIds' => [
+ 'title' => 'attachResourceIds',
+ 'description' => 'The resource IDs.'."\n",
+ 'visibility' => 'Public',
+ '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',
+ ],
+ 'gatewayId' => [
+ 'title' => 'gatewayId',
+ 'description' => 'The instance to which the mounted resource belongs.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'gw-cpr4f9dlhtgq5ksfgmb0',
+ 'backendName' => 'gatewayId',
+ ],
+ ],
+ ],
+ 'AuthConfig' => [
+ 'title' => 'A short description of struct',
+ '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',
+ ],
+ ],
+ ],
+ 'AuthorizationResourceInfo' => [
+ 'title' => 'A short description of struct',
+ 'description' => '',
+ 'visibility' => 'Public',
+ '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',
+ ],
+ ],
+ ],
+ 'Backend' => [
+ 'title' => '',
+ 'description' => 'The backend services.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'scene' => [
+ 'title' => '',
+ 'description' => 'The backend service scenario. Valid values: Single, MultiServiceByRatio, MultiServiceByTag, Mock, and Redirect.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'Single',
+ 'backendName' => 'scene',
+ ],
+ 'services' => [
+ 'title' => '',
+ 'description' => 'The backend services.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'visibility' => 'Public',
+ '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',
+ ],
+ 'protocol' => [
+ 'title' => '',
+ 'description' => 'The service protocol. Valid values: HTTP, TCP, and DUBBO.'."\n",
+ 'visibility' => 'Public',
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ 'description' => '',
+ ],
+ 'backendName' => 'services',
+ 'itemName' => 'service',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ ],
+ ],
+ 'DomainInfo' => [
+ '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-cq1lthllhtgja4dk54eg',
+ 'backendName' => 'domainId',
+ ],
+ 'status' => [
+ 'title' => 'status',
+ 'description' => 'The domain name status.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* UnPublished'."\n"
+ .'* Published'."\n",
+ 'visibility' => 'Public',
+ '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',
+ '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',
+ ],
+ 'protocol' => [
+ 'title' => 'protocol',
+ 'description' => 'The supported protocol. Valid values:'."\n"
+ ."\n"
+ .'* HTTP'."\n"
+ .'* HTTPS'."\n",
+ 'visibility' => 'Public',
+ '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',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ ],
+ 'GatewayInfo' => [
+ 'title' => 'A short description of struct',
+ 'description' => 'The instance information.'."\n",
+ 'visibility' => 'Public',
+ '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',
+ ],
+ 'vpcInfo' => [
+ 'title' => '',
+ 'description' => 'The virtual private cloud (VPC) information.'."\n",
+ 'visibility' => 'Public',
+ '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',
+ ],
+ ],
+ 'backendName' => 'vpcInfo',
+ ],
+ 'engineVersion' => [
+ 'title' => '',
+ 'description' => 'The instance engine version.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => '2.0.7',
+ 'backendName' => 'engineVersion',
+ ],
+ ],
+ ],
+ 'GatewayLogConfig' => [
+ 'title' => '',
+ 'description' => 'The logging configurations.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'slsConfig' => [
+ 'title' => '',
+ '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',
+ ],
+ ],
+ 'backendName' => 'slsConfig',
+ ],
+ ],
+ ],
+ 'GatewayRouteBackend' => [
+ 'title' => '',
+ 'description' => '',
+ 'visibility' => 'Public',
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'services',
+ 'itemName' => 'service',
+ ],
+ ],
+ ],
+ 'GatewayRouteBackendConfig' => [
+ 'title' => '',
+ 'description' => '',
+ 'visibility' => 'Public',
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'services',
+ 'itemName' => 'service',
+ ],
+ ],
+ ],
+ 'GatewayRouteDomainConfig' => [
+ 'title' => 'GatewayRouteDomainConfig',
+ 'description' => '',
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'domainIds' => [
+ 'title' => '',
+ 'description' => '',
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'd-cp9mv55lht***',
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'domainIds',
+ ],
+ ],
+ ],
+ 'GatewayRouteDomainInfo' => [
+ 'title' => 'GatewayRouteDomainInfo',
+ 'description' => '',
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'domains' => [
+ 'title' => '',
+ 'description' => '',
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'visibility' => 'Public',
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'domains',
+ ],
+ ],
+ ],
+ 'GatewayService' => [
+ 'title' => 'A short description of struct',
+ 'description' => '',
+ 'visibility' => 'Public',
+ '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',
+ ],
+ 'name' => [
+ 'title' => '',
+ 'description' => '',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'http-0',
+ 'backendName' => 'name',
+ ],
+ 'protocol' => [
+ 'title' => '',
+ 'description' => '',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'TCP' => 'TCP',
+ 'UDP' => 'UDP',
+ ],
+ 'example' => 'TCP',
+ 'backendName' => 'protocol',
+ ],
+ ],
+ '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',
+ ],
+ 'qualifier' => [
+ 'title' => '',
+ 'description' => '',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'LATEST',
+ 'backendName' => 'qualifier',
+ ],
+ ],
+ ],
+ 'GatewayServiceSource' => [
+ 'title' => 'A short description of struct',
+ 'description' => '',
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'serviceSourceId' => [
+ 'title' => '',
+ 'description' => '',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'gss-cq69grnd5lbq***',
+ 'backendName' => 'serviceSourceId',
+ ],
+ 'name' => [
+ 'title' => '',
+ 'description' => '',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'itemcenter-dev-cluster',
+ 'backendName' => 'name',
+ ],
+ 'type' => [
+ 'title' => '',
+ 'description' => '',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'K8S' => '',
+ 'MSE_NACOS' => ' MSE Nacos',
+ ],
+ 'example' => 'MSE_NACOS',
+ 'backendName' => 'type',
+ ],
+ 'k8sServiceSourceInfo' => [
+ 'title' => '',
+ 'description' => '',
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'clusterId' => [
+ 'title' => '',
+ 'description' => '',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'c4a21b3560fad4ec299f3e63f4***',
+ 'backendName' => 'clusterId',
+ ],
+ 'ingressConfig' => [
+ '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',
+ ],
+ ],
+ 'backendName' => 'k8sServiceSourceInfo',
+ ],
+ 'nacosServiceSourceInfo' => [
+ 'title' => '',
+ 'description' => '',
+ 'visibility' => 'Public',
+ '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' => [
+ 'title' => '',
+ 'description' => '',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'mse-a704***-nacos-ans.mse.aliyuncs.com:8848',
+ 'backendName' => 'address',
+ ],
+ ],
+ 'backendName' => 'nacosServiceSourceInfo',
+ ],
+ 'bound' => [
+ 'title' => '',
+ 'description' => '',
+ 'visibility' => 'Public',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ 'backendName' => 'bound',
+ ],
+ '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',
+ ],
+ ],
+ ],
+ 'HttpApiApiInfo' => [
+ 'title' => 'ApiInfo',
+ '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',
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'environmentInfo',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'k8sClusterInfo',
+ ],
+ 'overrideIngressIp' => [
+ 'title' => '',
+ 'description' => 'Specifies whether to update the address in Ingress Status.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ 'backendName' => 'overrideIngressIp',
+ ],
+ ],
+ 'backendName' => 'ingressInfo',
+ ],
+ 'type' => [
+ 'title' => '',
+ 'description' => 'The API type.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* HttpIngress'."\n"
+ .'* Rest'."\n"
+ .'* Websocket'."\n"
+ .'* AI'."\n"
+ .'* Http'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ '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',
+ ],
+ 'modelCategory' => [
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'backendName' => 'modelCategory',
+ 'description' => 'Model category',
+ 'example' => 'Text',
+ ],
+ 'protocols' => [
+ 'title' => '',
+ 'description' => 'The protocols.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The protocol.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* HTTPS'."\n"
+ .'* HTTP'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'HTTPS' => 'HTTPS',
+ 'HTTP' => 'HTTP',
+ ],
+ 'example' => 'HTTP',
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'protocols',
+ ],
+ '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',
+ ],
+ 'backendScene' => [
+ 'title' => '',
+ 'description' => 'The publishing scenario.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* SingleService'."\n"
+ .'* MultiServiceByRatio'."\n"
+ .'* MultiServiceByContent'."\n"
+ .'* MultiServiceByTag'."\n"
+ .'* Mock'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'SingleService' => '',
+ 'MultiServiceByRatio' => '',
+ 'MultiServiceByContent' => '',
+ 'MultiServiceByTag' => '',
+ 'Mock' => 'Mock',
+ ],
+ 'example' => 'SingleService',
+ 'backendName' => 'backendScene',
+ ],
+ 'backendType' => [
+ 'title' => '',
+ 'description' => 'The type of the backend service.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* DNS: a DNS domain name'."\n"
+ .'* 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' => '',
+ ],
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ 'description' => 'object',
+ ],
+ 'backendName' => 'serviceConfigs',
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'gatewayInfo',
+ ],
+ 'deployStatus' => [
+ 'title' => '',
+ 'description' => 'The publishing status of the API in the current environment.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'Deployed',
+ 'backendName' => 'deployStatus',
+ ],
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ 'description' => 'object',
+ ],
+ 'backendName' => 'subDomains',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'environments',
+ ],
+ 'aiProtocols' => [
+ 'title' => '',
+ 'description' => 'The AI protocols.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The AI protocol.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* OpenAI/v1'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'OpenAI/v1' => 'OpenAI/v1',
+ ],
+ 'example' => 'OpenAI/v1',
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'aiProtocols',
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ ],
+ 'backendName' => 'deployCntMap',
+ ],
+ 'agentProtocols' => [
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'extendType' => 'true',
+ 'example' => 'DashScope',
+ 'description' => 'string',
+ ],
+ 'backendName' => 'agentProtocols',
+ 'description' => 'Agent protocol list',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ 'operator' => [
+ 'title' => '',
+ 'description' => 'The operator. Exact match, prefix match, and regular expressions are supported.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* equal'."\n"
+ .'* regex'."\n"
+ .'* prefix'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'equal' => 'equal',
+ 'regex' => 'regex',
+ 'prefix' => 'prefix',
+ ],
+ 'example' => 'equal',
+ 'backendName' => 'operator',
+ ],
+ ],
+ ],
+ 'HttpApiBackendMatchConditions' => [
+ 'title' => '',
+ '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',
+ ],
+ 'conditions' => [
+ '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',
+ ],
+ ],
+ ],
+ 'HttpApiDeployConfig' => [
+ 'title' => 'Service ID.',
+ 'description' => 'The AI API configurations.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'environmentId' => [
+ 'title' => '',
+ 'description' => 'The environment ID.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'env-xxx',
+ 'backendName' => 'environmentId',
+ ],
+ 'backendScene' => [
+ 'title' => '',
+ 'description' => 'The publishing scenario.'."\n",
+ 'visibility' => 'Public',
+ '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' => [
+ 'title' => '',
+ 'description' => 'The instance information.'."\n",
+ 'visibility' => 'Public',
+ 'backendName' => 'gatewayInfo',
+ '$ref' => '#/components/schemas/GatewayInfo',
+ ],
+ 'mock' => [
+ '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',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The domain name ID.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'd-xxx',
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'customDomainIds',
+ ],
+ 'serviceConfigs' => [
+ 'title' => '',
+ 'description' => 'The service configurations.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'object',
+ 'visibility' => 'Public',
+ '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',
+ ],
+ 'multiServiceRouteStrategy' => [
+ 'description' => 'Multi-service routing strategy type',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'ByWeight',
+ 'backendName' => 'multiServiceRouteStrategy',
+ ],
+ 'observabilityRouteConfig' => [
+ 'description' => 'Observability metrics-based routing config',
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'mode' => [
+ 'description' => 'Routing mode',
+ 'visibility' => 'Public',
+ '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',
+ ],
+ ],
+ 'backendName' => 'observabilityRouteConfig',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'serviceConfigs',
+ ],
+ 'policyConfigs' => [
+ 'title' => '',
+ 'description' => 'The policy configurations.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'object',
+ 'visibility' => 'Public',
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'policyConfigs',
+ ],
+ 'customDomainInfos' => [
+ 'title' => '',
+ 'description' => 'The information about the custom domain names.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'object',
+ 'visibility' => 'Public',
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'customDomainInfos',
+ ],
+ 'subDomains' => [
+ 'title' => '',
+ 'description' => 'The information about the sub-domain names.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'object',
+ 'visibility' => 'Public',
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'subDomains',
+ ],
+ ],
+ ],
+ 'HttpApiDomainInfo' => [
+ 'title' => '',
+ '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',
+ ],
+ 'protocol' => [
+ 'title' => '',
+ 'description' => 'The protocol.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* HTTPS'."\n"
+ .'* HTTP'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'HTTPS' => 'HTTPS',
+ 'HTTP' => 'HTTP',
+ ],
+ 'example' => 'HTTP',
+ 'backendName' => 'protocol',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'versionedHttpApis' => [
+ 'title' => '',
+ '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',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ ],
+ ],
+ 'HttpApiOperation' => [
+ 'title' => 'A short description of struct',
+ 'description' => 'The operation in the HTTP API definition.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'method' => [
+ 'title' => '',
+ 'description' => 'The HTTP method.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* TRACE'."\n"
+ .'* HEAD'."\n"
+ .'* DELETE'."\n"
+ .'* POST'."\n"
+ .'* GET'."\n"
+ .'* CONNECT'."\n"
+ .'* 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',
+ ],
+ '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',
+ ],
+ 'deployConfigs' => [
+ 'title' => '',
+ 'description' => 'The deployment configurations.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'visibility' => 'Public',
+ 'extendType' => 'true',
+ '$ref' => '#/components/schemas/HttpApiDeployConfig',
+ 'description' => 'object',
+ ],
+ 'backendName' => 'deployConfigs',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'method' => [
+ 'title' => '',
+ 'description' => 'The HTTP method of the operation.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* TRACE'."\n"
+ .'* HEAD'."\n"
+ .'* DELETE'."\n"
+ .'* POST'."\n"
+ .'* GET'."\n"
+ .'* CONNECT'."\n"
+ .'* 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',
+ ],
+ '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',
+ ],
+ 'deployConfigs' => [
+ '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',
+ ],
+ ],
+ 'parseType' => 'struct',
+ ],
+ 'HttpApiParameter' => [
+ 'title' => 'HttpApiParameter',
+ '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',
+ ],
+ 'type' => [
+ 'title' => '',
+ 'description' => 'The parameter type.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* Integer'."\n"
+ .'* Number'."\n"
+ .'* String'."\n"
+ .'* Boolean'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'required' => true,
+ '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',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'aiFallbackConfig',
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'consumerRules',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'riskConfig',
+ ],
+ 'bufferLimit' => [
+ 'description' => 'Buffer limit for content checking',
+ 'visibility' => 'Public',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1000',
+ 'backendName' => 'bufferLimit',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'pluginStatus',
+ ],
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'consumerRequestCheckService',
+ ],
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'consumerResponseCheckService',
+ ],
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'consumerRiskLevel',
+ ],
+ ],
+ 'backendName' => 'aiSecurityGuardConfig',
+ ],
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'rules',
+ ],
+ 'enableGlobalRules' => [
+ 'description' => 'Enable global rate limit rules',
+ 'visibility' => 'Public',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ 'backendName' => 'enableGlobalRules',
+ ],
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'globalRules',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'redisConfig',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'pluginStatus',
+ ],
+ ],
+ 'backendName' => 'aiTokenRateLimitConfig',
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'redisConfig',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'vectorConfig',
+ ],
+ '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',
+ ],
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'pluginStatus',
+ ],
+ ],
+ 'backendName' => 'aiCacheConfig',
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'searchFrom',
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'searchEngineConfig',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'searchRewrite',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'pluginStatus',
+ ],
+ ],
+ 'backendName' => 'aiNetworkSearchConfig',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'enableConditions',
+ ],
+ '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',
+ ],
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'toolReranking',
+ ],
+ 'queryRewriting' => [
+ 'description' => 'Query rewriting configuration',
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'enabled' => [
+ 'description' => 'Enable query rewriting',
+ 'visibility' => 'Public',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ 'backendName' => 'enabled',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'modelService',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'promptConfig',
+ ],
+ 'maxOutputTokens' => [
+ 'description' => 'Max output tokens',
+ 'visibility' => 'Public',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ 'backendName' => 'maxOutputTokens',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'triggerConditions',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'contextSelection',
+ ],
+ 'fallbackStrategy' => [
+ 'description' => 'Fallback strategy',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'skip',
+ 'backendName' => 'fallbackStrategy',
+ ],
+ ],
+ 'backendName' => 'queryRewriting',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'pluginStatus',
+ ],
+ ],
+ 'backendName' => 'aiToolSelectionConfig',
+ ],
+ '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',
+ ],
+ ],
+ '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',
+ ],
+ ],
+ ],
+ 'HttpApiPublishRevisionInfo' => [
+ 'title' => '',
+ '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',
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ 'gatewayInfo' => [
+ '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',
+ ],
+ ],
+ 'backendName' => 'gatewayInfo',
+ ],
+ ],
+ 'example' => 'env-xxx',
+ 'backendName' => 'environmentInfo',
+ ],
+ 'subDomains' => [
+ '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',
+ ],
+ 'example' => 'env-xxx.com',
+ 'backendName' => 'subDomains',
+ ],
+ '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',
+ ],
+ 'backendScene' => [
+ 'title' => '',
+ 'description' => 'The publishing scenario.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* SingleService'."\n"
+ .'* MultiServiceByRatio'."\n"
+ .'* MultiServiceByContent'."\n"
+ .'* MultiServiceByTag'."\n"
+ .'* Mock'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'SingleService' => '',
+ 'MultiServiceByRatio' => '',
+ 'MultiServiceByContent' => '',
+ 'MultiServiceByTag' => '',
+ 'Mock' => 'Mock',
+ ],
+ 'example' => 'SingleService',
+ 'backendName' => 'backendScene',
+ ],
+ 'backendType' => [
+ 'title' => '',
+ 'description' => 'The type of the backend service.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* DNS: a DNS domain name'."\n"
+ .'* 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' => '',
+ ],
+ 'example' => 'Service',
+ 'backendName' => 'backendType',
+ ],
+ '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",
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ 'description' => '',
+ ],
+ 'backendName' => 'serviceConfigs',
+ ],
+ 'dnsConfigs' => [
+ 'title' => '',
+ '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' => '',
+ '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',
+ ],
+ ],
+ 'example' => 'dns',
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'dnsConfigs',
+ ],
+ 'vipConfigs' => [
+ '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' => '',
+ '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',
+ ],
+ ],
+ 'example' => 'fixedEndpoint',
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'vipConfigs',
+ ],
+ 'cloudProductConfig' => [
+ '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',
+ ],
+ 'functionConfigs' => [
+ 'title' => '',
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ 'description' => '',
+ ],
+ 'backendName' => 'functionConfigs',
+ ],
+ 'containerServiceConfigs' => [
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ 'description' => '',
+ ],
+ 'backendName' => 'containerServiceConfigs',
+ ],
+ 'mseNacosConfigs' => [
+ 'title' => '',
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ 'description' => '',
+ ],
+ 'backendName' => 'mseNacosConfigs',
+ ],
+ ],
+ 'backendName' => 'cloudProduct',
+ ],
+ 'operations' => [
+ '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',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'body',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'items' => [
+ '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',
+ ],
+ 'backendName' => 'items',
+ ],
+ ],
+ ],
+ 'HttpApiVersionConfig' => [
+ 'title' => 'A short description of struct',
+ 'description' => 'The versioning configurations.'."\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"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* Path'."\n"
+ .'* Query'."\n"
+ .'* Header'."\n",
+ 'visibility' => 'Public',
+ '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',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ ],
+ ],
+ 'HttpApiVersionSetContract' => [
+ 'title' => 'A short description of struct',
+ 'description' => '',
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'versioningScheme' => [
+ 'title' => '',
+ 'description' => '',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'required' => true,
+ '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',
+ ],
+ ],
+ ],
+ 'HttpRoute' => [
+ 'title' => 'HttpApi Route',
+ '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',
+ ],
+ 'deployStatus' => [
+ 'title' => '',
+ 'description' => 'The deployment status',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ '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',
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'gatewayInfo',
+ ],
+ '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',
+ ],
+ 'protocol' => [
+ 'title' => '',
+ 'description' => 'The subdomain protocol',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'HTTPS' => 'HTTPS',
+ 'HTTP' => 'HTTP',
+ ],
+ 'example' => 'HTTP',
+ 'backendName' => 'protocol',
+ ],
+ 'networkType' => [
+ 'title' => '',
+ 'description' => 'networkType',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'Intranet' => '',
+ 'Internet' => '',
+ ],
+ 'example' => 'Internet',
+ 'backendName' => 'networkType',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'subDomains',
+ ],
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ 'backendName' => 'mcpRouteConfig',
+ ],
+ ],
+ 'backendName' => 'mcpServerInfo',
+ ],
+ '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',
+ ],
+ 'protocol' => [
+ 'title' => '',
+ 'description' => 'The domain protocol',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'HTTPS' => 'HTTPS',
+ 'HTTP' => 'HTTP',
+ ],
+ 'example' => 'HTTP',
+ 'backendName' => 'protocol',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'domainInfos',
+ ],
+ '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',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'path' => [
+ 'title' => '',
+ 'description' => 'The path rule.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'type' => [
+ 'title' => '',
+ 'description' => 'The path matching type. Valid values:'."\n"
+ ."\n"
+ .'* Exact: exact match'."\n"
+ .'* Prefix: prefix match'."\n"
+ .'* Regex: regular expression'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'Regex' => '',
+ 'Exact' => '',
+ 'Prefix' => '',
+ ],
+ 'example' => 'Prefix',
+ 'backendName' => 'type',
+ ],
+ 'value' => [
+ 'title' => '',
+ 'description' => 'The path.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => '/user',
+ 'backendName' => 'value',
+ ],
+ ],
+ 'backendName' => 'path',
+ ],
+ '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' => [
+ 'title' => '',
+ 'description' => 'The match type. Valid values:'."\n"
+ ."\n"
+ .'* Exact: exact match'."\n"
+ .'* Prefix: prefix match'."\n"
+ .'* Regex: regular expression'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'headers',
+ 'itemName' => 'header',
+ ],
+ 'methods' => [
+ 'title' => '',
+ 'description' => 'The HTTP methods.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The HTTP method. Valid values:'."\n"
+ ."\n"
+ .'* GET'."\n"
+ .'* HEAD'."\n"
+ .'* POST'."\n"
+ .'* PUT'."\n"
+ .'* DELETE'."\n"
+ .'* CONNECT'."\n"
+ .'* 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',
+ ],
+ 'example' => 'GET',
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'methods',
+ 'itemName' => 'method',
+ ],
+ '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' => [
+ 'title' => '',
+ 'description' => 'The match type. Valid values:'."\n"
+ ."\n"
+ .'* Exact: exact match'."\n"
+ .'* Prefix: prefix match'."\n"
+ .'* Regex: regular expression'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'queryParams',
+ 'itemName' => 'queryParam',
+ ],
+ ],
+ ],
+ 'JwtIdentityConfig' => [
+ 'title' => 'A short description of struct',
+ 'description' => 'The JWT authentication configuration.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'type' => [
+ 'title' => 'type',
+ 'description' => 'The authentication configuration type.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'Jwt',
+ 'backendName' => 'type',
+ ],
+ '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',
+ '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',
+ ],
+ 'jwtTokenConfig' => [
+ 'title' => 'jwtTokenConfig',
+ 'description' => 'The JWT token configuration.'."\n",
+ 'visibility' => 'Public',
+ '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',
+ ],
+ ],
+ 'required' => false,
+ 'backendName' => 'jwtTokenConfig',
+ ],
+ 'jwtPayloadConfig' => [
+ 'title' => 'jwtPayloadConfig',
+ 'description' => 'The JWT payload configuration.'."\n",
+ 'visibility' => 'Public',
+ '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',
+ ],
+ ],
+ 'backendName' => 'jwtPayloadConfig',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'values' => [
+ 'title' => '',
+ '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',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ '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',
+ 'example' => '',
+ 'backendName' => 'type',
+ ],
+ 'executeStage' => [
+ 'title' => 'executeStage',
+ 'description' => 'The execution phase.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* PluginStatistic'."\n"
+ .'* PluginAuthorization'."\n"
+ .'* PluginPre'."\n"
+ .'* PluginAuthentication'."\n"
+ .'* PluginDefault'."\n"
+ .'* PluginPost'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ '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',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ ],
+ ],
+ 'ResourceStatistic' => [
+ 'title' => 'A short description of struct',
+ 'description' => 'The resource statistics.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'properties' => [
+ 'resourceType' => [
+ 'title' => 'resourceType',
+ 'description' => 'The resource type.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* HttpApi'."\n"
+ .'* GatewayRoute'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ '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',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'metadata' => [
+ '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',
+ ],
+ ],
+ 'backendName' => 'metadata',
+ ],
+ 'status' => [
+ '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',
+ ],
+ 'riskLevel' => [
+ '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',
+ ],
+ 'riskDetails' => [
+ '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',
+ ],
+ 'riskLevel' => [
+ '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',
+ ],
+ 'data' => [
+ 'title' => '',
+ 'description' => 'The risk detailed data',
+ 'visibility' => 'Public',
+ 'type' => 'object',
+ 'additionalProperties' => [
+ 'description' => 'string',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => '["",""]',
+ ],
+ 'backendName' => 'data',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'riskDetails',
+ ],
+ ],
+ ],
+ 'Service' => [
+ 'title' => 'apig service',
+ 'description' => 'The service object.'."\n",
+ 'visibility' => 'Public',
+ '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' => [
+ 'title' => '',
+ 'description' => 'The namespace of the service.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => 'PUBLIC',
+ 'backendName' => 'namespace',
+ ],
+ 'addresses' => [
+ 'title' => '',
+ 'description' => 'The address details, which can be IP addresses or domain names.'."\n",
+ 'visibility' => 'Public',
+ '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',
+ ],
+ 'ports' => [
+ 'title' => '',
+ 'description' => 'The list of objects containing port details.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'An object containing details about a port.'."\n",
+ 'visibility' => 'Public',
+ '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',
+ ],
+ 'protocol' => [
+ 'title' => '',
+ 'description' => 'The protocol. Valid values: TCP and UDP.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'TCP' => 'TCP',
+ 'UDP' => 'UDP',
+ ],
+ 'example' => 'TCP',
+ 'backendName' => 'protocol',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'ports',
+ ],
+ 'unhealthyEndpoints' => [
+ 'title' => '',
+ 'description' => 'The list of unhealthy endpoints.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'An unhealthy endpoint.'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => '192.168.1.12:8080',
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'unhealthyEndpoints',
+ ],
+ 'outlierEndpoints' => [
+ 'title' => '熔断的endpoints',
+ 'description' => 'The outlier endpoints list',
+ 'visibility' => 'Public',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'string',
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'example' => '["10.0.0.2:8080"]',
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'outlierEndpoints',
+ ],
+ 'healthCheck' => [
+ 'title' => '',
+ 'description' => 'The health check configurations.'."\n",
+ 'visibility' => 'Public',
+ 'backendName' => 'healthCheck',
+ '$ref' => '#/components/schemas/ServiceHealthCheck',
+ ],
+ 'healthStatus' => [
+ 'title' => '',
+ 'description' => 'The health check status.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* Unhealthy'."\n"
+ .'* Healthy'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'Unhealthy' => '',
+ 'Healthy' => '',
+ ],
+ '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',
+ ],
+ 'groupName' => [
+ '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',
+ ],
+ 'labelDetails' => [
+ 'title' => '服务的标签信息',
+ 'description' => 'The label details for service version configuration',
+ 'visibility' => 'Public',
+ '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',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'protocol' => [
+ 'title' => 'protocol',
+ 'description' => 'The protocol.'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* HTTPS'."\n"
+ .'* HTTP'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'HTTPS' => 'HTTPS',
+ 'HTTP' => 'HTTP',
+ ],
+ 'example' => 'HTTP',
+ 'backendName' => 'protocol',
+ ],
+ 'networkType' => [
+ 'title' => 'networkType',
+ 'description' => 'The network type. Valid values:'."\n"
+ ."\n"
+ .'Valid values:'."\n"
+ ."\n"
+ .'* Intranet'."\n"
+ .'* Internet'."\n",
+ 'visibility' => 'Public',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'Intranet' => 'Intranet',
+ 'Internet' => 'Internet',
+ ],
+ 'example' => 'Intranet',
+ 'backendName' => 'networkType',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ 'extendType' => 'true',
+ ],
+ 'backendName' => 'tlsCipherSuite',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ ],
+ ],
+ '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=',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => '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',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '220978',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigateway9WMX21',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'The request body.'."\n",
+ '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",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'api-xxxx',
+ ],
+ 'resourceGroupId' => [
+ 'description' => 'The [resource group ID](~~151181~~).'."\n",
+ '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,
+ ],
+ 'deployConfigs' => [
+ 'description' => 'The API deployment configuration.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'HttpApiDeployConfig',
+ 'required' => false,
+ '$ref' => '#/components/schemas/HttpApiDeployConfig',
+ ],
+ 'required' => false,
+ ],
+ 'mcpRouteId' => [
+ 'description' => 'The MCP route ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'xxx',
+ ],
+ 'gatewayId' => [
+ 'description' => 'Gateway ID.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-xxx',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'The response payload.'."\n",
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'The API information.'."\n",
+ '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",
+ '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",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The data struct information.'."\n",
+ '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",
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ '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' => 'HTTP API ID。',
+ 'description' => 'HTTP API ID.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'api-cr68g1dlhtgm31fb***',
+ ],
+ ],
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'title' => '请求Body。',
+ 'description' => 'The request body.'."\n",
+ '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,
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of 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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '218843',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigateway910B7T',
+ ],
+ ],
+ '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',
+ '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',
+ 'required' => false,
+ 'example' => '30',
+ ],
+ 'belongGatewayId' => [
+ 'type' => 'string',
+ ],
+ 'dryRun' => [
+ 'type' => 'boolean',
+ 'deprecated' => true,
+ ],
+ 'strategy' => [
+ 'type' => 'string',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'A protocol.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'httpApiId' => [
+ 'description' => 'HTTP API ID。',
+ 'type' => 'string',
+ 'example' => 'api-xxx',
+ ],
+ 'name' => [
+ 'description' => 'The API base path, which must start with a forward slash (/).'."\n",
+ 'type' => 'string',
+ 'example' => 'test-api',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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"}]',
+ 'title' => 'CreateHttpApi',
+ 'translator' => 'machine',
+ ],
+ 'UpdateHttpApi' => [
+ 'summary' => 'Updates an HTTP API.',
+ 'path' => '/v1/http-apis/{httpApiId}',
+ 'methods' => [
+ 'put',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '218997',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigateway910B7T',
+ ],
+ ],
+ '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',
+ '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",
+ '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',
+ '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',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '218957',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigateway910B7T',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'httpApiId',
+ 'in' => 'path',
+ 'schema' => [
+ 'title' => 'API ID。',
+ 'description' => 'Target HTTP API ID.',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'api-xxx',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'The returned result.'."\n",
+ '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',
+ ],
+ 'data' => [
+ 'title' => 'API信息。',
+ 'description' => 'The API information.'."\n",
+ '$ref' => '#/components/schemas/HttpApiApiInfo',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '219000',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigateway910B7T',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ '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' => 'withAuthPolicyList',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The page number of the returned page.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'withIngressInfo',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'withPolicyConfigs',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The total number of entries returned.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'withAPIsPublishedToEnvironment',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Whether to return all APIs published to a specific environment',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'gatewayType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The API information.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 'AI' => 'AI',
+ 'API' => 'API',
+ ],
+ 'example' => 'API',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'The API information grouped by API name.'."\n",
+ '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',
+ ],
+ 'data' => [
+ 'title' => 'API列表。',
+ 'description' => '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',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '按照API名进行分组的API信息。',
+ 'description' => 'HttpApiInfoByName',
+ '$ref' => '#/components/schemas/HttpApiInfoByName',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ '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***',
+ ],
+ ],
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'The request body.'."\n",
+ '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",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'env-cqsmtellhtgvo***',
+ ],
+ 'operationId' => [
+ 'description' => 'The operation ID.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'op-d4favr6m1hk***',
+ ],
+ 'gatewayId' => [
+ 'description' => 'Gateway ID.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-cq7l5s5lhtg***',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '218999',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigateway910B7T',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'httpApiId',
+ 'in' => 'path',
+ 'schema' => [
+ 'title' => 'API ID。',
+ 'description' => 'The HTTP API ID.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'api-xxx',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'The response body.'."\n",
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '219801',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigateway910B7T',
+ ],
+ ],
+ '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",
+ 'type' => 'object',
+ 'properties' => [
+ 'operations' => [
+ 'title' => '接口定义。',
+ 'description' => 'The operation definitions.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The operation definition.'."\n",
+ 'required' => false,
+ '$ref' => '#/components/schemas/HttpApiOperation',
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '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',
+ ],
+ 'data' => [
+ 'title' => '接口信息。',
+ 'description' => 'Operation information.',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '219803',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigateway910B7T',
+ ],
+ ],
+ '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',
+ ],
+ ],
+ [
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ '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",
+ 'type' => 'object',
+ 'properties' => [
+ 'operation' => [
+ 'title' => '接口定义。',
+ 'description' => 'The operation definition.'."\n",
+ 'required' => false,
+ '$ref' => '#/components/schemas/HttpApiOperation',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ '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' => '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '219808',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigateway910B7T',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'httpApiId',
+ 'in' => 'path',
+ 'schema' => [
+ 'title' => 'API ID。',
+ 'description' => 'Target HTTP API ID.',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'api-xxx',
+ ],
+ ],
+ [
+ 'name' => 'method',
+ 'in' => 'query',
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ ],
+ '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' => '585657D2-1C20-5B8A-AF17-D727C6490BE4',
+ ],
+ 'code' => [
+ 'title' => '响应状态码。',
+ 'description' => 'Response status code.',
+ 'type' => 'string',
+ 'example' => 'Ok',
+ ],
+ 'message' => [
+ 'title' => '响应消息,',
+ 'description' => 'Response message.',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'data' => [
+ 'title' => '接口列表。',
+ 'description' => 'The operations.'."\n",
+ '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",
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '接口信息。',
+ 'description' => 'The operation information.'."\n",
+ '$ref' => '#/components/schemas/HttpApiOperationInfo',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'CreateMcpServer' => [
+ 'summary' => 'Creates an MCP server.',
+ 'path' => '/v1/mcp-servers',
+ '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' => 'object',
+ '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',
+ ],
+ ],
+ 'domainIds' => [
+ 'description' => 'List of domain IDs for the MCP server',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'string',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'd-cr62ts5lhtglnu***',
+ ],
+ 'required' => false,
+ ],
+ 'match' => [
+ 'description' => 'Route matching conditions',
+ 'required' => false,
+ '$ref' => '#/components/schemas/HttpRouteMatch',
+ ],
+ 'backendConfig' => [
+ 'description' => 'Backend configuration',
+ 'type' => 'object',
+ 'properties' => [
+ 'scene' => [
+ 'description' => 'Backend scene type',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SingleService',
+ ],
+ 'services' => [
+ 'description' => 'List of backend services',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'object',
+ 'type' => 'object',
+ 'properties' => [
+ 'protocol' => [
+ 'description' => 'Service protocol',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'HTTP',
+ ],
+ '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',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ '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',
+ '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,
+ ],
+ 'required' => false,
+ ],
+ 'mcpServerConfig' => [
+ 'description' => 'MCP server specification',
+ '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',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ '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' => '464F9EA0-1052-51BD-8187-D292AA2D8D24',
+ ],
+ 'code' => [
+ 'description' => 'code',
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'message' => [
+ 'description' => 'message',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'data' => [
+ 'description' => 'object',
+ 'type' => 'object',
+ 'properties' => [
+ 'mcpServerId' => [
+ 'description' => 'MCP Server ID',
+ 'type' => 'string',
+ 'example' => 'mcp-afegaijoijaoji24a',
+ ],
+ 'name' => [
+ 'description' => 'MCP server name',
+ 'type' => 'string',
+ 'example' => 'test-mcp',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => 'CreateMcpServer',
+ ],
+ 'UpdateMcpServer' => [
+ 'summary' => 'Updates an MCP server.',
+ 'path' => '/v1/mcp-servers/{mcpServerId}',
+ 'methods' => [
+ 'put',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '281124',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayMD7H1W',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'The request body.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'description' => [
+ 'description' => 'The description.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Updated MCP server description',
+ ],
+ 'domainIds' => [
+ 'description' => 'The domain IDs.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The domain ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'd-cr62ts5lhtgln***',
+ ],
+ '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.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SingleService',
+ ],
+ 'services' => [
+ 'description' => 'The backend services.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The backend service.'."\n",
+ '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',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ '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',
+ ],
+ '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',
+ 'required' => false,
+ 'example' => 'test-mcp',
+ ],
+ 'mcpServerId' => [
+ 'description' => 'The MCP server ID.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'mcp-afaefaefaf',
+ ],
+ 'tools' => [
+ 'description' => 'The MCP tools.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The MCP tool.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tool-1',
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ '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',
+ ],
+ ],
+ 'createFromType' => [
+ 'description' => 'Specifies the type of source for MCP server creation.',
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 'ApiGatewayHttpToMCP' => 'ApiGatewayHttpToMCP',
+ 'ApiGatewayMcpHosting' => 'ApiGatewayMcpHosting',
+ 'ApiGatewayProxyMcpHosting' => 'ApiGatewayProxyMcpHosting',
+ 'ApiGatewayAssembly' => 'ApiGatewayAssembly',
+ 'NacosHttpToMCP' => 'NacosHttpToMCP',
+ 'NacosMcpHosting' => 'NacosMcpHosting',
+ ],
+ 'example' => 'ApiGatewayMcpHosting',
+ ],
+ 'grayMcpServerConfigs' => [
+ 'description' => 'The gray MCP server configurations',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'object',
+ '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',
+ ],
+ 'backendConfig' => [
+ 'description' => 'The backend configuration',
+ 'type' => 'object',
+ 'properties' => [
+ 'scene' => [
+ 'description' => 'The backend scene',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SingleService',
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ 'mcpServerConfig' => [
+ 'description' => 'The MCP server 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',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'mcpServerId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The MCP server ID.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'mcp-adfefz24afg',
+ ],
+ ],
+ ],
+ '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.',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '281126',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayMD7H1W',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'mcpServerId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The MCP server ID.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'mcp-adfefz24afg',
+ ],
+ ],
+ ],
+ '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.',
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'The response payload.'."\n",
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '281128',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayMD7H1W',
+ ],
+ ],
+ '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',
+ 'schema' => [
+ 'description' => 'The deployment status of the MCP server.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Deployed',
+ ],
+ ],
+ ],
+ '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.',
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'The response payload.'."\n",
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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\\": 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',
+ ],
+ 'security' => [
+ [
+ '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' => 'Deletes an MCP server.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'mcp-adfefz24afg',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'The MCP server ID.',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '281132',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayMD7H1W',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'mcpServerId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The MCP server ID.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'mcp-adfefz24afg',
+ ],
+ ],
+ ],
+ '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.',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '281133',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayMD7H1W',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'mcpServerId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The ID of the MCP server.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'mcp-adfef2334fa',
+ ],
+ ],
+ ],
+ '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.',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ '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 request body.'."\n",
+ '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",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'default',
+ ],
+ 'nacosMcpServers' => [
+ 'description' => 'The synchronized Nacos MCP server list. If the synchronized MCP server is included, add the mcpServerId parameter.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ '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',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ 'protocols' => [
+ 'description' => 'The protocol.'."\n",
+ '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',
+ ],
+ 'required' => false,
+ ],
+ 'mcpServerId' => [
+ 'description' => 'The MCP server ID.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'mcp-d3s8qo6m1hknegofa3bg',
+ ],
+ ],
+ 'required' => false,
+ 'description' => '',
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'The response schema.',
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'The response data.'."\n",
+ '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",
+ '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' => '',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '237765',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigateway910B7T',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'httpApiId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The HTTP API ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'api-cqoob7llhtgq***',
+ ],
+ ],
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'The request body.'."\n",
+ '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",
+ '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,
+ ],
+ ],
+ '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',
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ '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.'."\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***',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '237777',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigateway910B7T',
+ ],
+ ],
+ '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",
+ '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",
+ '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"
+ .'* 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",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The backend service.'."\n",
+ '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',
+ 'required' => false,
+ 'example' => '8080',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ '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' => [
+ '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,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ '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.'."\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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '237782',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigateway910B7T',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'httpApiId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The HTTP API ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'api-cqu95allhtgii6***',
+ ],
+ ],
+ [
+ 'name' => 'routeId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The route ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'hr-cr82undlhtgrl***',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'The response body.'."\n",
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '237784',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigateway910B7T',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'httpApiId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The HTTP API ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'api-cqoub6tlhtgv***',
+ ],
+ ],
+ [
+ 'name' => 'routeId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The route ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'hr-cr82undlhtgr***',
+ ],
+ ],
+ ],
+ '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.'."\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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'abilityTreeCode' => '237771',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigateway910B7T',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'httpApiId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The HTTP API ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'api-cr68g1dlhtgm31f***',
+ ],
+ ],
+ [
+ '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',
+ ],
+ ],
+ [
+ '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',
+ ],
+ ],
+ [
+ 'name' => 'environmentId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The environment ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'env-cpqnr6tlhtgubc***',
+ ],
+ ],
+ [
+ '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' => '',
+ ],
+ 'example' => 'NotDeployed',
+ ],
+ ],
+ [
+ 'name' => 'name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The route name.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'itemcenter-gateway',
+ ],
+ ],
+ [
+ 'name' => 'nameLike',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The route name keyword for a fuzzy search.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'item',
+ ],
+ ],
+ [
+ 'name' => 'pathLike',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The route path keyword for a fuzzy search.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/v1',
+ ],
+ ],
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the Cloud-native API Gateway instance.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-cpv4sqdl****',
+ ],
+ ],
+ [
+ 'name' => 'withConsumerInfoById',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The authentication rules of the specified consumer in each route returned.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cs-xxx',
+ ],
+ ],
+ [
+ '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',
+ ],
+ ],
+ [
+ 'name' => 'withAuthPolicyInfo',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The consumer authorization information in the response.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ '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' => 'domainId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies to filter routes by domain ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'd-xxx',
+ ],
+ ],
+ [
+ 'name' => 'forDeploy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Whether to filter for deployment scenario',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ '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.'."\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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '237762',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayNPQVBL',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'serviceId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The service ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'svc-cr6pk4tlhtgm58e***',
+ ],
+ ],
+ ],
+ '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' => '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '237749',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayVWMWWM',
+ ],
+ ],
+ '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' => 'clientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'clientToken',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'xxx',
+ ],
+ ],
+ ],
+ '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.'."\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***',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '237750',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayNPQVBL',
+ ],
+ ],
+ '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' => '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',
+ ],
+ ],
+ [
+ 'name' => 'name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The service name.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'user-service',
+ ],
+ ],
+ [
+ 'name' => 'sourceType',
+ 'in' => 'query',
+ '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',
+ ],
+ 'example' => 'MSE_NACOS',
+ ],
+ ],
+ [
+ 'name' => 'sourceTypes',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'List of service source types',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["K8S", "FC3"]',
+ ],
+ ],
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the Cloud-native API Gateway instance.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-cpv4sqdl*****',
+ ],
+ ],
+ [
+ 'name' => 'resourceGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The resource group ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rg-acfmxxe5rc6cvla',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'The response body.'."\n",
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'serviceId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'svc-cr6pk4tlhtgm58e***',
+ ],
+ ],
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'The request body.'."\n",
+ '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,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '237763',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayNPQVBL',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'serviceId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The service ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'svc-cr6pk4tlhtgm***',
+ ],
+ ],
+ ],
+ '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.'."\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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '238203',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayNPQVBL',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'serviceId',
+ '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,
+ ],
+ ],
+ ],
+ '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' => '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '238219',
+ '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,
+ ],
+ ],
+ ],
+ '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' => '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"A60EE5CA-1294-532A-9775-8D2FD1C6EFBF\\",\\n \\"message\\": \\"success\\",\\n \\"code\\": \\"Ok\\"\\n}","type":"json"}]',
+ 'title' => 'UpdateServiceVersion',
+ ],
+ 'DeleteServiceVersion' => [
+ 'summary' => 'Deletes a service version.',
+ 'path' => '/v1/services/{serviceId}/versions/{name}',
+ 'methods' => [
+ 'delete',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '238221',
+ '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',
+ ],
+ ],
+ ],
+ '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' => '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '237746',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayNPQVBL',
+ ],
+ ],
+ '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-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",
+ 'type' => 'object',
+ 'properties' => [
+ 'clusterId' => [
+ 'description' => 'The ID of the ACK cluster.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'c3fbe6caaaece4062b*****',
+ ],
+ 'authorizeSecurityGroupRules' => [
+ 'description' => 'The security group rules.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The security group rule configurations.'."\n",
+ '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",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'nacosSourceConfig' => [
+ 'description' => 'The source configuration when the source type is MSE_NACOS.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'instanceId' => [
+ 'description' => 'The Nacos instance ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'mse-cn-0dw3w***',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'resourceGroupId' => [
+ 'description' => 'The resource group ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rg-xxx',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ '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',
+ ],
+ 'data' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'sourceId' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => 'src-crdddallhtgt***',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '247800',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayNPQVBL',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'sourceId',
+ 'in' => 'path',
+ 'schema' => [
+ 'title' => '资源一级ID',
+ 'description' => 'The request ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'src-d1596kem1hkv3o72qkdg',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response'."\n",
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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 \\"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',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '237748',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayVWMWWM',
+ 'FEATUREapigatewayAGWW5S',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'sourceId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'src-crdddallhtgtriah***',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Response schema'."\n",
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'paid',
+ 'abilityTreeCode' => '220852',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayUWNKMC',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'The zone ID.'."\n",
+ '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',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'zoneConfig' => [
+ 'description' => 'The status message.'."\n",
+ '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,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'logConfig' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'sls' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'enable' => [
+ 'description' => '',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ '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',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ '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' => '9CDE3E69-69C2-5402-83AD-ACA80B1AF35B',
+ ],
+ 'code' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => 'Ok',
+ ],
+ 'message' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'data' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'gatewayId' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => 'gw-cq2vundlhtg***',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => 'CreateGateway',
+ ],
+ 'UpdateGatewayName' => [
+ 'summary' => 'Changes the name of a Cloud-native API Gateway instance.',
+ 'path' => '/v1/gateways/{gatewayId}/name',
+ 'methods' => [
+ 'put',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayUWNKMC',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'Modify Gateway Name',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-cpv4sqdl****',
+ ],
+ ],
+ [
+ 'name' => 'name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'dev-itemcenter-router',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '220139',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayUWNKMC',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The instance ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-cq2avtllh****',
+ ],
+ ],
+ [
+ 'name' => 'name',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The feature parameter name.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'enable-gzip',
+ ],
+ ],
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'The request body.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'value' => [
+ 'description' => 'The parameter value.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '"true"',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ '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',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The instance ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-cq2avtllh****',
+ ],
+ ],
+ [
+ 'name' => 'version',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The destination instance version.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2.0.2',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ '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',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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.',
+ 'path' => '/v1/gateways/{gatewayId}',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '219658',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayUWNKMC',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The environment information.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-cpv4sqdl*****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'The environment ID.'."\n",
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'The security group of the instance.'."\n",
+ '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',
+ ],
+ 'chargeType' => [
+ 'description' => 'The vSwitch associated with the instance.'."\n",
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'POSTPAY' => 'The vSwitch name.'."\n",
+ 'PREPAY' => 'HangzhouVPCvSwitch'."\n",
+ ],
+ 'example' => 'POSTPAY',
+ ],
+ 'gatewayType' => [
+ 'description' => 'The vSwitch ID.'."\n",
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'AI' => 'AI',
+ 'API' => 'API',
+ ],
+ 'example' => 'API',
+ ],
+ 'status' => [
+ 'description' => 'The VPC associated with the instance.'."\n",
+ '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',
+ ],
+ 'spec' => [
+ 'description' => 'The zone name.'."\n",
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'apigw.small.x1' => 'apigw.small.x1',
+ ],
+ 'example' => 'apigw.small.x1',
+ ],
+ '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',
+ ],
+ '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",
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'Console' => 'The load balancer ID.'."\n",
+ ],
+ 'example' => 'Console',
+ ],
+ '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',
+ ],
+ 'environments' => [
+ 'description' => 'The IP version of the address. Valid values:'."\n"
+ ."\n"
+ .'* ipv4'."\n"
+ .'* ipv6'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'Indicates whether the address is the default ingress address of the instance.'."\n",
+ '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",
+ ],
+ ],
+ ],
+ ],
+ 'securityGroup' => [
+ 'description' => 'The port number.'."\n",
+ '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***',
+ ],
+ ],
+ ],
+ 'vSwitch' => [
+ 'description' => 'rg-aek2s3cvc4jzfxi',
+ '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***',
+ ],
+ ],
+ ],
+ 'vpc' => [
+ 'description' => 'The tag key.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'name' => [
+ 'description' => '=',
+ 'type' => 'string',
+ 'example' => '$.errorCode',
+ ],
+ 'vpcId' => [
+ 'description' => 'Query Gateway Details',
+ 'type' => 'string',
+ 'example' => 'vpc-bp1llj52lvj6xc***',
+ ],
+ ],
+ ],
+ 'zones' => [
+ 'description' => 'List of zone information',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'object',
+ 'type' => 'object',
+ 'properties' => [
+ 'vSwitch' => [
+ 'description' => 'The VSwitch information in the zone',
+ 'type' => 'object',
+ 'properties' => [
+ 'vSwitchId' => [
+ 'description' => 'The VSwitch ID',
+ 'type' => 'string',
+ 'example' => 'vsw-bp1c7ggkj***',
+ ],
+ 'name' => [
+ 'description' => 'The VSwitch name',
+ 'type' => 'string',
+ 'example' => 'vswitch-name',
+ ],
+ ],
+ ],
+ 'name' => [
+ 'description' => 'The zone name',
+ 'type' => 'string',
+ 'example' => 'Hangzhou Zone I',
+ ],
+ 'zoneId' => [
+ 'description' => 'The zone ID',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-e',
+ ],
+ ],
+ ],
+ ],
+ 'loadBalancers' => [
+ 'description' => 'loadBalancers',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'object',
+ 'type' => 'object',
+ 'properties' => [
+ 'mode' => [
+ 'description' => 'The mode of the load balancer',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'Managed' => 'Managed',
+ ],
+ 'example' => 'Managed',
+ ],
+ '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',
+ ],
+ 'addressType' => [
+ 'description' => 'The address type of the load balancer',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'Intranet' => '',
+ 'Internet' => '',
+ ],
+ 'example' => 'Internet',
+ ],
+ 'addressIpVersion' => [
+ 'description' => 'The IP version of the load balancer address',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'ipv4' => 'ipv4',
+ 'ipv6' => 'ipv6',
+ ],
+ 'example' => 'ipv4',
+ ],
+ 'gatewayDefault' => [
+ 'description' => 'Whether this is the default gateway ingress',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'type' => [
+ 'description' => 'The type of load balancer',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'NLB' => '',
+ 'CLB' => '',
+ ],
+ 'example' => 'NLB',
+ ],
+ 'ports' => [
+ 'description' => 'List of port configurations for the load balancer',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'object',
+ 'type' => 'object',
+ 'properties' => [
+ 'protocol' => [
+ 'description' => 'The protocol of the port',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'TCP' => 'TCP',
+ 'UDP' => 'UDP',
+ ],
+ 'example' => 'TCP',
+ ],
+ 'port' => [
+ 'description' => 'The listening port number',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '443',
+ ],
+ ],
+ ],
+ ],
+ 'status' => [
+ 'description' => 'The current status of the load balancer',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'Ready' => 'Ready',
+ ],
+ 'example' => 'Ready',
+ ],
+ 'ipv4Addresses' => [
+ 'description' => 'List of IPv4 addresses',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'string',
+ 'type' => 'string',
+ 'example' => '["172.16.0.10", "172.16.0.11"] ',
+ ],
+ ],
+ 'ipv6Addresses' => [
+ 'description' => 'List of IPv6 addresses',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'string',
+ 'type' => 'string',
+ 'example' => '["2001:db8::1", "2001:db8::2"]',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'resourceGroupId' => [
+ 'description' => 'The resource group ID',
+ 'type' => 'string',
+ 'example' => 'rg-acfm2ij6pwxsvua',
+ ],
+ 'tags' => [
+ 'description' => 'List of tags associated with the gateway',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'object',
+ 'type' => 'object',
+ 'properties' => [
+ 'value' => [
+ 'description' => 'The tag value',
+ 'type' => 'string',
+ 'example' => 'zhangsan',
+ ],
+ 'key' => [
+ 'description' => 'The tag key',
+ 'type' => 'string',
+ 'example' => 'owner',
+ ],
+ ],
+ ],
+ ],
+ 'isp' => [
+ 'description' => 'The ISP type for traffic routing',
+ 'type' => 'string',
+ 'example' => 'BGP',
+ ],
+ 'gatewayEdition' => [
+ 'title' => '网关实例版本:'."\n"
+ ."\n"
+ .'- 普通实例:Professional'."\n"
+ ."\n"
+ .'- Serverless:Serverless',
+ 'description' => 'gatewayEdition',
+ 'type' => 'string',
+ 'example' => 'Serverless',
+ ],
+ 'maintenancePeriod' => [
+ 'title' => '运维窗口',
+ 'description' => 'The maintenance period configuration',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/x-www-form-urlencoded',
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '218454',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayUWNKMC',
+ ],
+ ],
+ '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',
+ ],
+ ],
+ [
+ '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' => 'gatewayType',
+ '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',
+ ],
+ ],
+ [
+ 'name' => 'resourceGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'rg-aekz3wes3hnre5a',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rg-aekzq6bzz5uyg2q',
+ ],
+ ],
+ [
+ 'name' => 'tag',
+ '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,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'The returned message.'."\n",
+ '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",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The list of gateways.'."\n",
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '222348',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayPVG2GF',
+ ],
+ '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***',
+ ],
+ ],
+ [
+ '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,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'The response.'."\n",
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The ID of the Cloud-native API Gateway instance.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-cpv4sqdl*****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'The response data.'."\n",
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The ID of the Cloud-native API Gateway instance.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-cpv4sqdl*****',
+ ],
+ ],
+ [
+ 'name' => 'securityGroupRuleId',
+ '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',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'The response data.'."\n",
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => [],
+ ],
+ ],
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'RestartGateway' => [
+ 'summary' => 'Restarts an instance.',
+ 'path' => '/v1/gateways/{gatewayId}/restart',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The instance ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-cq2avtllh****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ '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',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The instance ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-cpv4sqdl****',
+ ],
+ ],
+ ],
+ '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.'."\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',
+ ],
+ 'data' => [
+ 'description' => 'The returned data.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'items' => [
+ 'description' => 'The list of parameter configurations.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The parameter configurations.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'definition' => [
+ 'description' => 'The parameter definition.'."\n",
+ '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",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The option information.'."\n",
+ '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',
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ ],
+ ],
+ 'value' => [
+ 'description' => 'The parameter value.'."\n",
+ 'type' => 'string',
+ 'example' => '"true"',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '260504',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'consumerAuthorizationRuleId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The authorization rule ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'car-ctgdn8em1hko5krqq03g',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response'."\n",
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '260503',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'apiNameLike',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The API name.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'api-xx',
+ ],
+ ],
+ [
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of the page to return.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'consumerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The consumer ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cs-ct21c16m1hkp64hk6qmg',
+ ],
+ ],
+ [
+ 'name' => 'resourceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The resource ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ha-cn-li942gy8p03',
+ ],
+ ],
+ [
+ 'name' => 'resourceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The resource type.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'HttpApiRoute',
+ ],
+ ],
+ [
+ 'name' => 'environmentId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The environment ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'env-cpqnr6tlhtgubc***',
+ ],
+ ],
+ [
+ 'name' => 'groupByApi',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to group the results by API.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'parentResourceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The parent resource ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ha-cn-li942gy8p01',
+ ],
+ ],
+ [
+ 'name' => 'consumerNameLike',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The consumer name.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'consumer-xxx',
+ ],
+ ],
+ [
+ 'name' => 'resourceTypes',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The resource types.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'K8S',
+ ],
+ ],
+ ],
+ '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.'."\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',
+ ],
+ 'data' => [
+ 'description' => 'The response payload.'."\n",
+ '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',
+ ],
+ 'pageSize' => [
+ 'description' => 'The number of entries per page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'items' => [
+ 'description' => 'The rules.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The rule information.'."\n",
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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 \\"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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '259035',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ '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,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response'."\n",
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'The response parameters.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'consumerAuthorizationRuleIds' => [
+ 'description' => 'The authentication rule IDs.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The authentication rule ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'car-cus2d1em1hkg7732kuk0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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"}]',
+ 'title' => 'CreateConsumerAuthorizationRules',
+ ],
+ 'BatchDeleteConsumerAuthorizationRule' => [
+ 'summary' => 'Removes consumer authentication rules.',
+ 'path' => '/v1/authorization-rules',
+ 'methods' => [
+ 'delete',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '259028',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'consumerAuthorizationRuleIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The rule IDs.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'car-cus2d1em1hkg7732kuk0',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response'."\n",
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '248086',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'consumerId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The consumer ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cs-cv8em6um1hku2shkv19g',
+ ],
+ ],
+ ],
+ '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.',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '248113',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ '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',
+ ],
+ ],
+ ],
+ '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.',
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'The response payload.'."\n",
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '248109',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ ],
+ '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' => 'cas-xxx',
+ ],
+ ],
+ [
+ 'name' => 'consumerId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The consumer ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cs-cukm3imm1hkh1e2m4rqg',
+ ],
+ ],
+ ],
+ '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.',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '248083',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'The request body.'."\n",
+ '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",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'consumer for test',
+ ],
+ 'jwtIdentityConfig' => [
+ 'description' => 'The configuration of the JWT identity.'."\n",
+ 'required' => false,
+ '$ref' => '#/components/schemas/JwtIdentityConfig',
+ ],
+ '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',
+ ],
+ 'required' => false,
+ ],
+ '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',
+ 'required' => false,
+ 'example' => 'API',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ '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.',
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'The response payload.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'consumerId' => [
+ 'description' => 'The consumer ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'cs-cvnjramm1hks1r3fmmug',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '248085',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ ],
+ '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",
+ '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",
+ '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',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ '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.',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ '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 consumer ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cs-ctb92p6m1hkqu85iph8g',
+ ],
+ ],
+ ],
+ '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.',
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'The response payload.'."\n",
+ '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",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'AkSkIdentityConfig',
+ '$ref' => '#/components/schemas/AkSkIdentityConfig',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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\\": \\"\\",\\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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '248099',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'consumerId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The consumer ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cs-ctd4l1um1hkph7ki1k80',
+ ],
+ ],
+ [
+ '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,
+ ],
+ ],
+ ],
+ '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.'."\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',
+ ],
+ 'data' => [
+ 'description' => 'The response payload.'."\n",
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '248108',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'consumerId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The consumer ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cs-cvs7kbem1hkiit4ivhu0',
+ ],
+ ],
+ [
+ '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' => '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',
+ ],
+ ],
+ ],
+ '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.',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '248110',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ ],
+ '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' => 'consumerId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The consumer ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cs-ctgdn2um1hkossul8gvg',
+ ],
+ ],
+ ],
+ '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.',
+ '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' => '""',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '228407',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayOZOKBY',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'withAttachments',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to return attachment information.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'attachResourceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The attachment point ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'api-cq7l5s5lhtgi6qasrdc0',
+ ],
+ ],
+ [
+ 'name' => 'attachResourceType',
+ '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',
+ ],
+ ],
+ [
+ 'name' => 'environmentId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The environment ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'env-cq7l5s5lhtgi6qasrdc0',
+ ],
+ ],
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The gateway ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-cq2fm65lhtgm9nrrl7ag',
+ ],
+ ],
+ [
+ 'name' => 'withSystemPolicy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether it is a system policy.',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ '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 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',
+ ],
+ 'data' => [
+ 'description' => 'The response payload.',
+ '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',
+ ],
+ 'items' => [
+ 'description' => 'The list of policies.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The details of a policy.',
+ '$ref' => '#/components/schemas/PolicyInfo',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '223018',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayE6KZ22',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'type',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The template type.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'FlowControl',
+ ],
+ ],
+ [
+ 'name' => 'direction',
+ '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',
+ ],
+ ],
+ [
+ 'name' => 'attachResourceType',
+ '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',
+ ],
+ ],
+ [
+ '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',
+ ],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'attachResourceId',
+ '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',
+ ],
+ ],
+ ],
+ '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' => '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',
+ ],
+ 'data' => [
+ 'description' => 'An array of policy template information.'."\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.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'items' => [
+ 'description' => 'The templates.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The template information.'."\n",
+ '$ref' => '#/components/schemas/PolicyClassInfo',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '262548',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayOZOKBY',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ '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,
+ ],
+ ],
+ ],
+ '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' => '393E2630-DBE7-5221-AB35-9E7406754***',
+ ],
+ 'code' => [
+ 'description' => 'Response status code.',
+ 'type' => 'string',
+ 'example' => 'Ok',
+ ],
+ 'message' => [
+ 'description' => 'Response message.',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'data' => [
+ 'description' => 'Response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'policyId' => [
+ 'title' => '策略ID',
+ 'description' => 'Policy ID',
+ 'type' => 'string',
+ 'example' => 'p-cq7l5s5lhtgi6qasr***'."\n",
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '227516',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayOZOKBY',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'policyId',
+ 'in' => 'path',
+ 'schema' => [
+ 'title' => '策略ID',
+ 'description' => 'The policy ID.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'p-cu85bamm1hkrn5g6o***',
+ ],
+ ],
+ ],
+ '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' => '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',
+ ],
+ 'data' => [
+ 'description' => 'The data returned.'."\n",
+ '$ref' => '#/components/schemas/PolicyDetailInfo',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '262552',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayOZOKBY',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'policyId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'Policy ID.',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'p-cq7l5s5bblhtgi6qas***',
+ ],
+ ],
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ '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',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '262551',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayOZOKBY',
+ ],
+ ],
+ 'parameters' => [
+ [
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"393E2630-DBE7-5221-AB35-9E7406754***\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ 'title' => 'DeletePolicy',
+ 'translator' => 'machine',
+ ],
+ 'CreatePolicyAttachment' => [
+ 'summary' => 'Creates a policy attachment.',
+ 'path' => '/v1/policy-attachments',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '262555',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayOZOKBY',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ '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',
+ ],
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ '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' => '585657D2-1C20-5B8A-AF17-D727C64***',
+ ],
+ 'code' => [
+ 'description' => 'Response code.',
+ 'type' => 'string',
+ 'example' => 'Ok',
+ ],
+ 'message' => [
+ 'description' => 'Response message.',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'data' => [
+ 'description' => 'Response data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'policyAttachmentId' => [
+ 'title' => '策略挂载ID',
+ 'description' => 'Policy Mount ID',
+ 'type' => 'string',
+ 'example' => 'pr-cqooju5lhtgquuj6***',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '262557',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayOZOKBY',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'policyAttachmentId',
+ 'in' => 'path',
+ 'schema' => [
+ 'title' => '策略挂载ID',
+ 'description' => 'Policy Attachment ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'pr-ctd4j9mmahko5fb4***',
+ ],
+ ],
+ ],
+ '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' => '2C3B9A12-3868-5EB9-fBEA-F99E03DD1***',
+ ],
+ 'code' => [
+ 'description' => 'Response code.',
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'message' => [
+ 'description' => 'Response message.',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'data' => [
+ 'description' => '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}',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '262556',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayOZOKBY',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'policyAttachmentId',
+ 'in' => 'path',
+ 'schema' => [
+ 'title' => '策略挂载ID',
+ 'description' => 'Policy Attachment ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'pr-ctd4j9mmahko5fb4***',
+ ],
+ ],
+ ],
+ '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' => 'CE857A85-251D-5018-8103-A38957D71***',
+ ],
+ 'code' => [
+ 'description' => 'Response status code.',
+ 'type' => 'string',
+ 'example' => '200',
+ ],
+ 'message' => [
+ 'description' => 'Response message.',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '231543',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigateway216K2A',
+ 'FEATUREapigateway2AMEZG',
+ 'FEATUREapigateway3F24ZP',
+ ],
+ ],
+ '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',
+ ],
+ ],
+ [
+ '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',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The plug-in type name for filtering.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'key-auth',
+ ],
+ ],
+ [
+ 'name' => 'withAttachmentInfo',
+ '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',
+ ],
+ ],
+ [
+ 'name' => 'attachResourceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The resource attachment ID.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'api-cuip2pum1hksng6oni3g',
+ ],
+ ],
+ [
+ 'name' => 'attachResourceType',
+ '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',
+ ],
+ ],
+ [
+ 'name' => 'gatewayType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The instance type. Valid values: **AI** and **API**.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'AI',
+ ],
+ ],
+ [
+ 'name' => 'includeBuiltinAiGateway',
+ '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',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'The response payload.'."\n",
+ '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',
+ ],
+ 'items' => [
+ 'description' => 'The list of plug-in information.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The plug-in information.',
+ 'type' => 'object',
+ 'properties' => [
+ 'pluginId' => [
+ 'description' => 'The plug-in ID.',
+ 'type' => 'string',
+ 'example' => 'pl-cvu6r4um1hko3b3ti0a0',
+ ],
+ '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',
+ ],
+ ],
+ ],
+ 'pluginClassInfo' => [
+ 'description' => 'The plug-in type 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',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '231606',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayIRO3QE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ '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',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ '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.',
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'The returned data.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'pluginAttachmentId' => [
+ 'description' => 'The plug-in ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'pa-cvs7jpmm1hkgihaqv4a0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '253923',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayIRO3QE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'pluginAttachmentId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The attachment ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'pa-cvl541em1hkk7n8vq810',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response'."\n",
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'The response payload.'."\n",
+ '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",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The resource details.'."\n",
+ '$ref' => '#/components/schemas/ResourceInfo',
+ ],
+ ],
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '231615',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigateway910B7T',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'attachResourceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The resource attachment ID.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'hr-cv2h58em1hkg7c6vt43g',
+ ],
+ ],
+ [
+ 'name' => 'attachResourceType',
+ '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',
+ ],
+ ],
+ [
+ 'name' => 'environmentId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The environment ID.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'env-crlnqhtlhtgqflkqislg',
+ ],
+ ],
+ [
+ 'name' => 'pluginId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The plug-in ID.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'pl-ct8181um1hkiqns9f6e0',
+ ],
+ ],
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The gateway ID.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-cr79f75lhtgme744084g',
+ ],
+ ],
+ [
+ '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',
+ ],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page. Default value: 10.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'attachResourceTypes',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The resource attachment types, separated by commas.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'GatewayRoute',
+ ],
+ ],
+ [
+ 'name' => 'withParentResource',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to return parent resource attachments.',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ '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.',
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'The response payload.',
+ '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',
+ ],
+ 'items' => [
+ 'description' => 'The details of resource attachments.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The details of the resource attachment.',
+ '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',
+ ],
+ ],
+ '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',
+ ],
+ 'pluginClassInfo' => [
+ 'description' => 'The plug-in type metadata.'."\n",
+ '$ref' => '#/components/schemas/PluginClassInfo',
+ ],
+ 'attachResourceType' => [
+ 'description' => 'The types of resource attachments.'."\n"
+ .'- HttpApi'."\n"
+ .'- Operation'."\n"
+ .'- GatewayRoute'."\n"
+ .'- GatewayDomain'."\n"
+ .'- Gateway',
+ 'type' => 'string',
+ 'example' => 'GatewayRoute',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '231611',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigateway216K2A',
+ 'FEATUREapigateway2AMEZG',
+ 'FEATUREapigateway3F24ZP',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'pluginAttachmentId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The attachment ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'pa-cri2uq5lhtgkq0ldllj0',
+ ],
+ ],
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'The request data.'."\n",
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ '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.',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'pluginAttachmentId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The attachment ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'pa-cvlkefmm1hkkc90m8vq0',
+ ],
+ ],
+ ],
+ '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.',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '231541',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigateway3F24ZP',
+ 'FEATUREapigateway2AMEZG',
+ 'FEATUREapigateway216K2A',
+ ],
+ ],
+ '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,
+ ],
+ ],
+ ],
+ '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.',
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'The response payload.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'installPluginResults' => [
+ 'description' => 'The installation result.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ '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',
+ ],
+ ],
+ 'description' => '',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'pluginId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The plug-in ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'pl-cvd2b36m1hkhdosfhar0',
+ ],
+ ],
+ ],
+ '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.',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"F61D96E8-4E6D-5896-86E7-F1202AC31280\\",\\n \\"code\\": \\"Ok\\",\\n \\"message\\": \\"success\\"\\n}","type":"json"}]',
+ 'title' => 'UninstallPlugin',
+ ],
+ 'ListSslCerts' => [
+ 'summary' => 'Queries SSL certificates.',
+ 'path' => '/v1/ssl/certs',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'certNameLike',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The name keyword for matching.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ali',
+ ],
+ ],
+ [
+ 'name' => 'domainName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The domain name.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'fun.iot.evideocloud.com.cn',
+ ],
+ ],
+ [
+ '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',
+ ],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The number of entries per page. Default value: 10.'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ ],
+ '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' => 'AADF7197-3384-52AF-A2DE-A66696734129',
+ ],
+ 'data' => [
+ 'description' => 'The data returned.'."\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' => '2',
+ ],
+ 'items' => [
+ 'description' => 'The list of certificate information.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'The certificate information.'."\n",
+ '$ref' => '#/components/schemas/SslCertMetaInfo',
+ ],
+ ],
+ ],
+ ],
+ 'code' => [
+ 'description' => 'The status code.'."\n",
+ 'type' => 'string',
+ 'example' => 'Ok',
+ ],
+ 'message' => [
+ 'description' => 'The response message returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '219001',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayLPOSXV',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'domainId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The ID of the domain name.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'd-cpqnfn5lhtgqbga95sv1',
+ ],
+ ],
+ [
+ 'name' => 'withStatistics',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Specifies whether to return online resource information.'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ '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-----',
+ ],
+ ],
+ ],
+ 'code' => [
+ 'description' => 'The status code returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'Ok',
+ ],
+ 'message' => [
+ 'description' => 'The response message returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '218988',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayLPOSXV',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ '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,
+ ],
+ ],
+ ],
+ '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, which is used to trace the API call link.'."\n",
+ 'type' => 'string',
+ 'example' => '0C2D1C68-0D93-5561-8EE6-FDB7BF067A30',
+ ],
+ 'data' => [
+ 'description' => 'The response data.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'domainId' => [
+ 'description' => 'The ID of the domain name.'."\n",
+ 'type' => 'string',
+ 'example' => 'd-cpu1aullhtgkidg7sa4g',
+ ],
+ ],
+ ],
+ 'code' => [
+ 'description' => 'The status code returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'Ok',
+ ],
+ 'message' => [
+ 'description' => 'The response message returned.'."\n",
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '219198',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayLPOSXV',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'nameLike',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The domain name keyword for fuzzy search.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ ],
+ [
+ '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' => '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',
+ ],
+ ],
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The instance ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-xxx',
+ ],
+ ],
+ [
+ 'name' => 'resourceGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The ID of the resource group.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rg-ahr5uil8raz0rq3b',
+ ],
+ ],
+ [
+ 'name' => 'gatewayType',
+ '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',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'The response 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' => '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',
+ ],
+ 'data' => [
+ 'description' => 'Response parameters.'."\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' => '9',
+ ],
+ 'items' => [
+ 'description' => 'The list of domain information.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'A domain name.'."\n",
+ '$ref' => '#/components/schemas/DomainInfo',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'domainId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The domain name ID.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'd-cpqnfn5lhtgqbga95svg',
+ ],
+ ],
+ ],
+ '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, 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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '219210',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayLPOSXV',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'The request body.'."\n",
+ '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',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'domainId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The domain ID.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'd-cpqnfn5lhtgqbga95sv1',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'The response body.'."\n",
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'The response parameters.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'deployRevisionId' => [
+ 'description' => 'The released version ID.'."\n",
+ 'type' => 'string',
+ 'example' => 'apr-xxx',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayWECSVA',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The instance ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-xxx',
+ ],
+ ],
+ [
+ 'name' => 'acceptLanguage',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The language in which you want results to be returned. Valid values: zh: Chinese. en: English.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'zh',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'The returned results.'."\n",
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'The data returned.'."\n",
+ '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****',
+ ],
+ 'servicePort' => [
+ 'description' => 'The service port. This parameter exists when the traceType value is SKYWALKING.'."\n",
+ 'type' => 'string',
+ 'example' => '8090',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '224658',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayVA59LH',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'path',
+ 'schema' => [
+ 'title' => '网关唯一标识',
+ 'description' => 'The instance ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-co370icmjeu****',
+ ],
+ ],
+ [
+ 'name' => 'pluginClassId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The plug-in type ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'pls-dn82a9djd8z****',
+ ],
+ ],
+ [
+ 'name' => 'apiId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'API ID',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'api-c9uuekzmia8q2****',
+ ],
+ ],
+ [
+ 'name' => 'routeId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The route ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'route-xxx',
+ ],
+ ],
+ [
+ 'name' => 'source',
+ 'in' => 'query',
+ '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',
+ ],
+ 'example' => 'SLS',
+ ],
+ ],
+ [
+ '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',
+ ],
+ ],
+ [
+ 'name' => 'filter',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'title' => '过滤配置',
+ 'description' => 'The filter configurations.'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'routeName' => [
+ 'title' => '路由名称',
+ 'description' => 'The route name.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test-route',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'acceptLanguage',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The language. Valid values: zh (Chinese) and en (English).'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'zh',
+ ],
+ ],
+ [
+ 'name' => 'upstreamCluster',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The AI service identifier.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'outbound|443||ds.ai',
+ ],
+ ],
+ [
+ 'name' => 'pluginId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The plug-in ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'inner-ai-search-cvd3mcum1hks660icn10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'The response body.'."\n",
+ '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****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '247672',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayUWNKMC',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Service',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Service name, fixed value apig',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'apig',
+ 'default' => 'APIG',
+ ],
+ ],
+ [
+ 'name' => 'ResourceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Resource type',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gateway',
+ 'default' => 'Gateway',
+ ],
+ ],
+ [
+ 'name' => 'ResourceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Resource ID',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-ct4i14um1hkn0tpqfae0',
+ ],
+ ],
+ [
+ 'name' => 'ResourceGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Target resource group ID.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rg-aekzdrfx2xdnaja',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Response structure',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Request ID.',
+ 'type' => 'string',
+ 'example' => '59F86F37-787A-52DB-9475-DB5A255517F0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '222857',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayUWNKMC',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'gatewayType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '网关类型',
+ 'description' => 'The gateway type.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'AI',
+ ],
+ ],
+ ],
+ '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' => '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",
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '222758',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayOZOKBY',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'The request data.'."\n",
+ '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",
+ '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',
+ 'required' => false,
+ 'example' => 'gw-cq7l5s5lhtgi6qasrdc0',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ '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, 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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '222761',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayOZOKBY',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'policyId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The policy ID.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'p-cq7l5s5lhtgi6qasrdc0'."\n",
+ ],
+ ],
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'The request body.',
+ '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",
+ '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',
+ 'required' => false,
+ 'example' => 'env-cq2avtllhtgja4dk5djg'."\n",
+ ],
+ 'gatewayId' => [
+ 'description' => 'The instance ID.'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-cq2avtllhtgja4dk5djg',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ '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, 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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => true,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '219212',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayN14L0I',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '$.parameters[0].schema.enumValueTitles',
+ '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",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test environment'."\n",
+ ],
+ 'gatewayId' => [
+ 'description' => 'The environment description, such as its purpose and owner.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'gw-cq7l5s5lhtgi6qasrdc0',
+ ],
+ 'resourceGroupId' => [
+ 'description' => 'Testing environment for xx project of xxx'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rg-ahr5uil8raz0rq3b',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'Schema of Response'."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'environmentId' => [
+ 'description' => 'The request ID, which is used to trace the call link.'."\n",
+ 'type' => 'string',
+ 'example' => 'env-cq7l5s5lhtgi6qasrdc0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => true,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '219213',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayN14L0I',
+ ],
+ ],
+ 'parameters' => [
+ [
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => true,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '219216',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayN14L0I',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'The environment ID.'."\n",
+ '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",
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'environmentId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'Update Environment',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'env-cq7l5s5lhtgi6qasrdc0',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。',
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => true,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '219215',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayN14L0I',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'environmentId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => 'The environment ID.'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'env-cq7l5s5lhtgi6qasrdc0',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => true,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '219218',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayPE3NRT',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'nameLike',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Environment name, fuzzy search.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ ],
+ [
+ 'name' => 'aliasLike',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Environment alias, fuzzy search.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'production',
+ ],
+ ],
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Gateway ID, exact search.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-cptv6ktlhtgnqr73h8d1',
+ ],
+ ],
+ [
+ 'name' => 'gatewayNameLike',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Gateway name, fuzzy search.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test-gw',
+ ],
+ ],
+ [
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Page number, default is 1.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Page size, default is 10.',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'resourceGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Resource group ID.',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rg-aek2sy66mftleiq',
+ ],
+ ],
+ [
+ 'name' => 'gatewayType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'The gateway type',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'APIGateway',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ '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',
+ ],
+ 'data' => [
+ 'description' => 'Paged query environment list response.',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。',
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '231537',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigateway216K2A',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'nameLike',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'oauth',
+ ],
+ ],
+ [
+ 'name' => 'aliasLike',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '',
+ ],
+ ],
+ [
+ 'name' => 'type',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Auth',
+ ],
+ ],
+ [
+ 'name' => 'source',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'HigressOfficial',
+ ],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'gatewayId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gw-d1j8tjum1hkhxxxxxxxx',
+ ],
+ ],
+ [
+ 'name' => 'installed',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'direction',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'InBound',
+ ],
+ ],
+ [
+ 'name' => 'excludeBuiltinAiProxy',
+ 'in' => 'query',
+ 'allowEmptyValue' => true,
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'gatewayType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'API',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '',
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '248112',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ ],
+ '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' => 'consumerId',
+ 'in' => 'path',
+ 'schema' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cs-csgdi45lhtggrjcpriug',
+ ],
+ ],
+ ],
+ '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' => '294382D9-EE60-5735-A4CD-F2AC2840423D',
+ ],
+ 'code' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => 'Ok',
+ ],
+ 'message' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'data' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'totalSize' => [
+ 'description' => '',
+ 'type' => 'string',
+ 'example' => '9',
+ ],
+ 'pageNumber' => [
+ 'description' => '',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'pageSize' => [
+ 'description' => '',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'items' => [
+ 'description' => '',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ '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' => '',
+ 'type' => 'string',
+ 'example' => '{}',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '280144',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'name',
+ 'in' => 'path',
+ 'schema' => [
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'code' => [
+ 'type' => 'string',
+ ],
+ 'message' => [
+ 'type' => 'string',
+ ],
+ 'data' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'secretData' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '280148',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'secretId',
+ 'in' => 'path',
+ 'schema' => [
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'code' => [
+ 'type' => 'string',
+ ],
+ 'message' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '280247',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'pageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'pageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'secretId',
+ 'in' => 'path',
+ 'schema' => [
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ ],
+ ],
+ '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',
+ ],
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'UpdateSecret' => [
+ 'summary' => '更新消费者',
+ 'path' => '/v1/secrets/{secretId}',
+ 'methods' => [
+ 'put',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '280143',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'secretId',
+ 'in' => 'path',
+ 'schema' => [
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'secretData' => [
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'code' => [
+ 'type' => 'string',
+ ],
+ 'message' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '280144',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'secretId',
+ 'in' => 'path',
+ 'schema' => [
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'code' => [
+ 'type' => 'string',
+ ],
+ 'message' => [
+ 'type' => 'string',
+ ],
+ 'data' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'secretId' => [
+ 'type' => 'string',
+ ],
+ 'name' => [
+ 'type' => 'string',
+ ],
+ 'secretSource' => [
+ 'type' => 'string',
+ ],
+ 'kmsConfig' => [
+ '$ref' => '#/components/schemas/KMSConfig',
+ ],
+ 'gatewayType' => [
+ 'type' => 'string',
+ ],
+ 'createTimestamp' => [
+ 'type' => 'integer',
+ 'format' => 'int64',
+ ],
+ 'updateTimestamp' => [
+ 'type' => 'integer',
+ 'format' => 'int64',
+ ],
+ 'status' => [
+ 'type' => 'string',
+ ],
+ 'referenceCount' => [
+ 'type' => 'integer',
+ 'format' => 'int32',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '279325',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'body',
+ 'in' => 'body',
+ 'style' => 'json',
+ 'schema' => [
+ '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,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'code' => [
+ 'type' => 'string',
+ ],
+ 'message' => [
+ 'type' => 'string',
+ ],
+ 'data' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'secretId' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ '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',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'consumes' => [
+ 'application/json',
+ ],
+ 'produces' => [
+ 'application/json',
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '280145',
+ 'abilityTreeNodes' => [
+ 'FEATUREapigatewayYJE9J7',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ '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' => 'gatewayType',
+ 'in' => 'query',
+ 'schema' => [
+ 'type' => 'string',
+ 'required' => false,
+ 'description' => 'Gateway type for filtering secrets of specific gateway type',
+ 'example' => 'API',
+ ],
+ ],
+ ],
+ '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',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ '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',
+ ],
+ ],
+ 'endpoints' => [
+ [
+ 'regionId' => 'cn-qingdao',
+ 'endpoint' => 'apig.cn-qingdao.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-beijing',
+ 'endpoint' => 'apig.cn-beijing.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-zhangjiakou',
+ 'endpoint' => 'apig.cn-zhangjiakou.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-wulanchabu',
+ 'endpoint' => 'apig.cn-wulanchabu.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-hangzhou',
+ 'endpoint' => 'apig.cn-hangzhou.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-shanghai',
+ 'endpoint' => 'apig.cn-shanghai.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-shenzhen',
+ 'endpoint' => 'apig.cn-shenzhen.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-heyuan',
+ 'endpoint' => 'apig.cn-heyuan.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-guangzhou',
+ 'endpoint' => 'apig.cn-guangzhou.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-chengdu',
+ 'endpoint' => 'apig.cn-chengdu.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-hongkong',
+ 'endpoint' => 'apig.cn-hongkong.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-northeast-1',
+ 'endpoint' => 'apig.ap-northeast-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-northeast-2',
+ 'endpoint' => 'apig.ap-northeast-2.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-1',
+ 'endpoint' => 'apig.ap-southeast-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-2',
+ 'endpoint' => 'apig.ap-southeast-2.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-3',
+ 'endpoint' => 'apig.ap-southeast-3.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-5',
+ 'endpoint' => 'apig.ap-southeast-5.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-6',
+ 'endpoint' => 'apig.ap-southeast-6.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'us-east-1',
+ 'endpoint' => 'apig.us-east-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'us-west-1',
+ 'endpoint' => 'apig.us-west-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'eu-west-1',
+ 'endpoint' => 'apig.eu-west-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'eu-central-1',
+ 'endpoint' => 'apig.eu-central-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'me-east-1',
+ 'endpoint' => 'apig.me-east-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-7',
+ 'endpoint' => 'apig.ap-southeast-7.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'me-central-1',
+ 'endpoint' => 'apig.me-central-1.aliyuncs.com',
+ ],
+ ],
+];